DDrawCompat Documentation

repository·master·Indexed 23 days ago

https://github.com/narzoul/ddrawcompat

A DLL wrapper that improves compatibility and performance for games using DirectX 1-7 and GDI on modern Windows systems (Vista, 7, 8, 10, and 11). It provides a way to fix graphics API issues without performing full API conversion, requiring SSE2 support and Shader Model 3 GPUs.

Tokens
739
Snippets
0
Records
7
Agent score
30%

What's inside DDrawCompat

  1. Overview of DDrawCompat

    master
    DDrawCompat is a DLL wrapper designed to fix compatibility and performance issues associated with DirectX 1-7 graphics APIs. It also provides partial support for GDI. It does not perform API conversion; instead, most rendering continues to be handled by the native DirectX 1-7 and GDI libraries.
  2. Supported and Unsupported Use Cases

    master

    DDrawCompat is intended for specific scenarios. Please note the following limitations:

    Unsupported Cases:

    • Games requiring an internet connection.
    • Windows Insider preview builds.
    • Virtualized or emulated environments (e.g., Virtual Machines or Wine).
    • Using DDrawCompat alongside other wrappers, hooks, overlays, or video recorders (Note: desktop screen recorders may work if using FullscreenMode=borderless).
    • Applications that mix DirectX 1-7 with other APIs (e.g., DirectX 8+, OpenGL, Vulkan, or Glide).

    Reporting Issues: When reporting issues, provide the application title, GPU model, Windows version, and reproduction steps. Attaching info level logs is highly recommended. You may redact personal information (like Windows usernames) from log files before sharing.

  3. System Requirements for DDrawCompat

    master

    To use DDrawCompat, your system must meet the following requirements:

    General Requirements:

    • OS: Windows Vista, 7, 8, 10, or 11
    • CPU: Must have SSE2 support
    • GPU: Must have Shader Model 3 support

    Specific Requirements for Windows Vista and 7:

    • Drivers: Must use WDDM-compatible graphics drivers (legacy XPDM drivers are no longer supported since v0.3.0).
    • Desktop Composition: Must be enabled.
  4. Install DDrawCompat in a game directory

    master

    To install DDrawCompat for a specific game:

    1. Download the latest binary release from the releases page (avoid files with "debug" in the name unless you are a developer).
    2. Unzip the downloaded file.
    3. Copy the extracted ddraw.dll to the target game's installation directory, placing it in the same folder as the game's main executable (.exe).

    Note: If a ddraw.dll already exists in the directory, it is likely another wrapper. Back up the original file before replacing it with DDrawCompat's ddraw.dll.

  5. Configure DDrawCompat

    master

    Starting from version v0.4.0, DDrawCompat can be configured using:

    • Text files: Configuration settings defined in text files.
    • In-game overlay: Partial configuration support via an overlay during gameplay.

    Refer to the project wiki for detailed configuration options and syntax.

  6. Verify DDrawCompat Installation

    master

    After installing ddraw.dll and starting the game, check the game's directory for a log file to confirm DDrawCompat is working.

    • Log filename format: DDrawCompat-*exename*.log (for versions v0.3.0 and newer) or ddraw.log (for versions prior to v0.3.0).

    If no log file is created, DDrawCompat was not loaded by the game. You may need to check the project wiki for troubleshooting solutions.