github elishacloud/dxwrapper v1.9.8700.25
Release v1.9.8700.25

4 hours ago

Instructions:

  1. Download the dxwrapper.zip and unzip it to a folder.
  2. Determine which stub .dll file is needed for the game. This depends on many factors which will be explained on page created later. Common stub dll's to use are ddraw.dll, d3d8.dll, d3d9.dll, dsound.dll or winmm.dll. You only need to choose one stub file to load dxwrapper into the game.
  3. Copy this .dll file from the 'Stub' folder plus the dxwrapper.dll and dxwrapper.ini files into the game's installation directory, next to the main executable file. For some games the main executable is in a subdirectory (like 'Bin', 'Exe' or 'App') so the files will need to be copied into that directory. Overwriting existing game files is not usually recommended. Always backup any files before overwriting them.
  4. Open up the dxwrapper.ini file in a text editor and enable the settings needed for the game.

Note: Try the options under the [Compatibility] section first. For many games these are all that are needed. See the Configuration for details on the options.

dxwrapper Release Notes

New Features

  • Added a vertex shader for automatic Z-clamping. (#429, #446 (comment), thanks to @CkNoSFeRaTU)
  • Added DdrawAlternatePixelCenter option to better emulate the behavior of certain older video cards.
  • Added support for games that modify vertex buffers outside of a Lock/Unlock pair. (#593)
  • Added the ability to restore Windows font smoothing and mouse vanishing settings when dxwrapper exits.
  • Improved anisotropic filtering and forced mipmap usage. (#595, thanks to @BC46)

Performance Improvements

  • Significantly improved the performance of color-keyed blitting to render targets by using DrawPrimitiveUP.
  • Added support for vertex declarations for D3DFVF_LVERTEX7, eliminating CPU overhead from converting vertices to a Direct3D 9-compatible format.
  • Fixed code paths that incorrectly bypassed fast video memory copying in favor of slower copying methods.
  • Inlined several commonly used functions to reduce function-call overhead.
  • Reserved memory for batch state vectors to reduce memory reallocations when games use large numbers of device states.
  • Used an inline implementation of D3DXMatrixMultiply for CPU-based vertex transformations.
  • Removed an unnecessary critical section from the Direct3D 9 wrapper.

Fixes and Improvements

  • Improved handling of device creation when no window handle is provided.
  • Added render target size validation when setting the viewport.
  • Fixed the multiplication order of the legacy scale matrix.
  • Fixed the GetGDISurface implementation.
  • Fixed DuplicateSurface() to copy surface contents during creation.
  • Fixed an error involving the FOGEND light state.
  • Removed code that added window borders when Vulkan was detected.
  • Updated execute buffer handling and removed checks to better match native DirectDraw behavior.
  • Simplified vertex transformations in execute buffer processing.
  • Fixed an issue that caused mipmaps rendered through DrawTexture to appear black when color keying and mipmaps were used together.
  • Fixed several interface address caching and lookup issues.
  • Improved handling of reused Direct3D 9 interfaces.
  • Fixed various additional issues throughout the codebase.

Don't miss a new dxwrapper release

NewReleases is sending notifications on new releases.