Unknown W. Brackets
356468fe83
GLES: Use debug groups for render steps.
2020-05-24 20:50:17 -07:00
Unknown W. Brackets
00656a2d8d
GLES: Avoid duplicate state resets.
...
Between render passes, we don't need to re-disable stencil test each time.
Only when it changes. This makes render logs clearer.
2020-05-24 20:50:17 -07:00
Henrik Rydgård
fabe987c8f
Add a name tag for all render steps (GL/Vulkan). Helps with debugging and should be cheap enough (a single pointer per "step").
2020-05-21 11:24:05 +02:00
Unknown W. Brackets
a36239473d
GLES: Add dependency tracking for render passes.
...
Let's try to invalidate when it's possible. We move the invalidate to the
end of the render when detected.
2020-05-17 11:06:39 -07:00
Henrik Rydgård
8c2e318416
OpenGL dataformat cleanup - pass Draw::DataFormat to the GLRenderManager.
...
Avoids triple GLenum all over the place, and also clearly shows that the
mapping is wrong.
2019-10-24 22:41:41 +02:00
xebra
03b9492f08
[spline/bezier]Sharing textures to avoid heavily textures creation/deletion in one frame. At least, it occurs about 1000 and very slow down in Pursuit Force.
2018-10-07 23:54:12 +09:00
xebra
3add123587
thin3d: Add support for texture subimage to GLRender.
2018-10-07 23:54:02 +09:00
Henrik Rydgård
a3a94bdd33
Avoid calling any GL calls during shutdown on Android. Should help #11063
...
The context is already lost and we're really running shutdown when the process is woken
up again. Additionally, orderly shutdown through the button doesn't happen
on the render thread so remove a couple of asserts that are wrong.
2018-10-06 21:31:52 +02:00
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
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
d6e888a39b
Revert "Simpler way to deal with the GL deleter"
...
This reverts commit 3a988400a7
.
2018-02-04 13:09:51 +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ård
3a988400a7
Simpler way to deal with the GL deleter
2018-01-30 22:32:16 +01:00
Henrik Rydgård
bd2c875c9a
Fix readback color conversion
2018-01-28 21:28:16 +01:00
Unknown W. Brackets
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. Brackets
acc3e39b67
GLES: Reintroduce out of memory checks.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
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
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. Brackets
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
Henrik Rydgård
e531a7da43
gl-render-manager: Implement logic ops
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
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
Henrik Rydgård
b7f4f6e157
GL render manager: Improve shader error reporting.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
49c3cb83fe
GL render manager: Simple implementation of synchronous framebuffer readbacks.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
2b12776137
Remove viewport flipping where it's not needed
2018-01-27 15:10:17 +01:00
Henrik Rydgård
958078f603
GL render manager: Merge BindInputLayout into BindVertexBuffer.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
f99fa02ba7
Run the depal stuff, seems a bit broken. Add some state filtering.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
970458a0c2
Scissor fix
2018-01-27 15:10:17 +01:00
Henrik Rydgård
7c17cb6754
Fix showing savestate screenshots (needed mips)
2018-01-27 15:10:17 +01:00
Henrik Rydgård
1241abc887
Make sure we set GL_TEXTURE_MAX_LEVEL somewhere.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
8a1e7347b9
GL render manager: Various fixes and cleanup including a buffered rendering fix, rect primitive fix
2018-01-27 15:10:17 +01:00
Henrik Rydgård
062608ad78
Start moving the framebuffer stuff over to the render manager
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
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
60a966c5ec
PushBuffer added. Thin3d works now on top of GLRenderManager, except framebuffers.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
a3bcd91a31
Fix clears and textures. Things still broken due to memory overwrites.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
b8e4ae08a7
Even more gl-render-manager
2018-01-27 15:10:17 +01:00
Henrik Rydgård
9babdb712c
More gl-render-manager
2018-01-27 15:10:17 +01:00
Henrik Rydgård
dc72a8696f
More work on gl-render-manager
2018-01-27 15:10:17 +01:00
Henrik Rydgård
dd91cb0f8e
Begin implementing GLQueueRunner and GLRenderManager
2018-01-27 15:10:17 +01:00