Commit Graph
82 Commits
Author SHA1 Message Date
Henrik Rydgård 390bf3e912 Fix Burnout Dominator lens flare on OpenGL ES
Not the prettiest solution, but works: Use R8_UNORM as a fallback
if R16_UNORM is not available.
2022-11-29 13:05:18 +01:00
Henrik Rydgård 973eec5b42 Another tweak to the OpenGL adreno bug detection.
See #16015
2022-11-27 20:02:06 +01:00
Henrik RydgårdandGitHub d97035fffc Merge pull request #16434 from unknownbrackets/stencil-opt
Vulkan: Use stencil export when available
2022-11-25 10:06:41 +01:00
Unknown W. Brackets b33662550f Vulkan: Use stencil export when available.
This prevents multiple passes to upload stencil buffers.
2022-11-24 18:48:46 -08:00
Henrik Rydgård 55b1dc6ef4 Warning fixes 2022-11-24 12:14:52 +01:00
Henrik Rydgård 70d1d8fa07 Replace the "GetCurrentStepId"-based state invalidation with callbacks 2022-11-24 10:52:42 +01:00
Henrik Rydgård 39f2ddd128 Add compat flag / bug check for games on old Adreno/GL affected by #16015
See #16015

Partly derived from https://github.com/hrydgard/ppsspp/compare/master...unknownbrackets:ppsspp:adreno-deadlock

But this one surgically activates it only for the known affected games, to avoid any additional
performance regressions in the release.

Entirely untested.
2022-11-24 10:05:35 +01:00
Henrik Rydgård f6fcc9e9a7 Add a way to view the "GPU_USE_" flags at runtime. Useful for sanity checking on-device. 2022-11-23 16:17:41 +01:00
Henrik Rydgård dd0409d68c OpenGL ES: Crash as early as possible if things are bad
There's a huge variety of crash report in the Play Console of various
opengl failures. Try to concentrate them to early points in
initialization
2022-11-08 10:43:38 +01:00
Henrik Rydgård 91259aaad7 Always use array textures for framebuffers in Vulkan for simplicity. 2022-10-27 11:05:58 +02:00
Henrik Rydgård 0de12f5ca9 Some refactoring of framebuffer views, layer issues, more work. 2022-10-27 11:05:58 +02:00
Henrik Rydgård fb250c4b29 More multiview work 2022-10-27 11:05:58 +02:00
Henrik Rydgård 7a620962aa thin3d: Replace hint at future MRT support with basic multi layer support 2022-10-27 11:05:58 +02:00
Henrik Rydgård 90d395a10d Remove "attachment" parameter from BindFramebufferAsTexture everywhere.
Not actually useful since our framebuffer objects don't support multiple
color images, and probably won't ever need to.
2022-10-20 10:15:19 +02:00
Unknown W. Brackets 179c1e4a3b GLES: Enable EXT_depth_clamp where supported.
Seems like Freedreno may support this.
2022-10-10 00:54:29 -07:00
Herman SemenovandGitHub 29b87e0c0b Merge branch 'master' into master 2022-10-03 07:49:13 +00:00
Unknown W. Brackets 59a489f883 Draw: Add COLOR1 semantic. 2022-10-01 12:14:46 -07:00
lainon b304551747 Code readability, vec reserve() and remove excess c_str() 2022-09-30 12:31:32 +03:00
Henrik Rydgård aa19712fc3 Unify depth texture and framebuffer fetch checks 2022-09-20 10:47:49 +02:00
Henrik Rydgård 1ae7c0132c Start unifying setting of the GPU feature flags, now that thin3d has feature detection. 2022-09-20 10:07:01 +02:00
Unknown W. Brackets c08c873462 GLES: Support more clip distances.
Will be used later, for now just the enable/disable logic.
2022-09-18 13:16:59 -07:00
Henrik Rydgård a208afb7b8 OpenGL and D3D11 fixes 2022-09-14 23:35:15 +02:00
Henrik Rydgård f745e94899 Allow binding "native" texture objects to thin3d 2022-09-14 22:18:35 +02:00
Unknown W. Brackets 56e30495aa Common: Fix some type compare warnings on 32-bit. 2022-09-12 22:14:48 -07:00
Henrik Rydgård 347f7c4e5a Vulkan: Improve tagging of pipelines for debugging purposes 2022-09-08 00:47:22 +02:00
Henrik Rydgård d6b953bddd Fix GLES check 2022-09-04 00:10:56 +02:00
Henrik Rydgård 5f1ffeae70 Correct LogicOp API support detection 2022-09-04 00:08:40 +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 8b3ef19450 Fix wrong width/height values being stored in thin3d textures 2022-08-24 10:23:37 +02:00
Henrik Rydgård 79ee532609 Fix feature checks 2022-08-09 20:05:44 +02:00
Henrik Rydgård 1dabb54df5 Improve the NPOT check 2022-08-07 11:50:23 +02:00
Henrik Rydgård 4ff8f85110 Forgot these... 2022-08-07 11:48:59 +02:00
Henrik Rydgård 6f1f482432 Make GLQueueRunner/RenderManager aware of device caps, use it to check for NPOT and some other stuff 2022-08-07 11:15:23 +02:00
Henrik Rydgård 81c36578ca Feature detection fixes 2022-08-06 18:27:03 +02:00
Henrik Rydgård da65af832a D3D11 prep 2022-08-06 18:27:03 +02:00
Henrik Rydgård 4e89174b85 OpenGL: Fix shader depal too. 2022-08-06 18:27:03 +02:00
Henrik Rydgård 8aebf0dca4 Port the OpenGL depal path to thin3d 2022-08-06 18:27:02 +02:00
Henrik Rydgård 3e1ccf1311 Need a separate cap bit for stencil blits to prevent misuse on D3D9 2022-08-03 13:40:21 +02:00
Henrik Rydgård 9bead443c3 Unify stencil buffer upload using Draw. Only OpenGL tested yet (shaders need adaptation). 2022-08-03 13:31:13 +02:00
Henrik Rydgård d4d92e39ff Implement DrawUP for D3D11
This is so we can do simple drawing without buffer management through
thin3d on all backends.
2022-08-03 13:28:54 +02:00
Henrik Rydgård 19931c003f Clean up blit/copy feature detection. Don't need fast GPU flags for these. 2022-08-02 09:53:46 +02:00
Henrik Rydgård 46d6b43618 Support 3D textures in OpenGL ES, add feature check 2022-07-31 10:43:48 +02:00
Henrik Rydgård 129f3fe997 Testfix, cleanup 2022-07-31 10:43:48 +02:00
Henrik Rydgård fecf9127a0 Implement 3D texturing in the OpenGL backend too. Assorted fixes. 2022-07-31 10:43:48 +02:00
Henrik Rydgård e43b5e2081 thin3d: Make writeMask and compareMask dynamic in all backends. D3D11 needs emulation. 2022-07-30 10:47:18 +02:00
Henrik Rydgård 4a18629e63 thin3d: Remove dual sided stencil, not supported by all backends anyway 2022-07-30 10:47:18 +02:00
Henrik Rydgård 122a0fa1f6 Oops, revert debugging commit 2022-06-19 18:10:27 +02:00
Henrik Rydgård 1d17b01c16 Workaround for strange driver hang on Raspberry Pi 3.
Strangely, this does not fix the text rendering in the UI, but might
still be enough for the libretro use case in #15469.

See #15469
2022-06-19 16:56:19 +02:00
Unknown W. Brackets 275baccc5b GLES: Support GL_APPLE_clip_distance too.
Seems modern Apple mobile chips only support clip.
2021-10-12 20:34:44 -07:00