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
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
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
Unknown W. Brackets
38161f3c69
GLES: Use linear for high-res FBO tex copies.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
f6260c75c9
GLES: Reset blend state on clear.
...
Because now that resets blending parameters.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
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
b7f4f6e157
GL render manager: Improve shader error reporting.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
542f9f9ef1
Assorted cleanup
2018-01-27 15:10:17 +01:00
Henrik Rydgård
63b9140ebf
Rip out async readbacks from FramebufferManagerGLES. They should be implemented in GLQueueRunner, differently.
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
84ad7a2dba
Fix bug, works on Android now. Don't reuse textures.
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
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
7e3e652963
Fix more gl-render-manager problems
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
b5e5d72a0a
Complete the separation of depth and stencil renderpass flags
2017-12-30 22:52:22 +01: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
0956fa3ff6
GPU: Reduce depth blits when not updated.
...
If the game initially clears the depth in a buffer, but then never uses
that depth again, don't keep blitting depth.
Improves #8538 , by preventing the depth blits in this case.
2017-12-24 11:52:15 -08:00
Unknown W. Brackets
8e2682d93c
GLES: Reduce conversion buf size if possible.
...
No need to use the stride for the temp buf. May avoid issues if the
driver crashes when reading outside the FBO.
2017-12-21 12:02:45 -08:00
Unknown W. Brackets
30871bfcd1
GLES: Avoid buffer on GLES2 for h=1 / CLUT.
2017-12-21 11:52:11 -08:00
Unknown W. Brackets
75aa65908c
GLES: Pack without stride where possible.
...
This may possibly help #10425 in case the behavior is different when going
over width when reading pixels.
2017-12-21 11:41:53 -08:00
Henrik Rydgård
99b34c7b45
Use glslang to translate GLSL 1.x postshaders to GLSL 3.0 or later to appease strict GL Core drivers. Should fix #10362
...
Fixed small bugs, now tested and working on mac.
Add spirv-cross to cmake build
2017-12-08 10:25:42 +01:00
Henrik Rydgård
7d0fc9ce65
Rework GL lost-device to work more like Vulkan. Gets rid of gl_lost manager etc.
2017-12-07 15:05:59 +01:00
Henrik Rydgård
f8b70fe185
Clean up all the FBOs in DestroyAllFBOs. Missing any can have bad consequences after app switching on Android/Vulkan where we recreate stuff.
2017-12-01 12:17:10 +01:00
Henrik Rydgård
6ea669368c
Crash reports from 5% rollout of 1.5: Make some asserts dbg_asserts for now, try to fix an issue with framebuffers when postproc is enabled.
2017-11-29 18:53:52 +01:00
Henrik Rydgård
23f7819329
Unify RebindFramebuffer, mostly.
2017-11-15 20:44:25 +01:00
Henrik Rydgård
525cb40f84
Vulkan: Support wide lines if available on the GPU.
2017-11-12 10:17:49 +01:00
Unknown W. Brackets
78b5565035
GPU: Properly Release() FBOs.
...
In case we end up wanting to use those reference counts, let's use the
right API.
2017-11-05 12:45:02 -08:00
Henrik Rydgård
4a30aedc53
Unify and move around code to cleanup some debug accessors
2017-10-18 13:10:05 +02:00
Henrik Rydgård
898716cc26
Unify DownloadFramebufferForClut
2017-10-18 12:34:01 +02:00
Henrik Rydgård
981c49615c
Unify FlushBeforeCopy. Remove old dummy methods from Vulkan framebuffer manager.
2017-10-18 12:26:02 +02:00
Henrik Rydgård
4e3a9bc3e3
Unify some more framebuffer functions. Leave the GL stuff alone for now due to async.
2017-10-18 11:20:58 +02:00
Henrik Rydgård
f2ea0ce472
Unify (well, almost) GetOutputFramebuffer (D3D11/GL)
2017-10-18 10:54:26 +02:00
Henrik Rydgård
214270d192
Unify GetDepthBuffer/GetStencilBuffer in GL/D3D11
2017-10-18 10:54:26 +02:00
Henrik Rydgård
ad4bc3f9f4
Address review comments.
2017-10-16 14:32:26 +02:00
Henrik Rydgård
9b1ee6fce6
Unify GetFramebuffer in GLES and D3D11.
...
D3D9 is left behind for now, and Vulkan still needs implementation - got a branch with initial work towards that.
2017-10-11 13:39:34 +02:00
Henrik Rydgård
62972cb891
D3D11: Move to CopyFramebufferToSync where easily possible.
2017-10-11 13:34:31 +02:00
Henrik Rydgård
16e68aa7c7
Get rid of BindFramebufferForRead
2017-10-10 14:49:07 +02:00
Henrik Rydgård
5bbe0eb69a
Move GL readback to a Thin3D abstraction
2017-10-10 14:48:58 +02:00