Connor McLaughlin
f7587eaeac
GPU/HW: Fix incorrect range for shader compiling progress
2021-06-25 13:56:06 +10:00
Connor McLaughlin
245dd5b27a
GPU/HW: Fix crash with oversized writes and sw readback
2021-05-20 14:14:26 +10:00
Connor McLaughlin
5d877250e9
GPU/HW: Add an option to use software renderer for readbacks
2021-05-20 13:28:36 +10:00
Connor McLaughlin
ddea2818d9
Qt: Add renderer/resolution to status bar
2021-03-28 13:47:53 +10:00
Connor McLaughlin
757bef7b6d
Common/D3D11: Stride should be byte width
2021-03-06 02:21:27 +10:00
Connor McLaughlin
97cf3f770e
GPU: Fix previous frame adaptive downsample leaking in
2021-02-28 04:03:48 +10:00
Connor McLaughlin
24c2165bb3
GPU: Allow closing window/app to interrupt shader compilation
2021-02-19 01:48:44 +10:00
Connor McLaughlin
46dbea509a
GPU: Fix adaptive downsampling regression
2021-02-18 02:08:47 +10:00
Connor McLaughlin
c043643c4d
GPU/HW: Fix typo in IncludeVRAMDirtyRectangle() name
2021-02-07 20:00:16 +10:00
Connor McLaughlin
43bb69fb6b
GPU/SW: Fix 576-line scanout of PAL games
2021-02-01 18:39:36 +10:00
Connor McLaughlin
23e102b90a
GPU: Make display texture 720x576 instead of 1024x512
...
Some PAL games render in the full permissable 576 height, not 512.
2021-02-01 01:10:32 +10:00
Connor McLaughlin
24dd49e05d
GPU: Fix runahead with MSAA enabled in D3D11/Vulkan
2021-01-26 03:22:23 +10:00
Connor McLaughlin
3f96473fb5
System: Reuse existing texture/buffers for runahead/rewind
2021-01-25 01:15:46 +10:00
Connor McLaughlin
516d685dd0
System: Add memory-only save states and rewind
2021-01-25 01:15:45 +10:00
Connor McLaughlin
fd166a4485
ShaderCache: Add a data version field
...
We can increment this to prevent people's shader caches from growing too
large with shader changes.
2021-01-11 15:24:38 +10:00
Connor McLaughlin
3cb2cd8235
GPU: Add adaptive and box downsampling modes
2020-12-30 17:41:39 +10:00
Connor McLaughlin
59e8363075
D3D11: Support mipmaps in wrapper textures
2020-12-30 17:39:40 +10:00
Connor McLaughlin
8db961042a
GPU: Support replacing VRAM writes with new textures
2020-12-26 00:47:03 +10:00
Connor McLaughlin
aa1543271e
GPU: Support emulating a depth buffer from PGXP depth values
2020-12-23 01:39:49 +10:00
Connor McLaughlin
7b6d30a994
GPU/HW: Fix possible VRAM corruption when live switching resolutions
...
Mask bit was getting lost based on guest state.
2020-12-17 01:20:06 +10:00
Connor McLaughlin
03d4f80883
GPU: Move enums/types into separate file
2020-11-21 18:39:04 +10:00
Connor McLaughlin
d3d881aa6b
GPU/Software: Reduce number of copies by one, enable 16-bit scanout
2020-11-21 18:39:04 +10:00
Connor McLaughlin
ae1e4b1b8f
GPU: Add chroma smoothing for 24-bit display enhancement
2020-11-03 16:17:45 +10:00
Connor McLaughlin
2eaebd8921
GPU: Implement support for multisample antialiasing
2020-10-31 14:27:58 +10:00
Connor McLaughlin
64e1305087
GPU/D3D11: Don't keep shader cache open
...
Allows you to run multiple DuckStation instances.
2020-10-09 18:09:10 +10:00
Connor McLaughlin
d73271ec0a
GPU: Add option to force 4:3 for 24-bit content (e.g. FMVs)
2020-09-26 15:11:45 +10:00
Connor McLaughlin
3625834ea7
GPU/HW: Add loading bar to shader compilation
2020-09-12 00:26:34 +10:00
Connor McLaughlin
6f250a4ff7
GPU/HW: Add JINC2 and xBRZ texture filtering options
...
Shaders ported from beetle-psx.
2020-09-12 00:26:34 +10:00
Connor McLaughlin
bb344a4e1e
GPU/D3D11: Fix crash/hang when toggling bilinear setting
2020-08-12 02:27:52 +10:00
Connor McLaughlin
d1ee6c0da7
GPU/HW: Make settings update slightly safer
2020-08-12 02:27:52 +10:00
Connor McLaughlin
d733553425
GPU/HW: Don't display a deleted texture in D3D/OpenGL when updating settings
2020-08-11 04:03:11 +10:00
Connor McLaughlin
fba2488bc5
GPU/D3D11: Don't add UV limits to input layout when unused
2020-08-11 03:58:59 +10:00
Connor McLaughlin
bf9ac64183
GPU/D3D11: Don't leak input layout objects
2020-08-11 03:48:24 +10:00
Connor McLaughlin
5c6e92cdfc
GPU/HW: Disable coordinate clamping when unnecessary
2020-08-10 23:28:37 +10:00
Connor McLaughlin
b95ce993e0
GPU/HW: Clamp interpolated UVs to polygon limits
...
Fixes texture filtering and PGXP issues in some games.
2020-08-10 23:28:37 +10:00
Connor McLaughlin
359234080a
D3D11: Set GS to null when restoring state
...
Fixes the D3D11 renderer being broken on RetroArch due to it leaving a
geometry shader bound.
2020-08-06 23:19:19 +10:00
Connor McLaughlin
0b0bc32afb
GPU/HW: Use texture samplers rather than fetching for batches
...
Enables wrap-around.
2020-08-04 14:40:00 +10:00
Connor McLaughlin
0fc301d654
GPU/HW: Use wrap texture address modes
2020-08-04 14:40:00 +10:00
Connor McLaughlin
818892cb1b
GPU: Claer interlaced field buffer when enabling
...
Fixes old frames getting briefly displayed.
2020-08-03 03:26:13 +10:00
Connor McLaughlin
96ba9198ef
GPU/HW: Expand lines into triangles before rendering
...
Fewer batches, consistent upscaling behavior.
2020-08-02 17:17:11 +10:00
Connor McLaughlin
0c1b637549
PGXP: Add initial implementation
2020-08-02 00:25:07 +10:00
Connor McLaughlin
b6f871d2b9
JIT optimizations and refactoring ( #675 )
...
* CPU/Recompiler: Use rel32 call where possible for no-args
* JitCodeBuffer: Support using preallocated buffer
* CPU/Recompiler/AArch64: Use bl instead of blr for short branches
* CPU/CodeCache: Allocate recompiler buffer in program space
This means we don't need 64-bit moves for every call out of the
recompiler.
* GTE: Don't store as u16 and load as u32
* CPU/Recompiler: Add methods to emit global load/stores
* GTE: Convert class to namespace
* CPU/Recompiler: Call GTE functions directly
* Settings: Turn into a global variable
* GPU: Replace local pointers with global
* InterruptController: Turn into a global pointer
* System: Replace local pointers with global
* Timers: Turn into a global instance
* DMA: Turn into a global instance
* SPU: Turn into a global instance
* CDROM: Turn into a global instance
* MDEC: Turn into a global instance
* Pad: Turn into a global instance
* SIO: Turn into a global instance
* CDROM: Move audio FIFO to the heap
* CPU/Recompiler: Drop ASMFunctions
No longer needed since we have code in the same 4GB window.
* CPUCodeCache: Turn class into namespace
* Bus: Local pointer -> global pointers
* CPU: Turn class into namespace
* Bus: Turn into namespace
* GTE: Store registers in CPU state struct
Allows relative addressing on ARM.
* CPU/Recompiler: Align code storage to page size
* CPU/Recompiler: Fix relative branches on A64
* HostInterface: Local references to global
* System: Turn into a namespace, move events out
* Add guard pages
* Android: Fix build
2020-07-31 17:09:18 +10:00
Connor McLaughlin
caf9943418
GPU/Vulkan: Possible workaround for Adreno GS shader compiler bug
2020-07-25 15:17:29 +10:00
Connor McLaughlin
d1a2ebd8f3
GPU/HW: Eliminate CPU round trip on oversized VRAM writes
2020-07-11 20:35:33 +10:00
Connor McLaughlin
f396a2c373
Renderers: Make shader cache path a prefix instead of directory
2020-07-04 22:14:07 +10:00
Connor McLaughlin
0b261e836b
GPU/Vulkan: Fix shader VRAM copies
...
Fixes battle transitions in Final Fantasy IX.
2020-06-27 03:00:03 +10:00
Connor McLaughlin
08ef8c1e8d
GPU/HW: Support SSBOs instead of texture buffers for VRAM writes
2020-06-24 01:39:53 +10:00
Connor McLaughlin
a08c398d4b
GPU/HW: Provide depth in vertex rather than computing
...
Fixes mask bit effects in Vulkan (e.g. Silent Hill).
Significantly reduces the number of mask bit refreshes in OpenGL/Vulkan.
2020-06-20 20:21:33 +10:00
Connor McLaughlin
49d11988bf
Core: Add Vulkan GPU renderer
2020-06-19 00:18:17 +10:00
Connor McLaughlin
c8e1881ea9
GPU/HW: Clear dirty rectangle when updating shadow texture
...
Fixes high GPU usage in Robbit mon Dieu in D3D11, should improve overall
performance slightly when VRAM copies are heavily used.
2020-06-02 21:45:38 +10:00