Commit Graph
45601 Commits
Author SHA1 Message Date
Henrik Rydgård fd8419e28a Merge pull request #15897 from hrydgard/many-gl-fixes
Many GL/GLES fixes
2022-08-24 11:47:48 +02:00
Henrik Rydgård d459eac891 Fix checks for depth texture support, GLES syntax errors 2022-08-24 11:26:07 +02:00
Henrik Rydgård bd674c47b6 OpenGL: Fix regular depal (shader depal still worked) that broke recently 2022-08-24 11:01:57 +02:00
Henrik Rydgård ff92d7d4b0 Remove duplicate uniform queries 2022-08-24 10:51:45 +02:00
Henrik Rydgård 8b3ef19450 Fix wrong width/height values being stored in thin3d textures 2022-08-24 10:23:37 +02:00
Henrik Rydgård eb2f12e64a Drive-by texture slot management cleanup 2022-08-24 10:22:58 +02:00
Henrik Rydgård 58de891f57 OSD: Scale large multiline messages to fit better on screen (like shader logging) 2022-08-24 10:20:33 +02:00
Luboš Vonásek c5cb45b1f7 Merge branch 'hrydgard:master' into feature_openxr_6dof 2022-08-24 06:55:31 +02:00
Henrik Rydgård 5d50d02227 Merge pull request #15894 from unknownbrackets/debugger
GE Debugger: Record only one flip if display framebuf not changed, step on vsync
2022-08-24 06:27:31 +02:00
Unknown W. Brackets 7ec62a32b4 GPU: More consistently clear ptrs on DeviceLost().
Rather get a null pointer crash than confusing buggy use-after-free
excitement.
2022-08-23 20:15:30 -07:00
Unknown W. Brackets 47b7305bf5 GPU: Correct Draw2D::DeviceRestore(). 2022-08-23 20:07:53 -07:00
Unknown W. Brackets 27d00199c8 GE Debugger: Fix bad read on step at start of VRAM. 2022-08-23 19:50:19 -07:00
Unknown W. Brackets a901fa4315 GE Debugger: Add separate step based on vsync.
I think there were some games where this would step in the middle of a
frame, but not seeing it commonly now.  So make it the default, but allow
both methods in the menu.

Fixes #15893.
2022-08-23 19:48:34 -07:00
Unknown W. Brackets c581a83896 GPU: Centralize SetDisplayFramebuffer(). 2022-08-23 19:29:06 -07:00
Unknown W. Brackets 86085335ca GE Debugger: Record 1 flip if no display calls.
Before we were waiting 4 flips before ending recording.
2022-08-23 19:20:14 -07:00
Henrik Rydgård fc81b76b98 Vulkan: Very minor chnages after checking Best Practices with new validation layer 2022-08-23 23:55:53 +02:00
Henrik Rydgård 9db9574f0d Merge pull request #15891 from hrydgard/more-draw2d-refactor
Use Draw2D for reinterpret and (partially) for depal
2022-08-23 13:13:20 +02:00
Henrik Rydgård 5084743bbb Use Draw2D for depal shaders (except the actual blit, for now) 2022-08-23 11:21:40 +02:00
Henrik Rydgård 60e129d88e Break out Draw2D in a class 2022-08-23 11:12:23 +02:00
Henrik Rydgård 83b7386f7d Switch reinterpret shaders over to the Draw2D framework. 2022-08-23 11:12:23 +02:00
Henrik Rydgård 65e4e249ec More Draw2D refactoring 2022-08-23 11:12:23 +02:00
Unknown W. Brackets 1921338782 Merge pull request #15890 from hrydgard/minor-framebuffer-stuff
Minor framebuffer stuff (renaming, refactoring)
2022-08-23 00:02:51 -07:00
Henrik Rydgård d1336fe15f Small Draw2D refactor 2022-08-23 08:37:44 +02:00
Henrik Rydgård 5415da10bf Rename VirtualFramebuffer->format to fb_format to line up with fb_address and fb_stride (fundamental parameters) 2022-08-23 08:37:44 +02:00
Henrik Rydgård a0722af107 Rename fmt->fb_format 2022-08-23 08:37:44 +02:00
Henrik Rydgård 8fdd00db8c Merge pull request #15888 from hrydgard/copy-color-on-bind
Copy color from overlapping framebuffers on bind, under certain conditions
2022-08-23 08:37:33 +02:00
Henrik Rydgård 68134b6381 Merge pull request #15889 from unknownbrackets/d3d-proj
Correct D3D viewport offset sign in sw transform
2022-08-23 06:49:10 +02:00
Unknown W. Brackets d1c7520932 D3D9: Correct viewport offset sign. 2022-08-22 21:30:10 -07:00
Unknown W. Brackets 86e754fb4a D3D11: Correct viewport offset sign handling. 2022-08-22 21:29:49 -07:00
Henrik Rydgård 15f51c306a Merge pull request #15710 from hrydgard/test-drive-smooth-depal
Implement smooth depal lookups for Test Drive's strange usage.
2022-08-22 16:08:00 +02:00
Henrik Rydgård 51686f4936 Copy color from overlapping framebuffers on bind, under certain conditions.
Leads to much faster performance in Juiced 2.

This will later be expanded to handle more things in a more elegant way,
like the framebuffer overlap in God of War for the shadows and
color reinterpretation in a generic way.

Fixes #15728
2022-08-22 16:06:55 +02:00
Henrik Rydgård e3943f6d0d Implement smoothed depal for the "old" depal path as well. 2022-08-22 15:34:26 +02:00
Henrik Rydgård 2a6015c1e3 Better checks for smoothed depal 2022-08-22 15:25:28 +02:00
Henrik Rydgård 6558bde0f6 Remove SmoothedDepal compat setting, instead detect the ramp directly. 2022-08-22 15:24:41 +02:00
Henrik Rydgård f5e6754ac0 Special case depal lookups for Test Drive's strange usage.
This implements the hack I suggested in #13355, where instead of first
reducing the color to RGB565 as the real game does, we just take each
channel at full precision and do the lookup according to the mask,
linearly filtering the palette.

This makes the game look a lot nicer and is also a small optimization,
but the hack is very specific so kinda ugly in a way.
2022-08-22 15:19:38 +02:00
Henrik Rydgård 0e780be539 Merge pull request #15886 from hrydgard/refactor-depal
Rename DepalShaderCache to TextureShaderCache
2022-08-22 13:30:55 +02:00
Henrik Rydgård b39b74e602 More renaming. Fix shader view for Vulkan 2022-08-22 12:30:51 +02:00
Henrik Rydgård 82a6c42e17 DepalettizeCommon -> TextureShaderCommon. Simplifications. 2022-08-22 12:21:20 +02:00
Henrik Rydgård 58a6fd3395 Convert TextureShaderApplier to a member function in DepalCache. 2022-08-22 11:45:52 +02:00
Henrik Rydgård 383adcb870 Simplify depal shader apply code a bit. 2022-08-22 11:31:27 +02:00
Henrik Rydgård 3c307c9857 Merge pull request #15884 from unknownbrackets/texreplace-io-async
Replacement: Read files only within time budget
2022-08-22 11:10:16 +02:00
Unknown W. Brackets e473eb9f5e Replacement: Read files only within time budget.
When delayed texture load is enabled.  Intended to reduce IO delays on
Android.
2022-08-21 22:07:05 -07:00
Unknown W. Brackets 73c06bb776 Replacement: Be more consistent about base level. 2022-08-21 22:03:16 -07:00
Henrik Rydgård 39cb2f184c Merge pull request #15881 from unknownbrackets/headless
Headless: Fix comparison for oversized buffers
2022-08-22 05:54:58 +02:00
Henrik Rydgård 0cb29db198 Merge pull request #15883 from unknownbrackets/linux-vulkan
Linux: Consider Vulkan if OpenGL init fails
2022-08-22 05:54:25 +02:00
Henrik Rydgård 64baff080a Merge pull request #15882 from unknownbrackets/mip-clut
GPU: Share CLUTs if no extended CLUT
2022-08-22 05:53:34 +02:00
Unknown W. Brackets c13f57e64f Vulkan: Cleanup minor logging. 2022-08-21 19:40:02 -07:00
Unknown W. Brackets 842bf86b1a Config: Default PSP model to SLIM on all platforms. 2022-08-21 19:05:51 -07:00
Unknown W. Brackets 4924b22b51 Linux: Consider Vulkan if OpenGL init fails. 2022-08-21 19:00:10 -07:00
Unknown W. Brackets 89a499b4d2 GLES: Correct preview of mip levels > 0.
Don't need to force level 0 anymore.  Software can show levels hardware
refuses to load.  This is consistent with other backends.
2022-08-21 16:47:46 -07:00