An open API service indexing awesome lists of open source software.

https://github.com/davcri/rayca-ts

Raycaster study
https://github.com/davcri/rayca-ts

raycaster ts

Last synced: 10 months ago
JSON representation

Raycaster study

Awesome Lists containing this project

README

          

# rayca-ts

[![Netlify Status](https://api.netlify.com/api/v1/badges/39bb4441-4f1d-4847-aeaa-2439d09c004e/deploy-status)](https://app.netlify.com/sites/js-ray/deploys)

✍️ WIP raytracer written in JS/TS, inspired by https://www.scratchapixel.com/

![](https://imgur.com/Bc8Noxd.png)

> Photo by [Snapwire](https://www.pexels.com/photo/photo-of-gray-cat-looking-up-against-black-background-730896/)

### Other Raycaster implementations

- [Fahien/rayca](https://github.com/Fahien/rayca) - 🦀 Rust implementation.

## Interesting resources

- BVH: [How to build a BVH](https://jacco.ompf2.com/2022/04/13/how-to-build-a-bvh-part-1-basics/)

### GFX

- https://en.wikipedia.org/wiki/Ray_tracing_(graphics)
- https://github.com/OmarShehata/webgpu-compute-rasterizer
- https://jacco.ompf2.com/2022/04/13/how-to-build-a-bvh-part-1-basics/
- https://kristoffer-dyrkorn.github.io/triangle-rasterizer/

### Optimizing JS math code

- [Efficient JavaScript Vector Math Brandon Jones](http://media.tojicode.com/sfjs-vectors/)
- Box2D web port: https://github.com/illandril/box2dweb-closure/blob/master/src/common/math/b2Vec2.js
- [scirra.com/blog/76/how-to-write-low-garbage-real-time-javascript](http://web.archive.org/web/20140724034530/https://www.scirra.com/blog/76/how-to-write-low-garbage-real-time-javascript)