Henrik Rydgård
c41f875df4
Remove base/logging.h in a whole lot more places.
2020-08-15 19:09:00 +02:00
Henrik Rydgård
5eb13378c6
Remove base/logging from a lot more files in native
2020-08-15 19:09:00 +02:00
Henrik Rydgård
5117ded378
Remove ELOG/ILOG/WLOG from the Android C++ code (mostly)
2020-08-15 19:08:39 +02:00
Henrik Rydgård
c5e0b799d9
Remove category from _assert_msg_ functions. We don't filter these by category anyway.
...
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
24c844445e
GPU: Don't allow step id to decrease at a sync.
...
This might've caused us to miss necessary dynamic state dirtying in games,
but only in fairly specific cases. But it happens a lot when stepping via
the GE debugger.
2020-05-24 22:39:29 -07:00
Henrik Rydgård
bef078a3bd
GLRenderManager: Removes some redundant dirtying. Preserves blend state (color mask) across clears.
2020-05-24 19:18:04 +02: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
d295feda82
Vulkan: Add asserts to catch no viewport render.
...
Also assert to prevent a sync outside a frame, which goes badly.
The curRenderStep_ reset on same fb made some debugging easier, but should
not actually be hit in any real case.
2020-05-17 21:01:08 -07: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
Unknown W. Brackets
051a84e9bd
GPU: Restart when changing inflight frames setting.
...
We need to keep the push and pull in step, so changing at runtime is
messy.
2020-03-02 19:21:15 -08:00
Unknown W. Brackets
a91e206926
GPU: Add setting to control inflight frame usage.
2020-03-01 06:21:27 -08:00
Unknown W. Brackets
3e51fc5a89
GPU: Avoid some unused var/func warnings.
2019-08-17 12:01:22 -07:00
Henrik Rydgård
c509650bec
OpenGL: Disable the mapped buffer strategy for Adreno (Qualcomm).
...
It's a race during shutdown between the EmuThread writing commands, and
the render thread which just lost the buffer.
2019-02-10 20:13:39 +01:00
Unknown W. Brackets
adeca2c3ba
GLES: Move some vendor bug checks to Draw.
2018-12-23 20:27:22 -08:00
Unknown W. Brackets
57767ba1f8
GLES: Use depth textures where possible.
2018-12-16 17:34:16 -08:00
Henrik Rydgård
f74f6083a7
Merge pull request #11509 from unknownbrackets/desktop-gles
...
GLES: Add disabled code to run GLES on desktop
2018-11-02 11:09:46 +01:00
Unknown W. Brackets
dc54ed6855
GLES: Add disabled code to run GLES on desktop.
...
Helps when testing certain extensions, etc.
2018-10-28 14:29:44 -07:00
Henrik Rydgård
c074d3c61f
Improve sanity checks for framebuffer readbacks
2018-10-28 14:30:39 +01:00
Henrik Rydgard
8883156e45
Yet another try at taking care of the GPD crashes in #11063 .
...
Thanks tiagao for all the testing.
2018-10-22 09:59:49 +02:00
Henrik Rydgård
292d2f44ee
GL: Also skip gl calls in ThreadEnd during shutdown on Android. May help #11063
2018-10-21 09:14:02 +02:00
Henrik Rydgård
aea5f38a15
Fix issue where skipGLCalls_ wasn't respected. May help #11063
2018-10-20 15:59:33 +02:00
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