1
0
mirror of https://github.com/narzoul/DDrawCompat synced 2024-12-30 08:55:36 +01:00

83 Commits

Author SHA1 Message Date
narzoul
359256660e Fixed flickering mouse cursor in Icewind Dale 2 2021-05-15 19:25:33 +02:00
narzoul
dfbc27247a Fixed index buffer overflow
Fixes a crash in Laghaim.
See issue #98.
2021-05-15 16:29:10 +02:00
narzoul
148d7287e8 Fixed incompatibility with Steam overlay
See issue #68.
2021-04-02 18:04:00 +02:00
narzoul
ce991009be Fixed performance issue with palettized modes on Intel drivers
Fixes #89.
2021-03-28 11:51:28 +02:00
narzoul
aecb55286a Updated project to SDK/WDK 10.0.19041.0 2021-03-16 14:13:25 +01:00
narzoul
71c67fffd4 Reworked vtable hooking 2021-03-16 14:13:20 +01:00
narzoul
35e66bd3cf Leave cleanup to process termination 2021-03-01 22:59:07 +01:00
narzoul
0d91170fb5 Use _beginthreadex instead of CreateThread 2021-03-01 22:02:31 +01:00
narzoul
75f8f7e689 Replace vtable function pointers instead of using Detours 2021-02-24 23:35:21 +01:00
narzoul
b4ef2a1c0c Use angle brackets in all include directives 2021-02-24 23:35:20 +01:00
narzoul
205f517845 Fixed scroll bar control painting and thumb tracking 2021-02-24 23:30:48 +01:00
narzoul
0e7f397863 Moved palettized presentation handling to driver level 2021-01-17 00:45:08 +01:00
narzoul
240ddbda57 Discard invalid bits from D3DDDIRS_WRAP render state values
Fixes rendering issues in Thief 2 on Intel GMA 3600 (issue #81).
2021-01-12 21:06:32 +01:00
narzoul
324b4a77f0 Replace RHW=INFINITY with RHW=1
Fixes invisible gauge needles in NASCAR Racing 3 (issue #83).
2021-01-12 20:42:29 +01:00
narzoul
e9a2bdc83f Remove deleted textures from device state
Fixes flickering black box during SimCity 4 videos (issue #85).
2021-01-09 12:15:20 +01:00
narzoul
050248a552 Moved z-buffer bit depth caps fix to driver level 2021-01-07 01:06:37 +01:00
narzoul
4370990dfb Fixed an issue with D3DDDITSS_TEXTURECOLORKEYVAL optimization on NVIDIA drivers
See issue #80
2020-12-18 20:17:08 +01:00
narzoul
f6ed6bcefa Added optimization for D3DDDITSS_TEXTURECOLORKEYVAL 2020-12-18 12:04:33 +01:00
narzoul
b42e1584e5 Detect and disable broken source color key hardware support
Blitting with source color key appears to be broken on Radeon RX 5xxx series.
Hopefully this workaround fixes issue #79.
2020-12-14 16:09:44 +01:00
narzoul
a75739e5da Use window procedure override instead of CallWndRetProc
Fixes videos not displaying in The Guild Gold.
2020-08-21 15:22:32 +02:00
narzoul
799e9a95ae Removed dependency on D3DKMTPresent
Fixes presentation issues when Hardware Accelerated GPU Scheduling is enabled
(issue #73).
2020-07-13 23:44:05 +02:00
narzoul
b8bff744e5 Fixed sysmem/vidmem synchronization issues on integrated AMD GPUs 2020-06-27 11:12:13 +02:00
narzoul
ff5bcc031c Eliminate redundant device state changes 2020-06-21 22:48:39 +02:00
narzoul
bb8ce374e2 Aggregate Draw(Indexed)Primitive calls 2020-06-21 21:32:25 +02:00
narzoul
8e07040750 Moved dynamic index/vertex buffers to separate class 2020-06-16 22:20:40 +02:00
narzoul
e7d0fa8f10 Prevent some redundant state changes from execute buffers 2020-05-30 21:23:49 +02:00
narzoul
6799ecc1a9 Added missing CommonLog.h/cpp files 2020-05-30 18:18:10 +02:00
narzoul
bff7253ecd Improved rendering performance for indexed and system memory primitives 2020-05-26 14:42:14 +02:00
narzoul
ca9404ec6f Suppress flushes from execute buffers
Mitigates performance issues in Rowan's Mig Alley (issue #12).
2020-05-26 00:15:41 +02:00
narzoul
c67437d5bf Separate log files per process name and instance number 2020-05-10 15:29:23 +02:00
narzoul
9de2102909 Wait for vertical blank during gamma ramp changes
Fixes fade effects and skipped credits/ending slides in Arcanum (issue #63)
2020-04-23 20:22:00 +02:00
narzoul
e78d3f2b69 Moved WIN32_LEAN_AND_MEAN macro to compiler switches 2020-02-01 14:12:01 +01:00
narzoul
6aaf12b0a4 Added critical section to all user-mode display driver functions
Fixes crashes and frozen screen issues in Laghaim Online (issue #58)
2019-11-02 22:55:55 +01:00
narzoul
2a129c41c9 Removed dependency on context handle for driver hooks
Potential fix for issue #55.
2019-09-02 22:29:39 +02:00
narzoul
c7b94700d3 Use IAT hooks for D3DKMT* functions
Potential fix for issue #55.
2019-08-28 21:04:28 +02:00
narzoul
66e0d20897 Fixed GDI updates interrupted by presentation sync 2019-08-25 22:05:29 +02:00
narzoul
77bdff3f1c Added bounds checking to blits and color fills 2019-08-24 21:23:27 +02:00
narzoul
898c7e819c Added timeout for sysmem preference of blits
Improves performance in Dungeon Keeper 2.
2019-08-22 21:13:50 +02:00
narzoul
a45e5768ae Restrict lock surfaces to off-screen plain and render target surfaces 2019-08-22 15:24:07 +02:00
narzoul
590b6f1ad0 Use HeapAlloc for lock surface memory allocations 2019-08-21 14:51:48 +02:00
narzoul
55e08f62d4 Avoid initial lock surface copy for unmodified surfaces 2019-08-19 22:42:48 +02:00
narzoul
32a67548ae Changed surface alignment to work around performance issues on some drivers 2019-08-19 14:29:05 +02:00
narzoul
8cc73dc68d Moved lock surface handling to UMD level 2019-08-11 23:55:52 +02:00
narzoul
9b24a9b306 Removed the GetDDInterface override
Fixes a crash in UEFA Challenge (issue #50).
2019-08-11 12:48:02 +02:00
narzoul
bb6092e0bd Partial workaround for black D3DTA_DIFFUSE color on some drivers when RHW=0
Fixes black screen issues under some circumstances (e.g. underwater) in
Might and Magic 9 (issue #48).
2019-08-10 14:23:52 +02:00
narzoul
7068d282ff Improved palette handling
Fixes windowed-mode palette issues in SimCopter (issue #46)
2019-08-03 12:09:19 +02:00
narzoul
b6f6f2acf0 Limit maximum video memory
Fixes blurry textures in Rayman 2 and crash in Settlers 4
2019-08-03 12:09:17 +02:00
narzoul
e83371afed Moved GDI synchronization to UMD level
Fixes deadlock when starting Rayman 2 (issue #30).
2019-08-03 12:09:12 +02:00
narzoul
7b6b7c911c Resync source surface from system memory during presentation blit
Fixes issues with writing to unlocked primary surfaces (e.g. Nox).
2019-08-01 16:00:22 +02:00
narzoul
d23904afd2 Prefer color fills in system memory 2019-08-01 16:00:22 +02:00