Learn about Monte Carlo methods for radiation and conduction.
rust
languagewgpu
binding librarywgsl
shader language
- Install rust https://www.rust-lang.org/tools/install
cargo run
- A fixed
1280x1024
screen will be opened - Esc to quit
- Left mouse click and drag to orbit (framerate probably will be quite low)
- Right mouse click and drag to change slice plane
- Mouse wheel to zoom
https://github.com/thomas-gale/monte-carlo/blob/main/src/bvh_raytracing/constants.rs
- Follow (again) Ray Tracing in One Weekend implementing as much code as wgsl fragment/compute shaders
- Extend to https://raytracing.github.io/books/RayTracingTheNextWeek.html (focus on bvh section, rectangles/lights and volumes)
- Support loading of .obj / mesh files and parse into the bvh hittables with other primitives
- Signed distance and ray intersection shader functions for triangles
monte carlo based simulations sampling e.g. https://www.cs.cmu.edu/~kmcrane/Projects/MonteCarloGeometryProcessing/index.html & https://cs.dartmouth.edu/wjarosz/publications/sawhneyseyb22gridfree.html
- Laplace walk on spheres
- Poisson walk on spheres
- Refactor from direct wgpu impl to bevy and re-structure the code into the ECS pattern.