This paper presents a fast approximation method to obtain the point hit by a reflection or refraction ray. The calculation is based on the distance values stored in environment map texels. This approximation is used to localize environment mapped reflections and refractions, that is, to make them depend on where they occur. On the other hand, placing the eye into the light source, the method is also good to generate real-time caustics. Computing a map for each refractor surface, we can even evaluate multiple refractions without tracing rays. The method is fast and accurate if the scene consists of larger planar faces, when the results are similar to that of ray-tracing. On the other hand, the method suits very well to the GPU architecture, and can render ray-tracing and global illumination effects with few hundred frames per second. The primary application area of the proposed method is the introduction of these effects in games.
GPU ray-tracing, environment mapping, caustics, reflection, refraction.