Implementing dual paraboloid environment mapping

For this recipe, we extend the geometry shader's instancing approach to create environment maps that were introduced in the previous recipe, Implementing multithreaded cubic environment mapping, and generate a dual paraboloid environment map. A dual paraboloid map (DPM) requires only two render targets instead of the six used in the cube maps, therefore requiring less texture memory. However, there is also no built-in hardware support for sampling a DPM that instead requires a manual implementation of the sampling based on the reflection vector.

Getting ready

We will start with the finished result from the previous recipe, Implementing multithreaded cubic environment mapping.

How to do it…

In order ...

Get Direct3D Rendering Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.