Stereoscopic 3D using Reprojection

Research Project

As part of a research project in our Game & Media Technology master, Bas Zalmstra and I developed a very fast technique to generate a stereoscopic image pair from a 2D image with depth information.

The technique uses reprojection to transform the 2D image into a stereoscopic image pair. Our implementation is very fast on current graphics hardware and generates high quality stereoscopic images. Our benchmark shows an execution time of less than 1 ms on mid-range hardware.

Our results are very similar to the results Crytek has claimed with their ScreenSpace Reprojection Stereo technique (SSRS). However, the approach of their algorithm seems to be different.

Research paper

The technique is thoroughly explained in our research paper. The paper also includes benchmarks and a quality analysis. It can be downloaded here:

Shader implementation

Demo

We made a demo which is a perfect tool to test the technique. It enables real-time switching between the reprojection technique and the rendering twice approach. Furthermore, a lot of variables can be adjusted in real-time and some debug views are available. The Sponza Atrium model by Crytek is used.

I ported the Crysis 3 Code over to Reshade HLSL. Also got it working with some modifications to the depth buffer before it’s intercepted. This give the Depth more of a softer Mat look and mask the Halo affect a bit.