Commit Graph

58 Commits (6f31e562a0aadc17e9bc42e58944e1ad54605ab0)

Author SHA1 Message Date
Stenzek 6f31e562a0
MetalDevice: Implement timed present 2 years ago
Stenzek 4c31218d2b
GPUDevice: Add API version field
Also tie shader caches to API version and device LUID. That way we don't
have tons of cache files, and they're regenerated if the GPU/driver
changes.
2 years ago
Stenzek c42fb7c16e
GPUDevice: Support ingesting SPIR-V
Will be transpiled to HLSL -> DXBC for DirectX backends.
2 years ago
Stenzek ac5a2a153a
GPUDevice: Remove BeginPresent() skip parameter
It wasn't used - System does its own present skipping.
2 years ago
Stenzek 4b0c1fdbf2
GPUDevice: Add recovery from lost device 2 years ago
Stenzek 1c1b82ed66
GPUDevice: Purge threaded presentation
Worse frame pacing, and GPU thread (when I finish it) will give
significantly faster performance on mobile anyway.
2 years ago
Stenzek ab1c85790c
CPU: Refactor execution mode switching
Fixes single step breaking in branch delay slots with recompiler.
Simplifies initialization.
Removes multiple sources of truth for fastmem.
2 years ago
Stenzek 7f4e5d55db
Misc: Update copyright headers 2 years ago
Stenzek 667d1bf7c8
GPUDevice: Use CompressHelpers
And compress the pipeline cache. Saves a fair bit of disk space.
2 years ago
Stenzek 4f16cb61b4
GPUDevice: Expose swap chain clear colour 2 years ago
Stenzek 5b590d434b
D3D11Device: Fix blend state not applying to MRTs 2 years ago
Stenzek 3a83c4265c
Misc: Fix a bunch of code analysis warnings
Some of which were even actual errors.
2 years ago
Stenzek 1006fa00da
GPUDevice: Add support for Raster Ordered Views 2 years ago
Stenzek ba6b65401d
GPUDevice: Improve pipeline error reporting 2 years ago
Stenzek 3749b812a3
GPUDevice: Add ExecuteAndWaitForGPUIdle() 2 years ago
Stenzek 4b61a3cbf3
Qt: Unrestrict resolution scale up to device limits 2 years ago
Stenzek 9ef7e8c5d0
GPU/HW: Use GSVector instead of Rectangle 2 years ago
Stenzek 6bfd862cb3
GPUDevice: Fix transpiled interface linking with OpenGL 2 years ago
Stenzek ef69c31e9f
GPUDevice: Support transpiling shaders at compile time
And use it for GLSL postprocessing shaders.
2 years ago
Stenzek 0f9a255093
System: Fallback to FIFO on AMD (no mailbox support) 2 years ago
Stenzek 42a5fe0a6e
GPU: Further improve vsync handling 2 years ago
Stenzek 6cad97b404
GPUDevice: Make vsync actually tear-free
Apparently users prefer stutter over tearing...
2 years ago
Stenzek d9cc80c7f9
WindowInfo: Get refresh rate from monitor config
DwmGetCompositionTimingInfo() returns a noisy refresh rate, at least on
Win11 22H2.
2 years ago
Stenzek 03f9708911
GPUDevice: Move SPIR-V compilation to base class 2 years ago
Stenzek ca3cfbaa99
Misc: Pass string_view by value 2 years ago
Stenzek 7344661801
GPUDevice: Split submission and presentation 2 years ago
Stenzek 509a8a074c
GPUDevice: Remove unused file 2 years ago
Stenzek 88270771da
System: Combine VRR and Optimal Frame Pacing
GSync/FreeSync display users should:
 - DISABLE VSync.
 - ENABLE Optimal Frame Pacing.
2 years ago
Stenzek 98241cb6ba
GPUDevice: Swap out glslang for shaderc 3 years ago
Stenzek 72ab669e70
GPUDevice: Add support for feedback loops 3 years ago
Stenzek 1ab7850ed0
GPU: Rewrite deinterlacing and add adaptive/blend modes 3 years ago
Stenzek a1d7d214cf
GPUDevice: Add support for VRR and relaxed vsync 3 years ago
Stenzek f936a36c85
GPUDevice: Add GPUDownloadTexture
Which can also be based in host/client memory.
Use it for screenshots and VRAM downloads.
3 years ago
Stenzek 150ab8f4af
GPU: Add host/hardware stats 3 years ago
Stenzek f66866ed73
GPUDevice: Use Error class for initialization errors 3 years ago
Stenzek 6d07d70946
GPUDevice: Fix erratic texture pool recycling 3 years ago
Stenzek 62d2f12236
Settings: Expose exclusive fullscreen control 3 years ago
Stenzek dc5e4120cd
GPUDevice: Improve texture pooling 3 years ago
Stenzek 79c226efff
SmallString: fmt -> format, format -> sprintf 3 years ago
Stenzek 39913b2a39
GPUDevice: Fix incorrect positioning with PostFX and GL 3 years ago
Stenzek a907e1f550
GPUDevice: Pool textures 3 years ago
Stenzek 3b2c70cda5
GPUDevice: Get rid of framebuffer abstraction 3 years ago
Stenzek b65d2748b4
GPUDevice: Implement MirrorRepeat address mode 3 years ago
Stenzek 2ca503639d
GPU/HW: Avoid extra texture copy in Vulkan/GL 3 years ago
Stenzek e382f2b64a
Settings: Add option to disable DSB/fbfetch 3 years ago
Stenzek ff17444074
GPU/HW: Add framebuffer fetch blending path 3 years ago
Stenzek ce7f6128e9
OpenGLDevice: Cache intermediate state 3 years ago
Stenzek eb080834ad
OpenGLDevice: Actually check max texture buffer size 3 years ago
Stenzek 9517638bcb GPUDevice: Don't recreate device on SW switch in GLES: 3 years ago
Stenzek b678fcd874 GPUDevice: Move debug messages over to fmt 3 years ago