Gallery - Development Updates

Ray-Tracing

Ray-tracing is a way to create super-realistic lighting effects, among other things.

In the real world, light is emitted from light sources, bounces around in the world, then to your eye. This is essentially what Ray-tracing does, only it works backwards, computing only the rays that hit the camera to save processing time. The end result is exactly the same (except in the case of refractions), except the render time can be measured in seconds instead of decades.

The reflections, shadows, and refractions easily accessible through ray tracing are impossible with PyOpenGL.

Ray-Tracing is both math and geometry intensive. Each pixel must be calculated by sending rays out, calculating how they bounce off of things, where these rays go, and whether any given collision point is in shadow. This is done mostly by vectors and vector operations, such as the Dot and Cross Products, and it is much slower than other rendering techniques.

So far, there are twelve images ranging from early development to present:
Image 1
Image 2
Image 3
Image 4
Image 5
Image 6
Image 7
Image 8
Image 9
Image 10
Image 11
Image 12
Image 13