Henrik Rydgård
f77975d79b
Address additional comments.
2018-10-06 21:36:47 +02: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
AreaScout
95556e8d03
Add: some helpers to compile on ODROID-XU4/XU3
2018-09-17 20:01:12 +00:00
Unknown W. Brackets
3f48e446b6
GPU: Fix texture handling on framebuf detach.
...
We were never creating/recreating the texture, so we ended up with null.
Caused all sorts of problems.
2018-08-25 09:57:37 -07:00
Henrik Rydgård
42f4d7b40f
OpenGL: Fix bug where we could end up calling glUniformMatrix without a bound program. Found by GL debug callback on NV.
...
This adds a bit of extra checking that's only enabled in _DEBUG builds.
2018-07-28 11:09:01 +02:00
Unknown W. Brackets
81f74e4287
Vulkan: Assert on some creates failing.
...
Before was only checking in debug builds.
2018-06-24 07:35:19 -07:00
Unknown W. Brackets
5028486630
thin3d: Cleanup some unused/uninitialized warnings.
2018-06-24 07:34:07 -07:00
Henrik Rydgård
413a204138
Vulkan: Semi-gross hack that massively improves the perf of MGS2:Acid.
2018-04-13 17:32:56 +02:00
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
76138fee6d
Move pushbuffer deletion to the render manager.
2018-04-05 17:47:08 +02:00
Henrik Rydgård
8d6bbc54a9
Minor refactoring moving creation/deletion of GLPushBuffer to GLRenderManager
2018-04-05 17:31:12 +02:00
Henrik Rydgård
ba5208efaa
GL: Fix bug where we could crash if a readback happened at the same time as a buffer expansion.
2018-03-14 00:06:38 +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
021ade5065
GLES: Fix force alignment on buffer map.
2018-03-04 13:26:52 -08:00
Henrik Rydgård
38bf10baaa
GL: Use AllocateAlignedMemory to make sure localMemory is always aligned. Fixes #10666
...
Seems the code that tries to align is faulty in some cases but this avoids the issue at least.
2018-03-04 22:22:47 +01:00
Unknown W. Brackets
1b8e3edb86
GLES: Buffer handling cleanup.
...
Trying to fix the mystery issues on some devices.
2018-03-04 10:00:45 -08:00
Unknown W. Brackets
beeb9cc3a4
GLES: Disable buffer mapping for non-NVIDIA.
...
Need more stats on other vendors. I think it can help if we use it
properly.
2018-02-25 12:51:52 -08:00
Henrik Rydgård
1b9c2f26f9
Whitelist mapbuffer usage to NVIDIA only (should maybe add Qualcomm too), it's murder on Mali
2018-02-12 11:46:19 +01:00
Unknown W. Brackets
be0ab58365
GLES: iOS buildfix.
2018-02-11 14:38:36 -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
7179e408da
GLES: Free localMemory later.
...
It was still in use sometimes as of MapDevice(), so this is safer.
2018-02-11 12:35:33 -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
fcc2b59c57
GLES: Wait for queue idle properly.
...
Need to wait for anything ready for run. Not everything will have been
submitted.
2018-02-11 11:30:38 -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
020eb9d86c
Fix further memory leaks
2018-02-04 13:42:04 +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
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
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
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
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
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
af8e825578
Fix terrible drawing glitches when we do sync readbacks.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
542f9f9ef1
Assorted cleanup
2018-01-27 15:10:17 +01:00