Yet another Cornell Box: a path tracer in a single fragment shader on Shadertoy. Direct light sampling is used to reduce noise. The scene is rendered using 12 samples per pixel.
The path tracer is based on “Raytracing in one weekend” by @Peter_shirley. I have optimized the shader for the Cornell Box and added direct light sampling to reduce noise. Only Lambertian solid materials and cubes are supported.
You can find (the full source of) the fragment shader on Shadertoy: https://www.shadertoy.com/view/3dfGR2.
If you like this post, you may also like one of my other posts:
- More spheres
- Old watch: a WebGL path tracer
- Raytracing: the next week
- Robotic Arm
- Ray Tracing – Primitives