next up previous contents
Next: 11.2 Environment Mapping Up: 11.1 Reflections and Refractions Previous: Blurry Reflection   Contents

11.1.6 Impact of Complexity on Choice of Reflection Technique

Because maintainability and readability of applications is important, it may be worth considering more general techniques like ray tracing and Metropolis light transport for providing reflections and shadows. As multiprocessor machines slowly become more prevalent, it may be the case that a simple brute-force algorithm provides acceptable performance without the complexity of the combination of the above techniques.

For example, an application implementing the algorithms above for curved reflectors and blurred reflections including view-frustum culling and reducing the size of textures used approaches a prohibitive complexity level. For small reflectors, ray tracing can achieve interactive performance with much less algorithmic complexity.

Unfortunately, there is no right answer and each development team or developer must evaluate their tolerance for complexity, frame rate, and quality.