Stereoscopy is not displayed correctly
This article is only about Active-Stereoscopy. Read this other article: "Troubleshooting passive / side-by-side stereoscopy".
Here is more information about the different types of stereoscopy: "Understanding Stereoscopy".
The way MiddleVR's stereoscopy is this:
- MiddleVR grabs the DirectX 9 or 11 rendering as textures from Unity, as defined in the configuration file.
- MiddleVR opens an OpenGL quad-buffer window and displays the DirectX textures in this in the opengl window. This causes nearly no overhead, the textures are not copied or manipulated, it's a simple pointer given from DX to OpenGL.
- The screen displays a uniform color (white, purple, black …).
- When looking through the 3D glasses, stereoscopy is not perceived correctly.
- MiddleVR mechanism to convert the DirectX rendering of Unity to MiddleVR’s OpenGL window is not working correctly
- The VR system is not configured properly to display a stereoscopic image
First, try to run the application without OpenGL Quad-buffer but with the Force DirectX > OpenGL conversion option. Both use the same mechanism to display the Unity rendering in an OpenGL window.
If the application works with the “Force DirectX > OpenGL conversion”, try the following:
- Make sure your NVidia card is correctly configured to display a 3D image:
- Check that 3D Vision is disabled: Active Stereoscopy and Nvidia 3DVision. (this seems to be less true with Windows 8 and Windows 10, which seem to require on some setup that 3D Vision is enabled.)
- In “Manage 3D Settings” panel, “Stereo – Enable” must be set to “On” and “Stereo – Display Mode” must be set to the right value depending on your stereoscopic display hardware.
- In “Change resolution” panel, make sure the selected resolution is in the “PC” category and not the “3DTV” category.
- On Windows 10:
- Make sure “3D display mode” is set to “On” in Windows settings: Settings --> Display --> Advanced Display Settings.
- Make sure OpenGL is turned on: <nvidia control panel> --> Manage 3D Settings --> Global Settings --> OpenGL rendering GPU --> <choose your graphics cards>
- Uninstall "NVidia 3D Vision" and "NVidia 3D Vision controler" drivers
- Make sure your display is correctly configured to display a 3D image. If you are getting anything less than 60hz (ideally you need 120hz), the system configuration is probably wrong. For example a 24hz refresh rate is indicative of a 3DTV refresh rate. It would indicate the 3d mode is the 3dtv mode, not the sequential frame buffer of the regular opengl quad-buffer which should put the projectors in 120hz mode. MiddleVR doesn't support the "frame-packed" stereo of 3DTVs, only Side-by-Side mode.
- To test the stereoscopy, run C:\Program Files (x86)\MiddleVR\bin\oglplane.exe. This application is the simplest OpenGL Quad-buffer there is, it does not have any MiddleVR involved. If this application doesn't work, it means there is a problem with the system's configuration (Windows / Nvidia / Projector ) and MiddleVR's OpenGL quad-buffer will not work either.
- Make sure to disable any remote viewing software like VNC, TeamViewer etc.
- When I run on Windows XP, I get an error: “Couldn’t switch to requested resolution”
- Your graphics drivers can be in a corrupted configuration. See article “Reinstall the graphics drivers”.
- If your screen orientation is rotated (for example in portrait mode) in the NVidia control panel, stereoscopy will be disabled by NVidia. You should change the screen orientation to default and rotate the corresponding Screens in the MiddleVR configuration.
- You can't have a stereoscopic window (OGLPlane or MiddleVR) across multiple GPUs without Mosaic. If you are testing this, make sure the window only spans on one GPU (i.e. the window only covers DVI/VGA/HDMI output that go out from one graphics card).
- Do you have any other app that works with this configuration ?
Here are some steps to help trouble shoot Mosaic:
1/ deactivate Mosaic, try OGLPlane on just one GPU
2/ if this works, test MiddleVR on just one GPU
3/ enable Mosaic and try OGLPlane
4/ if this works, test MiddleVR on all GPUs
- If Ashampoo Snap 6 (for screenshot and editing) is installed, and this application is running in background, active stereoscopy won’t work. In order to fix stereo, you have to quit the screenshot application.