Commit Graph
178 Commits
Author SHA1 Message Date
Unknown W. Brackets cebcfb1bbd GPU: Use old frame when presenting a skip.
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Unknown W. Brackets 3c1e8abcfe GPU: Centralize vsync interval logic.
We already do unthrottle checking here.
2020-02-29 22:27:00 -08:00
Unknown W. Brackets 5009698cc0 Core: Use a shared_ptr for i18n categories.
This does not make them thread safe, but it reduces the chances of a crash
a bit (see #12594.)
2020-02-09 07:35:16 -08:00
Henrik Rydgård 8e7da3fef4 Disable vertex range culling when the depthrange hack is enabled. Temporary workaround for #11576. 2019-02-26 16:07:11 +01:00
Henrik Rydgård 12f295c4a5 GLES: Detect Vivante GPU, disable vertex range culling
Should work-around #11703
2019-01-03 12:43:32 +01:00
Unknown W. Brackets 9a3de5cb1c GPU: Move dual source blending bug check to Draw.
This also allows the ini setting to avoid it on Intel.
2018-12-23 14:11:57 -08:00
Henrik RydgårdandGitHub 22c066515e Merge pull request #11425 from xebra/refactor_spline_bezier
[Refactoring] Improve spline/bezier.
2018-11-04 17:04:29 +01:00
Unknown W. Brackets 40ca49d0e3 GPU: Cancel shader preload on shutdown/lost.
Otherwise, we could've ended up with shaders loading after or during the
lost event, and dense hash map corruption.
2018-10-30 20:32:12 -07:00
Henrik Rydgård fa40bcff8d Disable triangle range culling on D3D9 on Intel. Should fix #11477 2018-10-21 09:36:15 +02:00
Henrik Rydgård 842290b6dd Workaround for bad int behaviour on Adreno / GLES. (no problems in
Vulkan).

See #11480, should help #11479.
2018-10-20 13:22:14 +02:00
xebra 1dfb402871 [spline/bezier]Remove comment. 2018-10-07 23:54:27 +09:00
xebra 89786b943d [spline/bezier]Instanced rendering for B-Spline is very slow when using weak GPU, so disabled it and simplify the shaders.
Add changing the quality of HW tessellation.
2018-10-07 23:54:22 +09:00
Unknown W. Brackets a4c0640f01 GE Debugger: Factor out host calls some.
Moving more of this to cross platform for the web debugger.
2018-09-01 08:32:03 -07:00
Unknown W. Brackets 95f270778e Core: Allow toggle between 2 custom speeds.
In addition to virtual keys for each speed separately.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets e2c217ab29 Core: More consistently use config enums. 2018-06-23 10:59:18 -07:00
zhang wei 3380bbb0c6 save cache before clear 2018-06-04 22:00:29 +08:00
Henrik Rydgård 1c17373039 GLES: Properly restore the pointer to the render manager in more places 2018-05-29 23:07:22 +02:00
Henrik Rydgård 0d6be3a476 GLES: Refresh the draw context in DrawEngineGLES on DeviceRestore. How did we miss this? 2018-05-27 22:25:15 +02:00
Henrik Rydgård 36fd2711d6 Revert "Remove further remains of hardware skinning."
This reverts commit 40db61a680.
2018-04-10 12:22:41 +02:00
Henrik Rydgård 2cd8bd9bc3 Fixes to in-game GPU shutdown/switching. Fixes #10860 2018-04-05 20:26:29 +02:00
Henrik Rydgård 1d6263d5eb More GL shutdown fixes. Partially fixes #10868 2018-04-05 12:28:59 +02:00
Henrik Rydgård 614cabb115 Implement pipeline/shader cache for Vulkan, to avoid shader compile stutters on second and subsequent runs.
The raw pipeline cache got pretty large. Instead, store IDs like GL.

There's still a disabled option to store the pipeline cache objects.
2018-03-16 21:03:03 +01:00
Henrik Rydgård 7a8310ae5e Tiny unification of code. Save the GL shader cache a bit less often. 2018-03-13 13:35:58 +01:00
Henrik Rydgård 40db61a680 Remove further remains of hardware skinning. Fixes #10661 2018-03-05 00:03:47 +01:00
Henrik Rydgård f5dd9c17cd Add comment trying to clarify shutdown of GPU_GLES, restore the wipe, minor tweaks. Should help #10652
This reverts commit 10be0cad96.
2018-02-27 22:04:24 +01:00
Henrik RydgårdandGitHub 4b784e6035 Merge pull request #10653 from hrydgard/submitprim-unify
Unify the SubmitPrim function, and some others, between the HW backends
2018-02-26 16:17:16 +01:00
Henrik Rydgård 10be0cad96 GL: Don't wait-for-idle when shutting down the PSP GPU, it's the wrong place. Should fix #10652 2018-02-26 15:48:45 +01:00
Henrik Rydgård 64ec46e705 Unify FramebufferDirty()/FramebufferReallyDirty() for the hw backends 2018-02-26 11:58:17 +01:00
Henrik Rydgård 78467d6092 Unify FastRunLoop for the hardware backends. 2018-02-26 11:52:16 +01:00
Henrik Rydgård 6a2f45c2e1 Unify UpdateCmdInfo 2018-02-26 11:48:56 +01:00
Henrik Rydgård 8cef1f0f8d GPU: Unify command table (cmdInfo_) 2018-02-26 11:44:02 +01:00
Henrik Rydgård 967018b7f8 Unify Execute_LoadClut 2018-02-26 11:32:02 +01:00
Henrik Rydgård c7f8f4c5ca Unify Execute_Prim 2018-02-26 11:22:27 +01:00
Unknown W. BracketsandHenrik Rydgård 0399088fc7 GLES: Handle glGetString() on GL thread.
We only use a few strings, so should be fine to cache them.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 30a60018a0 GLES: Fix race crash on shutdown.
This happens when there are pointers in step commands that get freed.
2018-01-27 15:10:17 +01:00
Henrik Rydgård ccdb4d186d gl-render-manager: Fix HW tesselation. Remove 1D texture support, likely no benefit. 2018-01-27 15:10:17 +01:00
Henrik Rydgård 51f467a7b3 Kill off the GL state cache 2018-01-27 15:10:17 +01:00
Henrik Rydgård f3282dcfda Delete the gl name cache (might resurrect it on the GLQueueRunner side if needed later). Other cleanup and fixes. 2018-01-27 15:10:17 +01:00
Henrik Rydgård 46e1fbb788 Initial texture work. Bugfix indexed drawing 2018-01-27 15:10:17 +01:00
Henrik Rydgård bd6818198a More GLRenderManager 2018-01-27 15:10:17 +01:00
Henrik Rydgård 376d92fcc9 Start messing with the draw engine... 2018-01-27 15:10:17 +01:00
Henrik Rydgård 9340260802 Finish the shader manager (almost) 2018-01-27 15:10:17 +01:00
Henrik Rydgård 2dda2bfa78 Dual source blend: Remove bad #ifdef that killed dual src code on Android... oops. Re-enable on nVidia Shield TV/Tablet. Fixes #10136 properly. 2017-12-30 00:53:24 +01:00
Unknown W. Brackets 0151c5e649 GPU: Track stats on uploads.
A lot can lead to slowdown, so it's useful when logging frame drops.
2017-12-28 19:27:45 -08:00
Henrik RydgårdandGitHub c948a3df00 Merge pull request #10439 from unknownbrackets/intel-dualsrc
GLES: Allow dual src blend on newer Intel
2017-12-28 13:37:57 +01:00
Unknown W. Brackets f9750dd137 Display: Avoid limiting FPS without a clear.
A bit of a dirty heuristic to avoid the slowdown in #8538.
2017-12-26 19:37:40 -08:00
Unknown W. Brackets 025a806ab4 GPU: Remove FBO auto-download hack.
See #6261.  This should be replaced now with block transfer detection,
which is faster and doesn't cause crashes.

Games that previously required this setting should use block transfer
instead.  If that doesn't work, it's a bug.
2017-12-25 11:17:59 -08:00
Unknown W. Brackets 49b41d1629 GLES: Allow dual src blend on newer Intel.
Fixes #10117.
2017-12-24 09:41:00 -08:00
Unknown W. Brackets 510f9652a0 GLES: Improve HW tess requirements validation.
We also need texelFetch of some kind, seen in reporting.
2017-12-21 18:44:47 -08:00
Henrik Rydgård 5c1dad9909 Remove more obsolete ifdefs 2017-12-19 17:59:00 +01:00