|
|
|
|
| Original | glRemix |
|---|---|
![]() |
![]() |
![]() |
![]() |
glRemix is a DirectX 12 powered platform for remastering old OpenGL games using modern graphics such as real-time raytracing, modern lighting and asset replacement all without modding or source code access.
This is done by replacing the Window's opengl.dll in the host app’s .exe location, which causes the host app’s OpenGL API calls to be intercepted by the glRemix shim layer. These OpenGL commands are sent to the glRemix renderer via interprocess communication, where it interprets and executes them, effectively recreating scenes in real-time in DirectX 12.
- glRemix
Please refer to the System Details document for more technical information.
The application and path-traced DXR renderer comes equipped with the following rendering features:
- Path Tracing
- Direct Lighting
- Textures + Materials System
- Environment Mapping
- PBR Overrides
- Asset Replacement
| Original glxgears | Metal Gear | Steel Gear | Rusty Gear |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
This project is set up to allow for both 32-bit and 64-bit compilation of the shim layer using CMake's ExternalProject mechanism.
- Clone project.
- Create build directory:
mkdir build - Configure project:
cd buildcmake .. - Build project:
cmake --build . --config Release
By default, the 32-bit shim is built. To build the 64-bit shim instead, configure with:
cmake .. -DGLREMIX_BUILD_SHIM_X64=ON -DGLREMIX_BUILD_SHIM_WIN32=OFF
The deploy directory where DLLs and PDBs are copied after build can be configured with -DGLREMIX_DEPLOY_DIR=<path>. By default it is set to the project root.
To facilitate development, you may enable this option and set a custom path to the glRemix_renderer.exe file (which should have the folder shaders alongside it) like so:
cmake .. -DGLREMIX_OVERRIDE_RENDERER_PATH=ON -DGLREMIX_CUSTOM_RENDERER_EXE_PATH="path\to\the\renderer\executableThis will override the path that the shim looks for when launching the DX12 renderer executable as a child process which can be useful for development as you no longer need to copy the renderer files to the app location. By default GLREMIX_CUSTOM_RENDERER_EXE_PATH will be set to where it has been deposited from CMake's deploy step, i.e. ${GLREMIX_DEPLOY_DIR}/$<CONFIG>/renderer/glRemix_renderer.exe, where <CONFIG> is Debug, Release, etc.
- DX12 Ultimate (Feature Level 12_2)
- Raytracing Tier 1.1
- GPU Upload Heap Support
- Tier 2 Descriptor Heaps
- D3D12MemoryAllocator - MIT License
- DirectXTex - MIT License
- fastgltf - MIT License
- Dear ImGui - MIT License
- SXC - MIT License
Please refer to the Development Progress section in the system details document for information on the project's development progress.












