3D Stereoscopy System

Things to consider when developing a 3D stereo system.

Although a third-party plugin was used to add SBS3D support to an experimental version of LizzE, due to discontinued support a similar but custom solution was developed for Nicely Dicely. This FTSBSStereoCameraRig component (see the image below) can be added to a standard camera GameObject and it would automatically create all necessary child GameObjects and components, while preserving the functionality of the base camera. It offers several settings including the real-time toggling of the SBS3D mode, a 3D simulation mode overlaying the half transparent left and right images, an IPD adjustment, a parallax multiplier, a zero-parallax distance adjustment and a slot to link a UI Canvas object.

With the 3D simulation mode, it is possible during development to quickly adjust various parallax settings without the need of an actual stereoscopic 3D setup. Of course, this does not create the actual stereoscopic effect, but provides a visual estimation of applied parallax shifting.

The zero-parallax distance is also visualized with a green frustrum gizmo (see the main image), so it is easy to identify the distance from the camera, where there is no parallax shift happening and the left and right image overlap perfectly. When a completely independent UI Canvas object is linked, the component can automatically create a synchronized visual duplicate, while preserving the interactivity of the different UI elements, including mouse click targets etc. These two SBS UIs are automatically positioned at zero-parallax to always present a clear image. Like this, it is possible to maintain a game’s overlaying GUI independent of and unaffected by the stereoscopic 3D mode.