Stenzek
7b99fcbbf3
GPU: Fix edge bleeding with Bilinear Integer scaling
2024-07-28 14:08:28 +10:00
Stenzek
7a3a72ec3d
GPU: Add display rotation option
2024-07-26 23:09:33 +10:00
Stenzek
deed0c9713
GameDatabase: Merge compatibility messages
2024-07-22 14:59:55 +10:00
Stenzek
4f7ddfaae6
TimingEvents: Remove pointer indirection
...
Probably should move this to one big array for locality.
2024-07-19 22:56:41 +10:00
Stenzek
d63ae8718f
GPU: Always calculate draw rect
...
Stops postfx shaders that depend on the draw rect going into NaN
territory.
2024-07-07 12:46:09 +10:00
Stenzek
ed5a99066f
GPU: Cull off-screen sprites/lines
...
And further optimizations to culling in general.
2024-07-06 22:13:46 +10:00
Stenzek
9ef7e8c5d0
GPU/HW: Use GSVector instead of Rectangle
2024-07-03 15:44:12 +10:00
Stenzek
044d7a4797
GPU: Eliminate heap allocation on state load
2024-07-03 00:24:12 +10:00
Stenzek
34d5cdec96
GPU/HW: Expose depth buffer to internal postprocessing
2024-06-29 14:25:36 +10:00
Stenzek
80d1056ddf
GPU: Add virtual call when buffers are swapped
2024-06-28 21:15:47 +10:00
Stenzek
0c3cf1f5f8
PostProcessing: Split into internal and display chains
2024-06-28 20:17:15 +10:00
Stenzek
810ce1ce57
GPU: Remove duplicate display params fields
...
And enable postfx when the DAC is turned off.
2024-06-28 20:17:15 +10:00
Stenzek
ef69c31e9f
GPUDevice: Support transpiling shaders at compile time
...
And use it for GLSL postprocessing shaders.
2024-06-14 21:21:34 +10:00
Stenzek
ac1bb905fe
GPU: Set idle bit during VRAM upload
...
Tenga Seiha does a bunch of completely-invalid VRAM writes on boot, then
expects GPU idle to be set. It's unclear what actually happens, I need to
write another test, but for now, just skip these uploads. Not setting GPU
idle during the write command breaks Doom, so that's not an option.
2024-06-13 18:35:02 +10:00
Stenzek
354b250642
PostProcessing: Add native width/height inputs
...
Available in GLSL as GetNativeSize(), GetUpscaleMultiplier(), and in
reshade as native_width/native_height/upscale_multiplier.
GetPaddedOriginalSize() is now deprecated, as it does not make since
since the postfx shader runs with a window-sized off-screen target as an
input, not the internal render texture.
2024-06-11 14:04:45 +10:00
Stenzek
627c12bebe
GPU: Fix IRQ request
2024-05-31 20:39:18 +10:00
Stenzek
73136d7dc4
GPU: Tie idle bit to FIFO emptyness on VRAM write
...
Fixes Tenga Seiha lockup on boot.
2024-05-31 20:12:59 +10:00
Stenzek
53600746c7
GPU: Cancel VRAM writes on Reset
2024-05-31 19:49:40 +10:00
Stenzek
723af4de3a
Misc: Loading old save state versions is unlikely
2024-05-31 18:48:26 +10:00
Stenzek
4e922a34a7
Log: Simplify macros
2024-05-24 02:08:14 +10:00
Stenzek
b6d019db66
Misc: Replace log printf calls with fmt
2024-05-24 00:29:49 +10:00
Stenzek
d2f28b6926
GPU: Explicit RemovePathLimits() is no longer needed
2024-05-23 19:52:56 +10:00
Stenzek
10df7ba319
GPU/HW: Ensure CLUT cache is synced when using SW-for-readbacks
2024-05-23 14:30:18 +10:00
Stenzek
f3aec0c965
Host: Re-introduce plural translation support
2024-05-13 01:46:45 +10:00
Stenzek
a4a35b7e58
GPU: Add Bilinear (Integer) scaling option
2024-05-12 15:32:21 +10:00
Stenzek
1185f8f6aa
GPU: Implement CLUT cache (SW renderer only)
...
Fixes copyright screen in Shadow Master.
Fixes title splash in Castrol Honda Superbike Racing.
2024-05-02 01:03:58 +10:00
Stenzek
7e22fb08d2
GPU: Add #define'able PSX GPU stats
2024-05-01 23:00:10 +10:00
Stenzek
fec210b1e1
GPU: Ensure coordinates are masked/clamped
2024-05-01 20:58:21 +10:00
Stenzek
3be02c53c1
GPU: Improve CRTC hblank accuracy
...
And implement Timer0 gating, it was missing previously.
2024-04-28 15:25:24 +10:00
Stenzek
b26a9556f7
System: Improve reset determinism
2024-04-22 00:19:44 +10:00
Stenzek
417bf0c3bc
DMA: Better enforce CPU runtime during linked list
...
and get rid of the hack for Newman Haas.
2024-04-10 20:11:23 +10:00
Stenzek
72ab669e70
GPUDevice: Add support for feedback loops
2024-04-01 13:55:19 +10:00
Stenzek
3ecc19c43f
GPU: Fix HW readback counter
2024-03-31 14:02:44 +10:00
Stenzek
fa6850902a
CPU: Make interrupts actually edge-triggered
2024-03-18 01:46:19 +10:00
Stenzek
1ab7850ed0
GPU: Rewrite deinterlacing and add adaptive/blend modes
2024-03-16 14:14:15 +10:00
Stenzek
43eb6e20fa
System: Improve screenshot naming
2024-03-16 14:14:15 +10:00
Stenzek
6aa491f863
GPU: Ensure screenshots are saved before shutdown
2024-03-16 14:14:15 +10:00
Stenzek
7159330f63
GPU/HW: Ensure buffers are unmapped before present
...
Darn DX11...
2024-03-08 13:43:22 +10:00
Stenzek
250b1bea8f
GPU: Use Image class for screenshot saving
2024-03-06 23:55:18 +10:00
Stenzek
04b837a418
Qt: Redesign graphics settings panel
...
Add screenshot format/type.
2024-03-02 21:21:20 +10:00
Stenzek
f936a36c85
GPUDevice: Add GPUDownloadTexture
...
Which can also be based in host/client memory.
Use it for screenshots and VRAM downloads.
2024-02-29 18:56:50 +10:00
Stenzek
411213d6a0
GPU: Make VRAM a global object
2024-02-29 17:00:51 +10:00
Stenzek
150ab8f4af
GPU: Add host/hardware stats
2024-01-22 14:41:19 +10:00
Stenzek
12b9cf1898
GPU: Fix crash when trying to postprocess surfaceless
2023-12-31 19:40:45 +10:00
Stenzek
98a96db1bd
GPU: Remove redundant fields
2023-12-14 20:23:49 +10:00
Stenzek
39913b2a39
GPUDevice: Fix incorrect positioning with PostFX and GL
2023-12-10 23:26:43 +10:00
Stenzek
a907e1f550
GPUDevice: Pool textures
2023-12-09 22:08:13 +10:00
Stenzek
3b2c70cda5
GPUDevice: Get rid of framebuffer abstraction
2023-12-09 22:08:13 +10:00
Stenzek
ff17444074
GPU/HW: Add framebuffer fetch blending path
2023-11-25 21:22:35 +10:00
Stenzek
9d88a373bd
GPU: Fix Guncon positioning with window padding
2023-11-04 20:11:51 +10:00