Skip to content
hifihedgehog edited this page Mar 3, 2026 · 63 revisions

PadForge Wiki

Welcome to the PadForge wiki — the complete reference for users and developers.

PadForge is a modern controller mapping utility for Windows. It maps any controller, keyboard, or mouse to virtual Xbox 360, DualShock 4, or vJoy controllers that games see as real hardware.


User Guide

Everything you need to get started and master PadForge.

Page Description
Installation Download, requirements, and first launch
Dashboard The main overview screen
Controller Slots Adding and configuring virtual controllers
3D and 2D Visualization Interactive controller model and schematic
Button and Axis Mappings Mapping physical inputs to virtual outputs
Stick Dead Zones Thumbstick dead zone, anti-dead zone, and response curves
Trigger Dead Zones Trigger dead zone and range configuration
Force Feedback Rumble passthrough, haptic fallback, and vJoy FFB
Macros Button combo triggers, action sequences, and custom vJoy buttons
Profiles Per-application automatic profile switching
Devices Physical device list and raw input state viewer
DSU Motion Server Gyro and accelerometer broadcasting for emulators
Settings Appearance, input engine, and window options
Driver Management Installing and uninstalling ViGEmBus, HidHide, and vJoy
Troubleshooting Common problems and solutions

Developer Reference

Deep technical documentation for contributors and developers who want to understand or fork PadForge.

Page Description
Architecture Overview Solution structure, project layout, and design philosophy
Input Pipeline The 6-step polling loop from physical input to virtual output
SDL3 Integration SDL3 device enumeration, gamepad API, sensors, and haptics
Virtual Controllers Xbox 360, DualShock 4, and vJoy output implementations
vJoy Deep Dive HID descriptors, FFB, device node management, and registry
Settings and Serialization PadForge.xml format, PadSetting, UserDevice, UserSetting
Services Layer InputService, SettingsService, DeviceService, RecorderService
ViewModels MVVM data binding, observable properties, and commands
XAML Views WPF pages, controls, templates, and converters
3D Model System HelixToolkit integration, OBJ loading, and animation
2D Overlay System Controller schematic rendering and overlay positioning
DSU Protocol Implementation Cemuhook UDP protocol, packet formats, and axis mapping
Driver Installation Internals ViGEmBus, HidHide, and vJoy install/uninstall flow
Engine Library PadForge.Engine data types, SDL3 interop, and device wrappers
Build and Publish Building, publishing, and release workflow

Built with SDL3, ViGEmBus, vJoy, HelixToolkit, .NET 8 WPF, and Fluent Design.

Clone this wiki locally