Unknown W. Brackets
32eb483932
GLES: Defrag using deleter off render thread.
...
Moving it to the render thread was a bit more complex because of
localMemory. Fixes #10859 .
2018-04-08 19:22:46 -07:00
Henrik Rydgård
ca0fb77080
Assorted cleanups. Don't assert on no clear mask.
2018-04-06 23:29:44 +02:00
Henrik Rydgård
b06df3536e
Auto unregister push buffer on deletion.
2018-04-05 17:53:03 +02:00
Henrik Rydgård
c7eb259c0c
Auto register new push buffers on creation
2018-04-05 17:50:37 +02:00
Henrik Rydgård
76138fee6d
Move pushbuffer deletion to the render manager.
2018-04-05 17:47:08 +02:00
Henrik Rydgård
feb3870f7d
Also take control over Begin/End
2018-04-05 17:34:32 +02:00
Henrik Rydgård
8d6bbc54a9
Minor refactoring moving creation/deletion of GLPushBuffer to GLRenderManager
2018-04-05 17:31:12 +02:00
Unknown W. Brackets
c6ef547176
GLES: Show post-shader compile errors to user.
2018-04-01 19:47:19 -07:00
Henrik Rydgård
6858c77612
Don't allow wrapping on framebuffer textures. Fixes GTA on old NV Shield
2018-03-17 01:54:11 +01:00
Henrik Rydgård
2a438d6e03
Fix VSync on Windows. Should fix #10711
2018-03-12 20:07:31 +01:00
Unknown W. Brackets
7c983a6842
GLES: Support more buffer mapping strategies.
2018-03-04 14:48:06 -08:00
Unknown W. Brackets
5f1cd19687
GLES: Android buildfix.
2018-02-11 13:17:08 -08:00
Unknown W. Brackets
20b532fc71
GLES: Use buffer storage and explicit flush.
...
This is just as fast as using glMapBufferRange on desktop.
2018-02-11 13:14:28 -08:00
Unknown W. Brackets
edcd2f966a
GLES: Use buffer range mapping where appropriate.
2018-02-11 12:35:33 -08:00
Unknown W. Brackets
9eb51a6a36
GLES: Use mapped device memory when possible.
2018-02-11 12:35:32 -08: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
Unknown W. Brackets
0e2a586c1b
Global: Fix some type comparison/shadow warnings.
2018-02-11 07:03:23 -08:00
Henrik Rydgård
481134bfe9
Another go at the deleter problem. Still not feeling 100% good about how this works.. but it does seem to work fine.
2018-02-08 00:41:17 +01:00
Henrik Rydgård
8ee426ff74
Get rid of an unused codepath (gl rendering is now always threaded)
2018-02-08 00:23:48 +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
79d1610148
Move SDLGLGraphicsContext.h to the correct location. Minor cleanup
2018-02-04 13:42:04 +01:00
Henrik Rydgård
99386da01e
Minor cleanups
2018-02-04 13:42:04 +01:00
Henrik Rydgård
583c20991f
Qt: Some cleanup and fixes. Still not working correctly with gl-render-manager.
2018-02-04 13:42:04 +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
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
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. Brackets
acc3e39b67
GLES: Reintroduce out of memory checks.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
e56ae322fd
GLES: Report errors for link failures.
...
Let's not lose reporting on this, it's often an issue...
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
Unknown W. Brackets
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
Henrik Rydgård
903bd07d6e
gl-render-manager: Fix updating sampler modes when texturing from framebuffer
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
Unknown W. Brackets
3eb6d38d75
Vulkan: Fix stencil-only clear for stencil upload.
...
Fixes stencil issues in Star Ocean.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
fdca06d208
More work on shutdown, still hanging though.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
57615344e4
Fix for deletes, add some debugging stuff
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
b7f4f6e157
GL render manager: Improve shader error reporting.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
465939e1c8
Minor fixes, indentation and comments
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
Henrik Rydgård
af8e825578
Fix terrible drawing glitches when we do sync readbacks.
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
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