签到天数: 1892 天 [LV.Master]伴坛终老
|
Instructions:
Download the dxwrapper.zip and unzip it to a folder.
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.
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.
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.
What's New?
Added StateBlock emulation for improved compatibility (do not convert DirectDraw StateBlocks to Direct3D9 StateBlocks)
Added support for IDirect3DVideoDevice9 #291
Added support for IID_IDirectDrawSurface textures #480
Added support for D3DOP_PROCESSVERTICES in ExecuteBuffers #432
Added support for D3DOP_SPAN opcode in Execute() for ExecuteBuffers
Added atomic locking for ExecuteBuffers in Execute() and Lock()
Added z-depth clamping after vertex transform
Added second DdrawClampVertexZDepth mode to clamp RHW, recompute W/Z, then clamp Z #446
Added DepthBiasFactor and DepthBiasDropOffValue to improve ZBias to DepthBias conversion #268
Added OverrideStencilFormat support in Direct3D9 #392
Added support for D3DRENDERSTATE_OLDALPHABLENDENABLE
Added support for ATOC (Alpha-To-Coverage) #407
Added option to disable GDI gamma ramp (DisableGDIGammaRamp) #427
Added FlipEx option for D3d9to9Ex presentation mode #433
Added UseShadowBackbuffer option to enable or disable shadow back buffers #437
Added DdrawUseShadowSurface option
Added DdrawNoDrawBufferSysLock option #453
Added ForceKeyboardLayout option #464
Added code to copy color keys during texture Load() #32
Added code to pre-populate draw textures when using color keys for performance
Added rotating index buffers for improved rendering performance
Added minor vertex performance improvement by skipping vertex clearing with DDLOCK_DISCARDCONTENTS #453
Added DdrawNoMultiThreaded and DdrawVertexLockDiscard options for potential performance improvements #453
Added extra space to ExecuteBuffer data allocation #335
Added logging for unsupported IDirect3D9 IIDs
Added extra logging for profiling, failures, and warnings
Added hook for CoGetClassObject and updated CoCreateInstance handling
Added msvbvm60 stub and removed related exports from dxwrapper
Added warning log when overwritten system DLLs are loaded before dxwrapper
Added logic to avoid loading System32 DLLs unless required
Added code to set the viewport before Clear() in CopyZBuffer
Added code to always forward WM_SYNCPAINT to DefWindowProc
Added WM_ACTIVATEAPP message support for DirectDraw versions 1 through 3 #487
Changed Direct3D9 state handling to reduce redundant state calls by caching defaults, ignoring undocumented states, and batching updates
Changed z-buffer video memory blits to return unsupported status
Changed compiler configuration to include required WDK headers
Changed Windows version target to 0x0601 #283
Changed program optimization settings #283
Changed DepthBias handling to reduce z-fighting
Changed StretchRect behavior to use intermediate surfaces when direct copies are not possible #458
Changed CooperativeLevel flag handling to tolerate unsupported flag combinations #466
Changed DirectDraw primary surface clearing behavior in certain cases #421
Changed device creation flow to delay SWP_FRAMECHANGED until after device creation #450
Changed DirectDraw multisampling behavior to require enabling AntiAliasing in the ini file
Changed index buffer size limits to support larger buffers #475
Changed handling of duplicate WM_ACTIVATE / WM_ACTIVATEAPP messages to prevent game misbehavior #484
Changed stack-allocated buffers to heap allocation in select code paths
Changed code structure by removing unnecessary do-while loops
Renamed ForceDirect3D9On12 to D3d9on12
Removed calls to GetForegroundWindow / SetForegroundWindow that caused game issues #291 #455
Removed RTTI, runtime <mutex>, <filesystem>, <atlstr.h> from the project #283
Removed scaling logic for native DirectDraw rendering
Removed unnecessary DDBD_8 from dwDeviceRenderBitDepth
Removed redundant SWP_FRAMECHANGED calls when frame styles are unchanged
Fixed surface memory usage and removed unused DdrawExtraEmulationSize
Fixed CreateThread and VirtualAlloc stack size handling when stack size is unspecified #429
Fixed Texture Stage State behavior to match native DirectDraw
Fixed Render State behavior to match native DirectDraw
Fixed Light State behavior to match native DirectDraw
Fixed return values for get/set state calls
Fixed ambient light conversion from DirectDraw to Direct3D9
Fixed TEXTUREMAPBLEND render state to correctly use texture alpha when available #429
Fixed lighting disable behavior in DX6 and earlier versions #429
Fixed incorrect hwnd resizing in exclusive mode causing warped or off-screen output
Fixed return values for SetClipper and SetPalette #432
Fixed Status return value in Execute() for ExecuteBuffers #432
Fixed SetLight handling in Viewport #432
Fixed D3d9to9Ex issues by forcing video memory for surfaces narrower than 64 pixels #446
Fixed CreateOffscreenPlainSurfaceEx behavior in D3d9to9Ex #444
Fixed homogeneous viewport scaling algorithm
Fixed swap effect and source/destination clipping in Present() #452
Fixed reference counting when using FPS counter, ImGui, shadow back buffers, and gamma shaders
Fixed d3dx9 compatibility on Windows XP
Fixed SetAppCompatData handling in DDrawCompat that broke some games on Windows 11 #462
Fixed GetScanLine to return DDERR_VERTICALBLANKINPROGRESS when InVBlank is true #469
Fixed CreateQuery() return value #468
Fixed OverrideRefreshRate by applying it during UpdatePresentParameter #479
Fixed handling of unknown clippers in SetClipper by using a full proxy lookup table #432
https://github.com/elishacloud/dxwrapper/releases
百度云分享:
链接: https://pan.baidu.com/s/1-SKCkf-aM7zkPDw8m75r0A 提取码: 97q7 复制这段内容后打开百度网盘手机App,操作更方便哦 |
|