Commit Graph

153 Commits (c6b74684ded6117e96f4af079eb448afbca0c675)

Author SHA1 Message Date
Stenzek c6b74684de
GPU/HW: Split shaders into resolution independent/dependent
Avoids recompiling everything on resolution change.
1 year ago
Stenzek 1ae2dcf192
GPU: Propagate initialization error to caller
Avoids double error popup.
1 year ago
Stenzek 43ed92415d
GPU/HW: Fix assert triggering in debug mode 1 year ago
Stenzek 71bb953253
GPU/HW: Handle redundant texture window updates
Significantly reduces draw count in THPS2.

~150 draw calls per frame to ~70.
1 year ago
Stenzek e06f1f1002
GPU: Add hardware texture cache 1 year ago
Stenzek fd8f97f4d3
GPU/HW: Fix adaptive downsampling
Also rewrite shaders to improve blurring around edges of 3D objects
(e.g. FF7).

As a trade-off, the background does blur slightly less, but (imo)
it looks better overall, since you'll notice the foreground being
blurred much more than the background.
1 year ago
Stenzek 986e207cff
GPU/HW: Make batch shaders independent on resolution
Almost a 6x reduction in *compressed* shader cache size.
1 year ago
Stenzek b5df06a54a
GPU/HW: Rewrite automatic internal resolution selection
Make it aspect ratio aware, as well as updating when/if the game changes
resolution. Also include the padding area in the OSD/status resolution.
1 year ago
Stenzek 7f4e5d55db
Misc: Update copyright headers 1 year ago
Stenzek a2f98541b3
Misc: Slim down some header includes 1 year ago
Stenzek 2a617c505a
GPU/HW: Support using ROV for accurate blending 1 year ago
Stenzek 298f39a0c8
GPU/HW: Fully report shader/pipeline creation failures 1 year ago
Stenzek 59a2309a83
GPU: Use half width vector types where appropriate 1 year ago
Stenzek ed5a99066f
GPU: Cull off-screen sprites/lines
And further optimizations to culling in general.
1 year ago
Stenzek 87f2995f3d
TextureReplacements: Namespace-ify 1 year ago
Stenzek 2bcb85d431
GPU/HW: Push all draws/writes through a common path 1 year ago
Stenzek 9ef7e8c5d0
GPU/HW: Use GSVector instead of Rectangle 1 year ago
Stenzek 044d7a4797
GPU: Eliminate heap allocation on state load 1 year ago
Stenzek 34d5cdec96
GPU/HW: Expose depth buffer to internal postprocessing 1 year ago
Stenzek e39a2d00bf
GPU/HW: Use D32F for PGXP depth
16-bit isn't accurate enough for post processing.
1 year ago
Stenzek 80d1056ddf
GPU: Add virtual call when buffers are swapped 1 year ago
Stenzek 810ce1ce57
GPU: Remove duplicate display params fields
And enable postfx when the DAC is turned off.
1 year ago
Stenzek 34f20798a1
GPU/HW: Add separate 3D/2D (sprite) texture filtering 1 year ago
Stenzek be4abb016f
GPU/HW: Reduce multiple setting source of truth 1 year ago
Stenzek 8455c9c3c6
GPU/HW: Add 'Force Round Upscaled Texture Coordinates' 1 year ago
Stenzek 1582b2ae5d
GPU/HW: Make texture filtering a fragment shadergen parameter 1 year ago
Stenzek c1792108f4
GPU/HW: Eliminate raw texture pipeline permutations 1 year ago
Stenzek 1185f8f6aa
GPU: Implement CLUT cache (SW renderer only)
Fixes copyright screen in Shadow Master.
Fixes title splash in Castrol Honda Superbike Racing.
2 years ago
Stenzek fec210b1e1
GPU: Ensure coordinates are masked/clamped 2 years ago
Stenzek 99b0fb5911
GPU/HW: Move pipelines to end of struct
Helps keep the rest in range for ARM32's 4K displacement.
2 years ago
Stenzek 74f3c8d1aa
GPU/HW: Enable feedback loops for rendering 2 years ago
Stenzek 1ab7850ed0
GPU: Rewrite deinterlacing and add adaptive/blend modes 2 years ago
Stenzek 713d396a7e
GPU/HW: Add quad line detection (Wild Arms 2) 2 years ago
Stenzek 250fb56838
GPU/HW: Switch to indexed draws 2 years ago
Stenzek b34742cdd2
GPU/HW: Slightly reduce struct size 2 years ago
Stenzek f936a36c85
GPUDevice: Add GPUDownloadTexture
Which can also be based in host/client memory.
Use it for screenshots and VRAM downloads.
2 years ago
Stenzek 411213d6a0
GPU: Make VRAM a global object 2 years ago
Stenzek 37e8d1ab86
GPU/HW: Fix VRAM write replacements 2 years ago
Stenzek 150ab8f4af
GPU: Add host/hardware stats 2 years ago
Hugo Locurcio cc94b76037
Add debanding option to improve gradient smoothness with truecolor
This option only has an effect if true color is also enabled.
2 years ago
Stenzek 23d5b20da6
GPU/HW: Split dirty rect into draw/write
Significant performance improvement in Persona 2.
2 years ago
Stenzek f1604db4a3
GPU/HW: Dynamically size downsampling textures 2 years ago
Stenzek 3b2c70cda5
GPUDevice: Get rid of framebuffer abstraction 2 years ago
Stenzek 61783d4a34
GPU/HW: Remove unused variable 2 years ago
Stenzek 8446856ecf
GPU/HW: Trace min/max UVs for hazards 2 years ago
Stenzek ff17444074
GPU/HW: Add framebuffer fetch blending path 2 years ago
Stenzek eb080834ad
OpenGLDevice: Actually check max texture buffer size 2 years ago
Stenzek 18ae01bedb GPU/HW: Tidying up 2 years ago
Stenzek 585cf25ac4 GPU: Add downsample scale option 2 years ago
Stenzek 0076ab5cc4 System: Restore context after pumping messages 2 years ago