Tuesday, 5 February 2013

Emitting Beams

Our beams are at the moment just cylinders. These are sent our from light sources, just like the photons.
We have created the beams to behave like normal objects of the scene, and store them in a Bounding Volume hierarchy. This will increase intersection queries.
We will start with just getting a simple version of photon beams to work, so we need to check for intersections with pixel rays, and then compute the shading of the pixel.
The beams are sent out, and stored. If the beam doesn't hit anything the idea is to compute the length depending on flux and how the light is consumed over distance. If the beam hits a Lambert material, the end point of the beam will be the hitpoint on the material. The beams are then subdivided into smaller pieces for easier storage. Storing the entire beam as one will give much larger bounding boxes of each beam, and more boxes will overlap.

No comments:

Post a Comment