Commit Graph
1649 Commits
Author SHA1 Message Date
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 8d900bb432 Vulkan: Check driver version for Adreno 5xx bug.
It's now fixed at least as of this version (possibly earlier.)
2020-05-19 22:13:15 -07:00
Unknown W. Brackets 2e05d22eb7 Vulkan: Move Harvest Moon fix to Draw::Bugs.
Also, make it so you can skip using ini settings.
2020-05-19 22:12:30 -07:00
Henrik Rydgård e64fdfa0c3 Fix a case of pointer truncation in Vulkan on 32-bit. Fixes #12932 2020-05-19 20:53:51 +02:00
Henrik Rydgård 69c092dce1 Vulkan crashfix (pNext was uninitialized) 2020-05-19 20:52:47 +02:00
Henrik RydgårdandGitHub f1b9943947 Merge pull request #12930 from unknownbrackets/gpu-stencil
GPU: Avoid unnecessary clear on stencil upload
2020-05-19 09:05:58 +02:00
Unknown W. Brackets cb23c0c01d Vulkan: Create FB compatible pipelines in Draw.
The easiest way is just to create both and support both.  Perhaps we could
optimize out the creation of the framebuffer one.

Fixes #12928.
2020-05-18 22:45:20 -07:00
Unknown W. Brackets 396bf1d1c7 Vulkan: Expand logging of render steps a bit. 2020-05-18 21:38:36 -07:00
Henrik Rydgård 612fdb957e Revert "Experimental commit that effectively reverts the Vulkan part of #12882."
This reverts commit 29d1f97dd5.
2020-05-19 00:44:42 +02:00
Henrik Rydgård 29d1f97dd5 Experimental commit that effectively reverts the Vulkan part of #12882.
For the #12927 investigation.
2020-05-19 00:42:34 +02:00
Henrik Rydgård d37893d1ac Track scissors like we track viewports (bugfix?). 2020-05-18 23:21:03 +02:00
Unknown W. Brackets 7fffe1d885 Vulkan: Verify scissor as well.
Vulkan spec requires both are set - we do set both, so let's catch any
mistakes.
2020-05-17 21:23:32 -07: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 059e2e5e16 Vulkan: Stop merge at clear/touched read only.
Before we would merge on a future render after a clear, which can't be
good.  But we can safely ignore a draw to another FB that reads from a
touched FB.
2020-05-17 15:04:21 -07:00
Unknown W. Brackets 112a58cb1a Vulkan: Make merge pass a bit easier to read. 2020-05-17 14:53:37 -07:00
Unknown W. Brackets caf9d39fec GLES: Fix invalidation of backbuffer.
And of the stencil buffer.
2020-05-17 11:06:39 -07:00
Unknown W. Brackets 47bc11a682 Vulkan: Generalize dependency tracking.
Might as well track on all steps.  We also can know if the dst was fully
written to here.
2020-05-17 11:06:39 -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
Henrik Rydgård 9ed9468d72 Make the IsValidPBP DISC_ID check a bit more lenient. Fixes an issue where some homebrew would no longer show in the list. 2020-05-17 15:12:38 +02:00
Unknown W. Brackets d88099e701 GLES: Specify buffer type just to be safe.
Probably doesn't matter, but maybe some drivers take it as a hint?
2020-05-16 23:48:56 -07:00
Henrik Rydgård 4bf92a66c5 Thin3D: use 16-bit indices. Fixes #12898. 2020-05-15 18:07:07 +02:00
Unknown W. Brackets 8b4821bc05 Draw: Small optimization to callback.
This allows the callback to say "I didn't copy, please copy for me."  This
helps when additional conversions will be applied during the copy, or a
copy can be skipped.

Also, fixed a couple cases of the wrong mip level being used.
2020-05-13 20:30:24 -07:00
Unknown W. Brackets cb0f8cb373 D3D11: Allow pixel shader uniforms in Draw. 2020-05-13 18:10:09 -07:00
Unknown W. Brackets 8fdc557040 D3D9: Attempt PS/VS 3.0 if it doesn't work with 2.
So that postshaders can work.  Downside is, if we write a UI shader that
requires 2.0, we may not notice... but I think the risk is not that high.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets 762b656ea2 GPU: Use a texture directly for MakePixelTexture.
This makes it easier to do things with it.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets f9697c2c32 Vulkan: Allow frag shader UBO reads. 2020-05-13 18:10:09 -07:00
Unknown W. Brackets e309712fed Vulkan: Correct missing offsets in Draw.
Was silently ignoring them.  Caused stretch in postshaders.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets ddd3af2297 Draw: Actually use the index offset parameter.
I'm not sure we need it, but having a param used only on one backend is
confusing.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets b91b7aaa0a Draw: Enable backwards compat on D3D11 shaders.
To match/support postshaders.
2020-05-13 18:07:25 -07:00
Unknown W. Brackets c025eab86e Draw: Add more uniform types.
Only because we might have float a[2]; float b[2];...
2020-05-13 18:07:25 -07:00
Unknown W. Brackets 9b8157f624 Draw: Allow specifying a tag on shaders.
This way they are not always "thin3d" when using Draw.
2020-05-13 18:07:25 -07:00
Unknown W. Brackets a03e368566 GPU: Move cardboard/etc. to PresentationCommon.
Now this works on softgpu as well.

Some hacks for backend differences...
2020-05-13 18:07:25 -07:00
Unknown W. Brackets 61cca61d0c Vulkan: Fix Draw usage of framebuffers. 2020-05-13 18:07:25 -07:00
Henrik RydgårdandGitHub f23dd7635c Merge pull request #12882 from hrydgard/vulkan-fix-renderpass-opt
Vulkan: Don't merge render passes where the second one begins with a clear.
2020-05-11 00:18:59 +02:00
Henrik Rydgård a34c773b13 Vulkan: Don't merge render passes where the second one begins with a clear.
God of War optimization survives this check, thankfully.

Force Unleashed doesn't, but meh, it's not as bad there anyway.
2020-05-10 23:10:57 +02:00
Unknown W. Brackets 03fc86a147 UI: Return to game settings after restart.
This is more convenient.  Also restarts the game if needed.

Added a way to pass args to Android here as well, and fixed displaying an
error if the shortcut file doesn't exist on Android (like if you deleted
it after creating the shortcut.)
2020-05-09 13:53:42 -07:00
Unknown W. Brackets dddaa57392 Windows: Fix GL reinit on backend switch. 2020-05-09 12:20:42 -07:00
Henrik RydgårdandGitHub 15a785cacb Merge pull request #12840 from unknownbrackets/android-osk
Android: Don't cache env in text drawer
2020-04-20 09:12:02 +02:00
Unknown W. Brackets 418e881f14 Android: Don't cache env in text drawer.
For PPGe, the thread is changing on lost, so we can't use the cached env.
2020-04-19 15:40:48 -07:00
Henrik Rydgård e62c669f10 GLES: Disable range culling on old Tegras, they seem to misbehave (see issue #12838).
This is a blind fix - couldn't find my old Shield Portable :(
2020-04-19 18:43:20 +02:00
LunaMoo a0fef4136a Fix SDK requirements of Atlas and Zim tools. 2020-04-05 16:56:08 +02:00
Aaron Kling a7f2415469 libretro: Fix Android builds
Text Drawer functionality is not available in libretro as it
depends on standalone jni calls. InputBox is also standalone only
gui functionality.
2020-04-03 09:59:16 -05:00
Henrik RydgårdandGitHub e8d6a605eb Merge pull request #12748 from orbea/libpng
cmake: Improve building with the system libpng.
2020-04-01 12:57:52 +02:00
Henrik Rydgård 3838a1c94f Support drawing around notches on Android displays. Fixes #12261 2020-03-31 00:47:01 +02:00
iota97 d89a858dcd Rember cheat scroll position 2020-03-26 10:59:08 +01:00
Unknown W. Brackets 3bc59b0ef7 Windows: Fix strange build error. 2020-03-23 08:14:36 -07:00
Unknown W. Brackets 89595e0d8f UI: Translate HAT and left analog the same way.
Before, we were resetting our HAT state for each axis we got, so we'd act
like you pressed the arrow more times for each axis your device has.

A similar thing was possible if you had multiple pads.
2020-03-23 07:58:24 -07:00
orbea c8c7889f0f cmake: Improve building with the system libpng.
This also now requires at least libpng16 instead of libpng17.

v2: Require libpng17 on arm platforms.
v3: Fix the android and windows travis builds.
2020-03-22 18:43:51 -07:00
Unknown W. Brackets b9795057cf Osk: Correct UCS2 conversion.
String end was calculated incorrectly.
2020-03-22 18:34:03 -07:00
Henrik Rydgård 1ad65c7c7a Remove some more uint16_t 2020-03-22 21:28:06 +01:00