Henrik Rydgård
bd3a681fd3
Enough JNI/threading hackery to get it to run on Android! Broken readbacks make it crash alot though.
2018-01-28 17:30:33 +01:00
Henrik Rydgård
7abb8702ce
Work towards threaded GL on Android. Now TextDrawer barfs on wrong JNI context.
2018-01-28 17:29:27 +01:00
Kentucky Compass
e7c9afd7bb
another whitespace fix
2018-01-27 15:10:17 +01:00
Kentucky Compass
c5a09de446
one more whitespace fix
2018-01-27 15:10:17 +01:00
Kentucky Compass
d43283239d
whitespace cleanup
2018-01-27 15:10:17 +01:00
Kentucky Compass
49c5880fcc
disable the iOS thread before shutting down
2018-01-27 15:10:17 +01:00
Kentucky Compass
0943cf3fcc
use GLRenderManager on iOS
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
56a18907dd
SDL: Oops, only start the emu thread for GLES.
...
Probably would've caused issues (at least weird vsync) for Vulkan.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
062566b67c
Core: Set thread names when possible.
...
This doesn't seem to be working for lldb, though.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
95bcda409d
GLES: Fix segfault on GL 2.x.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
59904c316b
SDL: Allow running GL on thread.
...
Tested on a Mac.
2018-01-27 15:10:17 +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
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. Brackets
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. Brackets
7f0b35cd23
GLES: Run ThreadFrame until frame complete.
...
This makes it easier for frontends that need to call this between other
things to handle vsync, or etc.
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
900e53b6dc
GLES: Re-enable texture scaling.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
2740f74cc4
GLES: Add TODO note for shader blend texture.
2018-01-27 15:10:17 +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
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
Unknown W. Brackets
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. Brackets
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. Brackets
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
e5b8d91c9f
ES2 buildfix - glGetTexImage is not available
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
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
9945e011c6
GLES: Avoid a shutdown race condition.
...
Also handle DeviceLost before shutdown better.
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
Unknown W. Brackets
bdf7fdc7a3
GLES: Actually stop the thread on shutdown.
...
Fixes shutdown.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
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
Unknown W. Brackets
b956263a96
GLES: Consistently reset state on new steps.
...
It'd be nice to avoid this dependency, but since every step forgets the
current state, and these functions are called in a lot of places, it's
tricky to manage.
Fixes graphics in Grand Knights History (framebuf copy creating a new
step, resetting blending state.)
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
b3ed3ea0fb
GLES: Fix intra-buffer block transfers.
...
Makes Grand Knights History look a bit better.
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
e98f265d68
GLES: Prevent writing to gutter in readback.
...
This also read outside the conv buffer.
Prevents crash on startup for Brave Story. Now, it just has major
graphical issues.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
5798c0cc73
Vulkan: Correct zero stencil upload fast path.
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
Unknown W. Brackets
22bf124631
GLES: Document stencil clearing bug.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
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. Brackets
a135035850
GLES: Ensure stencil upload clear in render pass.
...
Fixes crashes in Star Ocean.
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
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
e5d571c25a
gl-render-manager: Now threaded mode seems to work fine (and fast!). Shutdown doesn't, though, and there are stability issues.
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
e4752a887f
Fix use-after-free in shader error reporting
2018-01-27 15:10:17 +01:00