Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,10 @@ jobs:
# The file is in bin/x32/d3d9/dinput8.dll
zip -j assets/d3d9.zip bin/x32/d3d9/dinput8.dll

# d3d10.zip (x32 only)
# The file is in bin/x32/d3d10/dinput8.dll
zip -j assets/d3d10.zip bin/x32/d3d10/dinput8.dll

# d3d11.zip (x64 only)
# The file is in bin/x64/d3d11/dinput8.dll
zip -j assets/d3d11.zip bin/x64/d3d11/dinput8.dll
Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]


## [1.0.0] - 2026-05-26

### Added
- DirectX 10 (D3D10) support and release packaging.
- Logs disabled by default, enabled with `Debug=true` in `GamePlug.conf`.

### Changed
- Redesigned resolution enumeration UI with dynamic checkbox toggles and bidirectional textbox synchronization.

## [0.1.2] - 2026-05-26

### Added
Expand Down
4 changes: 4 additions & 0 deletions GAMES_COMPATIBILITY_LIST.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,11 @@

| Game Name | Layer | File to Use |
|-----------|-------|-------------|
| Assassins Creed Directors Cut | d3d10 | dinput8.dll |
| Resident Evil 4 | d3d12 | dinput8.dll |
| Resident Evil 5 | d3d9 | dinput8.dll |
| Resident Evil 6 | d3d9, vulkan | dinput8.dll |
| Resident Evil Revelations 2 | d3d9 | dinput8.dll |
| The Elder Scrolls V: Skyrim - Legendary Edition | d3d9 | dinput8.dll |
| The Elder Scrolls V: Skyrim Anniversary | d3d11 | dinput8.dll |
| The Elder Scrolls V: Skyrim Special Edition | d3d11 | dinput8.dll |
Expand All @@ -21,6 +24,7 @@ To contribute:

Supported layers include:
- `d3d9` - DirectX 9
- `d3d10` - DirectX 10
- `d3d11` - DirectX 11
- `d3d12` - DirectX 12
- `vulkan` - Vulkan
Expand Down
3 changes: 2 additions & 1 deletion GamePlug.conf
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# Add extra resolutions to the game's settings menu
EnabledEnumeratedResolutions=true
ExtraEnumeratedResolutions=2560x1440, 3840x2160

Debug=false
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# 🚀 GamePlug: The Universal Plugin Layer

GamePlug is a powerful, multi-API interception framework designed for modders. It provides a unified plugin system to inject custom ImGui UIs and game logic across **Vulkan**, **DirectX 9**, **DirectX 11**, and **DirectX 12**.
GamePlug is a powerful, multi-API interception framework designed for modders. It provides a unified plugin system to inject custom ImGui UIs and game logic across **Vulkan**, **DirectX 9**, **DirectX 10**, **DirectX 11**, and **DirectX 12**.

## ✨ Key Features

* **Multi-API Support**: One framework to rule them all. Works seamlessly with Vulkan, D3D9, D3D11 and D3D12.
* **Multi-API Support**: One framework to rule them all. Works seamlessly with Vulkan, D3D9, D3D10, D3D11 and D3D12.
* **Unified Plugin System**: Build plugins once using a clean C++ interface. No need to worry about the underlying rendering backend.
* **ImGui Integration**: Full support for Dear ImGui overlays with shared context between the host and plugins.
* **Cross-Architecture**: Supports both x32 (Legacy/DXVK titles) and x64 (Modern titles).
Expand Down Expand Up @@ -44,8 +44,8 @@ cmake --build build64 --config Release
- `gameplug.exe`: The launcher that automatically sets up the Vulkan layer environment.
- `run_game.bat`: A helper script for launching Vulkan games with the layer.

### 🎮 DirectX 9 / 11/ 12 (Proxy Mode)
- `dinput8.dll`: The universal drop-in proxy for all DirectX games (DX9,DX11 & DX12).
### 🎮 DirectX 9 / 10 / 11 / 12 (Proxy Mode)
- `dinput8.dll`: The universal drop-in proxy for all DirectX games (DX9, DX10, DX11 & DX12).

## 🔧 Usage

Expand All @@ -58,7 +58,7 @@ Vulkan uses a layer system. The easiest way to use it is via the launcher:
1. Place `vklayer.dll` and `VK_LAYER_GAMEPLUG.json` in a folder.
2. Set `VK_LAYER_PATH` to that folder and `VK_INSTANCE_LAYERS` to `VK_LAYER_GAMEPLUG`.

### 🎮 DirectX Integration (9 / 11/ 12)
### 🎮 DirectX Integration (9 / 10 / 11 / 12)
DirectX integration is simpler and uses a single universal proxy:
1. Copy `dinput8.dll` into the game's executable directory.
2. Launch the game normally.
Expand Down
Loading
Loading