Commit Graph
5125 Commits
Author SHA1 Message Date
Unknown W. Brackets 0474ff5c23 GLES: Use aligned memory for textures.
We use SSE on them, and they used to be aligned, and must be aligned in
PSP RAM, so keep them aligned.

This only really affects 32-bit, since allocs will typically be aligned on
64-bit anyway.

Fixes #10601.
2018-02-11 08:13:57 -08:00
Unknown W. Brackets 0e2a586c1b Global: Fix some type comparison/shadow warnings. 2018-02-11 07:03:23 -08:00
Henrik Rydgård 3c93eaf164 GL: Fix clearing alpha on stencil uploads. 2018-02-10 17:18:18 +01:00
Henrik Rydgård 625595c6cc For some reason we use DrawActiveTexture in the GL stencil stuff, don't want to disable stencil unconditionally.. 2018-02-08 16:59:03 +01:00
Henrik Rydgård 86cfc411a4 Remove the confusing "DisableState" across the codebase 2018-02-08 16:27:36 +01:00
Henrik Rydgård b9081dd624 GL: Set a plain render state in DrawActiveTexture, without relying on the caller having called DisableState 2018-02-08 16:21:34 +01:00
Henrik Rydgård b9b41f52c5 Add a simple spinner to the game load screen to not look frozen. 2018-02-08 12:03:29 +01:00
Henrik Rydgård ce16547854 GL render manager: Fix bug when setting texture sampler if the wrong GL texture slot is active. Will likely help #10583 2018-02-07 19:49:58 +01:00
Henrik Rydgård b3f4a923ca GLES: Fix minor memory leak 2018-02-07 16:55:03 +01:00
Henrik Rydgård 3e56d8bbdf Noticed that the UWP build has been broken for some time, fix it.
Should probably set up a buildbot if we care about this...
2018-02-05 16:21:39 +01:00
Henrik Rydgård c21b02a22d gl-render-manager: Use properly scaled scissor rectangle, oops. Fixes higher resolutions. 2018-01-31 19:36:32 +01:00
Henrik Rydgård 982a1710ae gl-render-manager: Fix postprocessing shaders. Fixes #10566. Live switching is broken though for some reason. 2018-01-31 17:23:24 +01:00
Henrik Rydgård 5351c9ddb3 gl-render-manager: Support scissored clears, as used by the GL backend. Fixes GT. 2018-01-31 17:07:20 +01:00
Henrik RydgårdandGitHub 22e28e218b Merge pull request #10411 from hrydgard/gl-render-manager
GL render manager - new faster GL multithreading
2018-01-31 12:22:07 +01:00
Henrik Rydgård 56eb2b892f Minor: Make the Vulkan allocator debug visualizer slightly better looking by adding a border. 2018-01-30 19:39:53 +01:00
Henrik Rydgård 3c8e43de2c Include order fix. Darn X11 headers. 2018-01-29 23:49:55 +01:00
Henrik Rydgård c60c8ed68a Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour. 2018-01-29 19:38:10 +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 22f65500f1 GPU: Fix shader blending recopying.
This at least didn't look horrible like GLEs did, but still looked
odd in Lunar.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård e280cbbc3c GLES: Correct shader blending.
Lunar's spell effects were blending completely wrong, and are a good
example of shader blending.  This fixes 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
Unknown W. BracketsandHenrik Rydgård acc3e39b67 GLES: Reintroduce out of memory checks. 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 900e53b6dc GLES: Re-enable texture scaling. 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 2740f74cc4 GLES: Add TODO note for shader blend texture. 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 38161f3c69 GLES: Use linear for high-res FBO tex copies. 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 3380ab8705 GLES: Keep the GLRShader desc around.
This way we can also log it on link errors.  It's not much data.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 48a07474f8 GLES: Avoid using failed depal shaders if possible.
Better to have one totally broken frame than all totally broken frames.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård b566b6cca2 D3D11: Remove potentially misleading rebind func.
This doesn't override the GPUCommon one, it just shares the same name,
which might lead to confusion later.  Better not to use the parent.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 638cbf725b GLES: Skip blend reset after stencil upload.
We dirty the flag anyway.  Avoid extra calls.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård f6260c75c9 GLES: Reset blend state on clear.
Because now that resets blending parameters.
2018-01-27 15:10:17 +01:00
Henrik Rydgård 4c927c1421 Reintroduce check for GE_LOGIC_COPY 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
Unknown W. BracketsandHenrik Rydgård 9945e011c6 GLES: Avoid a shutdown race condition.
Also handle DeviceLost before shutdown better.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård db0989a9d0 Debugger: Fix texture preview in GLES.
Also, fix issues with the first view of a texture in Vulkan / D3D11.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 7316261eac Vulkan: Fix alpha clear on stencil upload.
We need to do it always, because otherwise alpha is not cleared.
2018-01-27 15:10:17 +01:00
Henrik Rydgård e531a7da43 gl-render-manager: Implement logic ops 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård acb692677b GLES: Accept a color mask for clears.
Otherwise, we end up clearing RGB when we try to only clear alpha, which
is fairly common.

Makes Valkyria Chronicles 3 action mode visible again.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 5798c0cc73 Vulkan: Correct zero stencil upload fast path. 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 3eb6d38d75 Vulkan: Fix stencil-only clear for stencil upload.
Fixes stencil issues in Star Ocean.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 22bf124631 GLES: Document stencil clearing bug. 2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 790e3121d2 GLES: Move stencil upload state into render pass.
Without this, stencil upload simply failed silently.  Fixes Star Ocean
stencil issues.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård a135035850 GLES: Ensure stencil upload clear in render pass.
Fixes crashes in Star Ocean.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 4f1b8d80a9 GLES: Bind texture on MakePixelTexture().
This is currently necessary because callers expect it.  Also, move inside
render passes.
2018-01-27 15:10:17 +01:00
Henrik Rydgård af6431986d OpenGL: Now run GL on a secondary thread. Sync issues remain. 2018-01-27 15:10:17 +01:00
Henrik Rydgård d0038775e5 TODOs and indentations 2018-01-27 15:10:17 +01:00
Henrik Rydgård 58854adb80 StencilBufferGLES: Move SetNoBlendAndMask to the right places. 2018-01-27 15:10:17 +01:00
Henrik Rydgård a642c1a990 Fix goof with the stencil buffer drawing 2018-01-27 15:10:17 +01:00
Henrik Rydgård b7f4f6e157 GL render manager: Improve shader error reporting. 2018-01-27 15:10:17 +01:00
Henrik Rydgård 5c7c7ce192 Move GL sampler state tracking into GLRenderManager/QueueRunner. 2018-01-27 15:10:17 +01:00
Henrik Rydgård 43ebbbcdb6 More state dirtying, a comment 2018-01-27 15:10:17 +01:00