Skip to content

Learn about Monte Carlo methods for radiation and conduction.

Notifications You must be signed in to change notification settings

thomas-gale/monte-carlo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

monte-carlo

Learn about Monte Carlo methods for radiation and conduction.

stack

  • rust language
  • wgpu binding library
  • wgsl shader language

running (you'll need decent GPU that supports float textures - tested on Nvidia RTX 2070 Super)

  • 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

configuration

https://github.com/thomas-gale/monte-carlo/blob/main/src/bvh_raytracing/constants.rs

plan

intro

mesh

  • Support loading of .obj / mesh files and parse into the bvh hittables with other primitives
  • Signed distance and ray intersection shader functions for triangles
  • Laplace walk on spheres
  • Poisson walk on spheres

code structure

  • Refactor from direct wgpu impl to bevy and re-structure the code into the ECS pattern.

pictures

ray_tracing_in_one_weekend final scene bvh preview in final scene volume sphere in cornel box wos laplace sample plane wos laplace sample plane bunny mesh

About

Learn about Monte Carlo methods for radiation and conduction.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages