KeplerBridge is an open-source Direct3D 12-to-Direct3D 11 compatibility and translation layer engineered to expand access to modern PC games on legacy graphics hardware, specifically the NVIDIA Kepler architecture (GK208, GK107, GK104) and native Feature Level 11_0 GPUs.
By deploying as a lightweight, drop-in 64-bit d3d12.dll proxy, KeplerBridge bridges the gap between modern game engines requiring Direct3D 12 at startup and the physical capabilities of legacy GPUs.
- Drop-in Proxy Architecture: Zero installation required. Simply place
d3d12.dllandkepler_bridge.iniin the target game's binary folder. - 100% Self-Contained: Built with C++20; depends exclusively on standard Windows operating system DLLs (
d3d11.dll,dxgi.dll,KERNEL32.dll, and Windows UCRT). Requires no external runtimes or drivers. - Feature Level Negotiation: Spoofs Feature Level 12_0 at device creation while clamping reported capabilities to authentic Feature Level 11_0 hardware limits, allowing games to pass startup gates safely.
- High-Throughput Translation: Lightweight command batching and linear state tracking achieve low translation overhead (~150 nanoseconds per draw command).
- Multi-Slot Compute UAVs: Supports up to 8 concurrent UAV slots with atomic append/consume counter reset and preservation semantics.
- Persistent Shader Caching: Fast 64-bit FNV-1a disk caching provides warm compiler bypass, cutting shader preparation from ~48 ms to under 0.2 ms.
- DXGI Presentation Fallback: Automated fallback from
DXGI_SWAP_EFFECT_FLIP_DISCARDtoDXGI_SWAP_EFFECT_DISCARDon D3D11 runtimes with transparent tearing flag sanitization. - Adaptive Resource Management: Optional dynamic texture resolution clamping prevents DDR3 memory bus saturation on entry-level cards.
| Component | Reference Test Platform | Supported Hardware Range |
|---|---|---|
| GPU Architecture | NVIDIA Kepler (GK208B) | NVIDIA Kepler (GK104, GK107, GK208), Maxwell Gen 1, and legacy D3D11 GPUs |
| Reference Model | NVIDIA GeForce GT 740 (4 GB DDR3) | GT 730, GT 740, GTX 750, GTX 750 Ti, GTX 760, GTX 770, GTX 780, GTX Titan |
| Driver Baseline | NVIDIA Game Ready 456.71 WHQL | Vendor WHQL drivers supporting D3D11 Feature Level 11_0 |
| Native Feature Level | D3D_FEATURE_LEVEL_11_0 (0xb000) |
Feature Level 11_0 or higher |
| Operating System | Windows 10 x64 (Version 20H2+) | Windows 10 x64 / Windows 11 x64 |
KeplerBridge assesses PC titles for theoretical and technical feasibility under its translation architecture. For the complete, categorized catalogue of 86 famous PC games, consult docs/GAME_COMPATIBILITY.md.
| Game Title | Engine / API | Compatibility Approach | Target Performance (720p Low) | Status |
|---|---|---|---|---|
| 1. Palworld | Unreal Engine 5.1 (D3D12) | Targeted Translation Path: D3D12 interception; DXIL SM 6.0 bytecode translation to SM 5.0; scalar emulation of Niagara particle wave intrinsics; Tier 1 descriptor remapping; DXGI discard presentation. (Note: Native -dx11 switch runs 30–45 FPS natively on GT 740). |
22–32 FPS | Playable on KeplerBridge (Targeted Path) |
| 2. Stray | Unreal Engine 4.27 | Initial PSO state replay; root parameter remapping; DXGI discard swapchain presentation. | 28–38 FPS | Playable on KeplerBridge |
| 3. Devil May Cry 5 | RE Engine (D3D12) | Multi-slot compute UAV mapping (slots 0–7); atomic counter handling; event query fencing. | 35–48 FPS | Playable on KeplerBridge |
| 4. Resident Evil 2 / 3 Remake | RE Engine (D3D12) | Dynamic root constant buffers; streaming texture management; persistent shader caching. | 34–46 FPS | Playable on KeplerBridge |
| 5. Lies of P | Unreal Engine 4.27 | Mature UE4 forward/deferred path; linear root signature mapping; warm compiler bypass. | 30–42 FPS | Playable on KeplerBridge |
| 6. Hi-Fi RUSH | Unreal Engine 4.27 | Zero-latency discard swapchain present; low-overhead draw loop; disk cache hit optimization. | 40–55 FPS | Playable on KeplerBridge |
| 7. Persona 3 Reload / Persona 5 Royal | UE4 / Proprietary | Direct PSO extraction; DXBC SM 5.0 pass-through; lightweight render targets. | 45–60 FPS | Playable on KeplerBridge |
| 8. Elden Ring | FromSoftware Engine | Discrete descriptor slot mapping; compute particle translation; borderless presentation. | 24–32 FPS | Playable on KeplerBridge |
| 9. Cyberpunk 2077 | REDengine 4 (D3D12) | Non-raytracing D3D12 path; dynamic texture clamping; Tier 1 root descriptor indexing. | 18–25 FPS | Playable on KeplerBridge (Targeted Path) |
| 10. Hades II | Custom Engine (D3D12) | 2D isometric rendering; lightweight constant buffers; zero heavy compute passes. | 50–60 FPS | Playable on KeplerBridge |
Click to expand additional compatibility highlights (15+ titles)
| Game Title | Engine | Compatibility Approach | Target Performance | Status |
|---|---|---|---|---|
| God of War (2018) | Santa Monica Engine | Intercept swapchain creation; dynamic buffer constant updates; translate compute post-processing. | 24–32 FPS | Playable on KeplerBridge |
| Death Stranding | Decima Engine | Immediate queue flush after draw bundles; linear UAV tracking; suppress redundant map calls. | 24–32 FPS | Playable on KeplerBridge |
| Final Fantasy VII Remake | Unreal Engine 4.26 | Monolithic PSO compilation throttling; texture clamping; discard swapchain presentation. | 26–35 FPS | Playable on KeplerBridge |
| Street Fighter 6 | RE Engine (D3D12) | Multi-slot compute UAV mapping; zero-latency discard swapchain present; low-overhead draw loop. | 38–50 FPS | Playable on KeplerBridge |
| Monster Hunter Rise | RE Engine (D3D12) | Lightweight RE Engine translation; multi-slot compute dispatch; persistent shader caching. | 38–52 FPS | Playable on KeplerBridge |
| Subnautica: Below Zero | Unity (D3D12) | Water reflection compute passes; clamp caustics textures; immediate queue synchronization. | 32–45 FPS | Playable on KeplerBridge |
| Grounded | Unreal Engine 4.25 | Direct PSO extraction; replay initial state; persistent shader caching. | 30–42 FPS | Playable on KeplerBridge |
| Deep Rock Galactic | Unreal Engine 4.26 | Procedural generation compute shaders; replay initial PSO; low-overhead draw loop. | 35–48 FPS | Playable on KeplerBridge |
| Little Nightmares II | Unreal Engine 4.25 | Direct PSO interception; DXBC SM 5.0 pass-through; linear depth-stencil buffer binding. | 35–48 FPS | Playable on KeplerBridge |
| Age of Empires IV | Essence Engine 5.0 | Terrain tile compute dispatches; dynamic unit transform buffers; sanitize swapchain flags. | 30–42 FPS | Playable on KeplerBridge |
| Guilty Gear -Strive- | Unreal Engine 4.25 | Cel-shaded 2.5D rendering; lightweight compute post-processing; high-framerate target. | 45–60 FPS | Playable on KeplerBridge |
| Cult of the Lamb | Unity (D3D12) | 2D/3D hybrid; direct PSO extraction; DXBC SM 5.0 pass-through; discard swapchain. | 45–60 FPS | Playable on KeplerBridge |
| Dave the Diver | Unity (D3D12) | Lightweight pixel art & 3D underwater backgrounds; immediate command execution. | 50–60 FPS | Playable on KeplerBridge |
| Sifu | Unreal Engine 4.26 | Skeletal animation compute buffers; dynamic constant buffer updates. | 32–45 FPS | Playable on KeplerBridge |
| Manor Lords | Unreal Engine 4.27 | Building compute culling; clamp foliage textures; persistent shader disk caching. | 25–35 FPS | Playable on KeplerBridge |
For the complete evaluation of all 86 titles, see docs/GAME_COMPATIBILITY.md.
- Download: Get the latest release package (
keplerbridge-v0.8.0-rc1-x64.zip) from GitHub Releases. - Deploy: Extract
d3d12.dllandkepler_bridge.iniinto the game directory containing the main 64-bit executable. - Launch: Run the game in offline mode. KeplerBridge initializes automatically and creates a
kepler_bridge.logdiagnostic file.
For detailed folder locations, engine-specific tips, and uninstallation steps, see the full docs/INSTALLATION.md guide.
[Spoof]
EnableFeatureLevelSpoof=1 ; Allows passing D3D12 12_0 startup checks
TargetFeatureLevel=12_0
SpoofVRAMMB=4096
[Downgrader]
EnableShaderInspection=1 ; Inspects bytecode and manages translation
EnableShaderFallback=1 ; Enables replacement policies for unsupported instructions
EnableTextureClamping=1 ; Clamps large textures to prevent DDR3 bus saturation
MaxTextureResolution=1024 ; Maximum texture dimension (512, 1024, or 2048)
[Translation]
EnableD3D11Translation=1 ; Translates D3D12 calls into D3D11 execution
EmulateBarriers=1 ; Flushes contexts on resource transitions
EnableStateTracking=1 ; Tracks pipeline and descriptor bindings
ImmediateQueueFlush=1 ; Executes command lists on queue submission
[Cache]
EnableShaderDiskCache=1 ; Persists compiled shaders across game launches
CacheDirectory=kepler_cache/shadersflowchart TD
App["D3D12 Game / Engine"] -->|"Loads local proxy"| Proxy["KeplerBridge (d3d12.dll)"]
subgraph Core["KeplerBridge Core Translation Layer"]
Proxy -->|"Intercepts D3D12CreateDevice"| PolicyEngine["Capability & Policy Engine"]
PolicyEngine -->|"Wraps Device"| WrappedDev["WrappedD3D12Device"]
WrappedDev -->|"Records commands"| CmdTranslator["Command Translator & Batcher"]
WrappedDev -->|"Inspects bytecode"| ShaderEngine["Shader Inspector & Cache"]
ShaderEngine -->|"Hash lookup (64-bit FNV-1a)"| DiskCache[("Persistent Disk Cache (.dxbc)")]
ShaderEngine -->|"Compile fallback"| D3DCompile["d3dcompiler_47.dll (SM 5.0)"]
CmdTranslator -->|"Replays batch"| Backend["D3D11Backend (Immediate Context)"]
CmdTranslator -->|"Maps descriptors"| ResManager["Resource & UAV Manager"]
CmdTranslator -->|"Drains queue via Query Event"| FenceSync["GPU Completion & Fence Sync"]
end
Backend -->|"Direct D3D11 runtime calls"| D3D11Runtime["Windows D3D11 Runtime (d3d11.dll)"]
D3D11Runtime -->|"WDDM Driver"| Hardware["Kepler GPU (Feature Level 11_0)"]
- API Interception: Exports all standard
d3d12.dllentry points, capturing device creation calls. - Device Wrapping: An authentic native hardware device is initialized under Feature Level 11_0 and presented to the game wrapped in
WrappedD3D12Device. - Command Batching & Replay: Direct3D 12 command lists record draw, dispatch, and state commands into contiguous buffers. Upon queue submission, KeplerBridge serializes and replays the commands onto the Direct3D 11 immediate device context.
- Shader Translation & Caching: Shaders are inspected, translated if required, and cached to disk. Subsequent launches load pre-translated DXBC bytecode directly, bypassing compiler latency.
- GPU Synchronization: Fences synchronize CPU and GPU workloads using native
D3D11_QUERY_EVENTqueries, ensuring GPU completion before advancing CPU wait conditions.
For a comprehensive technical breakdown of all subsystems, see docs/ARCHITECTURE.md.
Performance on legacy hardware is governed primarily by memory bandwidth and CPU single-thread throughput.
- Resolution Recommendation: 1280x720 (720p) or 1366x768 is strongly recommended for DDR3-based cards.
- Upscaling: Utilizing in-game dynamic resolution scaling, AMD FSR, or Unreal Engine TSR (50%–70%) substantially reduces memory bus saturation.
- Texture Clamping: Setting
EnableTextureClamping=1inkepler_bridge.iniprevents 4K textures from overwhelming 64-bit memory buses (14.4 GB/s on GT 740 DDR3).
For configuration benchmarks across representative hardware tiers and in-game optimization tips, consult docs/PERFORMANCE_GUIDE.md.
| Symptom | Probable Cause | Recommended Action |
|---|---|---|
| Game crashes immediately at launch | Anti-cheat blocking proxy or missing D3D12 entry point | Ensure offline mode. Check kepler_bridge.log for missing exported APIs. |
| Severe stutter during new areas | Shaders compiling for the first time | Allow shaders to compile into kepler_cache/. Stutter clears on subsequent runs. |
| Low framerate on entry-level card | Memory bandwidth saturation from 2K/4K textures | Set EnableTextureClamping=1 and MaxTextureResolution=1024 in kepler_bridge.ini. |
| Black screen with audio playing | Swapchain format or presentation mismatch | KeplerBridge automatically applies DXGI_SWAP_EFFECT_DISCARD. Update GPU driver to 456.71. |
| DirectX 12 feature level error | Game requires Feature Level 12_0 startup check | Confirm EnableFeatureLevelSpoof=1 and TargetFeatureLevel=12_0 in kepler_bridge.ini. |
For diagnostic log interpretation and error codes (KB_ERR_*), consult docs/TROUBLESHOOTING.md.
KeplerBridge translates compatible Direct3D 12 operations into Direct3D 11. It does not fabricate missing physical silicon hardware features:
| Capability Area | Supported via KeplerBridge | Architectural Hardware Boundary |
|---|---|---|
| Rasterization & PSO | Feature Level 11_0 Graphics PSOs, Viewports, Scissor Rects | Mesh Shaders & Amplification Shaders (SM 6.5) |
| Compute Shaders | Multi-slot UAVs (slots 0–7), Append/Consume Counters, Structured Buffers | 64-bit Shader Atomics, Wave Matrix Multiply |
| Resource Binding | Tier 1 Resource Binding, Dynamic CBVs, Linear Multi-Space Tables | Tier 3 Full Bindless Resource Tables |
| Lighting & Shadows | Screen-Space Reflections, Shadow Maps, Compute AO | Hardware Raytracing (DXR 1.0 / 1.1) |
| Presentation | Windowed & Borderless Discard Swapchains, Tearing Sanitization | Hardware Flip Model Tearing on legacy WDDM 2.7 |
| Asset Streaming | Staged dynamic buffer uploads, texture clamping | DirectStorage GDeflate GPU Decompression |
For full technical specifications on hardware boundaries, see docs/KNOWN_LIMITATIONS.md.
To ensure rigorous validation of commercial game titles, KeplerBridge follows a structured five-gate acceptance protocol:
- Gate 1: Proxy injection and device interception.
- Gate 2: D3D11 Feature Level 11_0 device and swapchain creation.
- Gate 3: Interactive 3D gameplay entry (beyond intros and menus).
- Gate 4: 15-minute continuous stability with 0 WDDM watchdog timeouts (
0x887A0005). - Gate 5: Resource and memory bandwidth viability on GT 740 DDR3 (14.4 GB/s).
Review the detailed acceptance criteria in docs/REAL_GAME_VALIDATION_PLAN.md.
- Contributing: Community contributions, compatibility reports, and bug fixes are welcome! Read
CONTRIBUTING.mdand use our Issue Templates. - Security & Anti-Cheat: KeplerBridge is intended exclusively for offline single-player gaming and hardware preservation. Do not use with online multiplayer games protected by kernel anti-cheat systems. Review
SECURITY.mdfor details. - License: KeplerBridge is open source under the permissive MIT License.