22nd International Symposium on Computer and Information Sciences, Ankara, Türkiye, 7 - 09 Kasım 2007, ss.233-234
Over the last couple of years graphics processing units (GPU) found in graphics cards evolved into general purpose parallel stream processors. This evolution allows for using GPUs not only for traditional rasterization based rendering but also for global illumination techniques including ray tracing. Fast generation of stereo images is very important for virtual reality applications. Rendering stereo image pairs for left and right eye separately doubles the frame time. This might be a problem for interactive applications especially if computationally expensive rendering techniques such as ray-tracing are employed. It is possible to reduce the stereo image generation time by ray tracing the scene for one eye and then reprojecting the image into the second eye. In this case, only problematic pixels will be ray traced for the second eye. GPUs are designed to write pixel color values at unique screen locations defined by projected geometry. However reprojection may require writing pixel information to multiple screen locations. This is one-to-many dynamic scattering problem in which GPUs perform relatively badly. In this work we devised efficient stereo reprojection methods running fully on the GPU. We demonstrated the technique in our GPU based interactive ray tracer and showed that reprojection method can reduce the stereo frame time considerably. We also propose a GPU based approach to handle missing object problem if an object is seen only by the reprojected eye. Additionally, reprojections of reflection/refraction rays to create approximate images are discussed.