Conclusions

We have seen that the implementation of two very simple acceleration techniques can significantly reduce the execution time of a ray tracer. There are some important aspects to note with regard to the implementation:
  1. This was a very simple ray tracer, only first generation rays were considered. The spatial subdivision would reduce the tracing time of higher generation rays. The bounding volumes would still prove useful.
  2. Subtractive objects were not allowed. It is uncertain how bounding volumes would affect the use of subtractive objects.
  3. It is also uncertain how bounding volumes affect the spatial subdivision. Because the bounding volume is used for determining if a complex object is in view, a complex object can be considered to be in view even though 99+% of the objects that compose it are not. this would result in objects being tested for intersection that shouldn't be if the were considered separately. This why we can not say that this implementation has 1/8 (1/4 * 1/2) the execution time of exhaustive ray tracing.