In computer graphics, we always seek the fastest and most accurate rendering. The most accurate way to render a scene is through direct simulation, known as ray tracing. This method is mathematically interesting, but it is also extremely slow, which presents ongoing challenges. Therefore, in this thesis, we examine ray tracing from the perspective of time requirements. We represent objects using triangles and then introduce four speed optimizations. The first takes advantage of the triangular representation to quickly compute ray-triangle intersections. For the remaining three, we implement a bounding volume hierarchy. The first two approaches – a hierarchy over the entire scene and a hierarchy within each object – are established methods, while the third – dividing objects using clustering – is the contribution of this thesis. We find that each method of constructing a hierarchy is useful in different situations.
|