Fix OBS Game Capture Lag in DirectX 12 Games

If you experience massive in-game frame rate drops when using OBS Studio’s “Game Capture” source on DirectX 12 (DX12) titles, you are not alone. This performance hit is usually caused by conflicts between DX12’s low-level API rendering and the way OBS hooks into the game engine. This article provides straightforward, actionable solutions to eliminate these frame drops, covering settings adjustments, alternative capture methods, and system optimizations to restore your game’s performance while streaming or recording.

Use Windows Graphics Capture (WGC) for Window Capture

DirectX 12 games often react poorly to the traditional hooking method used by OBS’s “Game Capture” source. Transitioning to a “Window Capture” source using the modern Windows graphics engine bypasses this hook entirely.

  1. Open OBS Studio and go to your Sources dock.
  2. Click the + icon and select Window Capture (instead of Game Capture).
  3. Set your DX12 game to run in Borderless Windowed or Windowed mode in the game’s settings.
  4. In the OBS Window Capture properties, select your game under the Window dropdown.
  5. Change the Capture Method to Windows 10 (1903 and up) (also known as Windows Graphics Capture).

This method utilizes a highly optimized Windows API that captures DX12 games with virtually zero impact on in-game frame rates.

Run OBS Studio as Administrator

When your GPU runs at 100% capacity, Windows prioritizes the game over background applications, causing OBS to starve for resources and drop frames. Running OBS as an administrator triggers a Windows GPU scheduler feature that reserves a small percentage of GPU power for OBS.

  1. Right-click your OBS Studio shortcut.
  2. Select Properties.
  3. Go to the Compatibility tab.
  4. Check the box for Run this program as an administrator.
  5. Click Apply and OK.

Limit Your In-Game Frame Rate

If your GPU is fully maxed out rendering unlimited frames in a DX12 game, OBS will struggle to capture the video feed, resulting in stuttering.

  1. Open your game’s video settings.
  2. Enable a Frame Rate Limit (FPS limit).
  3. Match the limit to your monitor’s refresh rate (e.g., 60, 120, or 144 FPS) or slightly lower.
  4. Alternatively, enable V-Sync to cap your frame rate and reduce GPU load, leaving overhead for OBS to encode the video.

Disable Conflicting Overlays

DirectX 12 is highly sensitive to multiple applications trying to hook into its render pipeline. Third-party overlays are a primary cause of severe performance degradation when combined with OBS.

Disable the following overlays while streaming or recording: * Discord Overlay (User Settings > Game Overlay > Enable in-game overlay [Turn Off]) * GeForce Experience Share / ShadowPlay Overlay * Steam Overlay * RivaTuner Statistics Server (RTSS) or MSI Afterburner

Toggle Hardware-Accelerated GPU Scheduling (HAGS)

Windows’ Hardware-Accelerated GPU Scheduling (HAGS) can sometimes conflict with OBS Studio’s resource allocation on DX12 titles. Depending on your GPU driver version, turning this feature on or off can resolve the frame rate drops.

  1. Open the Windows Start Menu and search for Graphics settings.
  2. Locate Hardware-accelerated GPU scheduling.
  3. Toggle the switch to Off (or On if it was previously off to see if performance improves).
  4. Restart your computer for the changes to take effect.