Open project · Proof of concept · Windows 10 / 11
NVIDIA 3D Vision glasses and the original USB IR emitter, working on a modern monitor and graphics card without NVIDIA's discontinued 3D Vision driver.
Personal project, experimental portable release.
Working: side-by-side 3D captured into the app from a game window, a side-by-side video or ReShade, on a 240 Hz OLED monitor.
Not working yet: the in-game hook has never worked. LCD, QLED and Mini-LED displays show ghosting and crosstalk.
v0.3.0 experimental prerelease: Download the portable ZIP and updated README PDF.
Adds Half SBS and Full SBS for VLC movies, stereo images and window capture with correct eye proportions, a movable and resizable windowed 3D preview, and capture from a different monitor than the output. Includes the existing timing, stream-view and BFI improvements. Resident Evil 2 and Metal Gear Solid V still have unresolved failures and are not supported games. Classic NVIDIA stereo rendering is not supplied by this app.
Window capture accepts existing side-by-side or top/bottom stereo. The shared Geo11 adapter receives rendered eye pairs from compatible fixes; AI desktop separately estimates depth from 2D content.
| Source | Status |
|---|---|
| Window capture of a game rendering side-by-side 3D (proven with Dolphin set to side-by-side) | Working |
| Window capture of any side-by-side 3D video | Working |
| Direct VLC 3.x stereo movie playback (SBS or top/bottom) | SDR decoding tested; optical validation pending |
| In-game hook | Broken, never worked |
| Shared Geo11 adapter (x86/x64 DX11) | Experimental; renderer/transport tests pass, game failures remain |
| AI desktop depth conversion | Available; optical quality still needs validation |
| Native stereo 3D games, DirectX 9 / 10, Vulkan | Not started |
The shared adapter preserves existing community fixes. Passing renderer and transport tests does not establish compatibility with every game.
The glasses close each lens while the other eye's image is on screen. It only looks clean if the screen has fully switched images before the lens opens, so your display's pixel response time decides whether it works.
| Display | Status | Notes |
|---|---|---|
| OLED at 240 Hz | Proven | Clean full-screen 3D through the glasses with software black frame insertion, SDR and HDR. |
| OLED at 120 Hz | User confirmed | RP2040 operation confirmed. At 240 Hz, enable BFI for the confirmed cadence. |
| OLED at 100 or 144 Hz | Not proven | Separate optical calibration required. |
| LCD, QLED, Mini-LED | Not working yet | Slower pixel response leaves part of the other eye's image on screen: ghosting and crosstalk. Being worked on. |
The app uses standard Windows display APIs (Direct3D 11 / DXGI) instead of NVIDIA's stereo driver, so in theory any graphics card can drive it, not only NVIDIA ones. Game trials used an RTX 5070 Ti; output-only tests also pass on AMD Radeon. Other GPU families still need game validation.
Talks to the 3D Vision USB IR emitter over WinUSB and uploads its firmware itself. Your GPU driver stays untouched.
Left / Black / Right / Black with software black frame insertion, SDR and HDR.
Captures a game window or video player showing side-by-side or top/bottom 3D.
Phase, shutter width, phase sweep and eye swap while you watch through the glasses. Saved per display.
Record or share a steady single-eye SDR picture while the glasses continue receiving stereo.
Scheduled shutter timing, included open-source firmware, and USB clock diagnostics. OLED 240 Hz BFI reconfirmed.
Built-in 3D test scene and per-eye test patterns.
Vblank jitter, present timing and emitter command timing, plus self tests that need no hardware.
Download the portable release, extract the entire ZIP, and run Start Vision Restoration.cmd. NVIDIA firmware and AI model weights are separate downloads. Building from source is optional.
git clone <repository URL>.git
cd nv3d-vision-restoration
.\tools\Get-Dependencies.ps1
.\build.ps1
Get-Dependencies.ps1 downloads libusb, Dear ImGui, AI runtime components and the ReShade headers from their official releases. The app is built to build\bin\Release\VisionRestoration.exe.
RP2040 owners: follow the DIY emitter guide instead of these NVIDIA firmware/driver steps.
The emitter has no permanent firmware. The PC uploads it every time it's plugged in, and that firmware lives inside NVIDIA's driver file nvstusb.sys.
Prepare NVIDIA Firmware.cmd and select the downloaded EXE. Its included extractor prepares emitter.fw automatically. Source builders can extract nvstusb*.sys from NV3DVisionUSB.Driver with 7-Zip and use the command below..\build\bin\Release\vision_firmware.exe C:\path\to\nvstusb.sys .\build\bin\Release\emitter.fw
The emitter appears to Windows as two different USB devices: one before its firmware is loaded and one after. The first number (0955, NVIDIA) stays the same; the second number changes. Each needs WinUSB one time per PC.
| Emitter state | USB ID |
|---|---|
| Just plugged in, no firmware yet | 0955 7003 |
| Firmware running (after the app uploads it) | 0955 0007 |
0955 7003, pick WinUSB and click Install Driver.0955 0007. If the app can't open it, run Zadig again for 0955 0007, install WinUSB, and press Refresh USB.Launch.cmd.This is a personal project built for one setup, published to show that the 3D Vision USB emitter can be unlocked for other monitors and newer graphics cards. Where it goes next depends on who jumps in. The most useful areas: LCD/QLED crosstalk, a general in-game hook, and testing on other GPUs and displays.