Commit Graph
214 Commits
Author SHA1 Message Date
Henrik Rydgård f7df69f50c Change a Crash() to an _assert_msg_ 2023-01-01 17:23:24 +01:00
Henrik Rydgård d83f84fdfd DrawContext destructor: Need to call DestroyPresets earlier. 2022-12-29 17:32:49 +01:00
Henrik Rydgård 10c0b3f2ae Comment improvements 2022-12-29 00:39:59 +01:00
Henrik Rydgård 463d703feb More assorted cleanup 2022-12-29 00:39:59 +01:00
Unknown W. Brackets 49f6c461ad Reporting: Fix some header includes.
Particularly in Common, avoid including Core/Reporting.h.
2022-12-27 14:58:20 -08:00
Unknown W. Brackets f6c26ecac0 Headless: Prevent crash on errors in graphics init. 2022-12-24 17:43:32 +00:00
Henrik Rydgård e209227be1 Delete dead code path (initialize EGL from C++ on Android) 2022-12-20 23:17:51 +01:00
Henrik Rydgård 6922ee7e52 Add some asserts in the hope of gathering some more info (and consolidating some crashes). 2022-12-18 21:58:20 +01:00
Henrik Rydgård 675c282286 Hides the D3D9 option on Intel Xe graphics.
For whatever reason, it really doesn't work for me, while all three other
backends work perfectly. So let's just hide it.

You can still enable it through the ini file for debugging purposes.
2022-12-11 20:55:09 +01:00
Unknown W. Brackets a7b7bf7826 Global: Set many read-only params as const.
This makes what they do and which args to use clearer, if nothing else.
2022-12-10 21:13:36 -08:00
Unknown W. Brackets f44852bb18 Global: Cleanup virtual/override specifiers.
Also missing virtual destructors, hidden non-overrides, etc.
2022-12-10 21:13:36 -08:00
Henrik Rydgård b7a3cf56cc OpenGL: Fix lifetime issue with uniform/sampler "locs" for thin3d pipelines 2022-12-09 20:52:19 +01:00
Henrik Rydgård 0ad6218dc4 Fix "usePrevFrame" shaders for OpenGL 2022-12-09 17:28:58 +01:00
Henrik Rydgård 4dfce4f6bc Basically working MSAA on desktop GPUs! Some glitches remain. 2022-12-01 22:49:00 +01:00
Henrik Rydgård 6daecb4e2b Add check for tiling GPUs. We'll use this to inform on what MSAA modes to support. 2022-12-01 22:48:59 +01:00
Henrik Rydgård 331d024a8c Add a flags parameter to InvalidateCachedState and rename it Invalidate.
Also rename the old InvalidationFlags enum to InvalidateCallbackFlags.
2022-12-01 19:15:38 +01:00
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 b4507cd5cc Make a lot more code VR build for all platforms 2022-11-06 14:36:51 +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
Henrik Rydgård aa51bfd1ef Use GPU "use" flags to replace IsVRBuild in the renderer. It remains elsewhere. 2022-10-17 19:57:11 +02:00
Lubos be2613d495 OpenXR - Move VR passes count calculation 2022-10-17 19:07:27 +02:00
Henrik RydgårdandGitHub eb18a87eee Merge pull request #16186 from lvonasek/feature_openxr_vulkan
OpenXR - Initial work to support multiple render APIs
2022-10-17 14:47:47 +02:00
Lubos ade606bc3c OpenXR - Hookup VR API into Vulkan 2022-10-12 16:21:54 +02:00
Unknown W. Brackets fc68cd9457 GLES: Add debug readback of stencil data.
This allows the existing gpu.buffer.renderStencil to snapshot the state.
2022-10-10 17:09:14 -07:00
Unknown W. Brackets b991a84b91 GLES: Allow stencil texturing if supported. 2022-10-10 16:43:19 -07: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
Henrik RydgårdandGitHub 10fedf19bd Merge pull request #16182 from unknownbrackets/gles-indexed
GLES: Use GL_LUMINANCE on GLES for indexed tex
2022-10-09 10:19:26 +02:00
Unknown W. Brackets ce79649c02 GLES: Use GL_LUMINANCE on GLES for indexed tex.
See #16176, used for rendered CLUTs.
2022-10-08 17:32:11 -07:00
Lubos bf14ca84d3 OpenXR - Revision of VR rendering 2022-10-08 14:38:49 +02: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 3cdf72b68b Better readability and optimization insertion into container by replacing 'insert' -> 'emplace', 'push_back' -> 'emplace_back' 2022-09-30 12:35:28 +03:00
lainon b304551747 Code readability, vec reserve() and remove excess c_str() 2022-09-30 12:31:32 +03:00
Unknown W. Brackets 38818f9f6e GLES: Fix colortest/logicop uint/int conversion.
Shown well in #16119.
2022-09-27 19:24:54 -07:00
Lubos 5b334a7945 OpenXR - PreprocessStep function implemented 2022-09-24 16:32:55 +02:00
Lubos c4dbd6d045 Merge branch 'master' into compat_openxr_gta 2022-09-20 21:46:33 +02:00
Unknown W. BracketsandGitHub fd232a0e3c Merge pull request #16060 from hrydgard/vulkan-framedata-refactor
Vulkan FrameData refactor
2022-09-20 08:39:38 -07:00
Henrik Rydgård b190c33cc7 Rewrite some present logic for slightly more clarity. Fixes bad logic and a minor race condition. 2022-09-20 17:05:53 +02:00