What is Ray Tracing?
Generally speaking, ray tracing is a "physically accurate" simulation of how light interacts with different surfaces, volumes and a camera. At the core of ray tracing are the rendering equation and all of the mathimatical equations that describe ray-entity intersection and interactions like diffusion, reflection, and refraction.
![BallsRender](https://upload.wikimedia.org/wikipedia/commons/thumb/a/ae/BallsRender.png/512px-BallsRender.png)
Limitations
While this demo may look quite incredible, it is NOT completely physically accurate because it doesn't simulate the wave properties of light. Some missing features include:
- Diffraction
- Dispersion
- Polarization
- Phosphorescence
- Interference
- Flourescence (although this is easy to add)
- The Doplar Effect (although not super applicable)
Nevertheless, it does support the major and most noticable features of light interaction, lncluding:
- Diffusion - light scattering on rough surfaces
- [Specular] Reflection - perfect light reflection
- Refraction - light bending/splitting when it passes between different refraction indices
Another major limitation of this demo is that it can only render a limited number of surfaces. More professional rendering applications allow for a multitude of shapes/volumes to be used.
Further Learning
Why stop here? Wikipedia has much more information than I can put on this page! Also check out the credits page for other resources used in the making of this project.
![Recursive raytrace of a sphere](https://upload.wikimedia.org/wikipedia/commons/thumb/3/32/Recursive_raytrace_of_a_sphere.png/512px-Recursive_raytrace_of_a_sphere.png)