Henrik Rydgård
b5e7220ed1
Switch to a fence instead for readbacks. Some sources suggest this is better than idling a queue or device.
...
Like https://stackoverflow.com/questions/39537176/in-what-situations-is-vkfence-better-than-vkqueuewaitidle-for-vkqueuesubmit .
Additionally, this is easier to refactor and loosen up if we can in the
future.
2020-07-14 09:06:07 +02:00
Henrik Rydgård
e66f034fb3
Readback: Downgrade from vkWaitDeviceIdle to vkWaitQueueIdle. Probably effectively pretty much the same.
2020-07-14 09:06:07 +02:00
Unknown W. Brackets
9ebb402e4f
Vulkan: Buildfix.
2020-07-13 18:19:36 -07:00
Henrik Rydgård
131a1eedfb
Vulkan: Make sure textures/samplers are unbound at the end of PresentationCommon::CopyToOutput.
...
Validation caught an issue where old stuff lingered in sampler 1 and texture 1.
Bug probably introduced in #12921 , but could also be others.
2020-07-13 23:32:37 +02:00
Henrik Rydgård
bb6219e402
Merge pull request #12921 from unknownbrackets/postshader
...
Use less FBOs for chained post-processing shaders
2020-07-13 18:52:53 +02:00
Henrik Rydgård
e8370b94c0
Remove irrelevant comment
2020-07-13 18:14:12 +02:00
Henrik Rydgård
dc6e7a7938
Move the Vulkan swapchain out-of-date checking to the vkQueuePresentKHR call.
2020-07-13 18:14:12 +02:00
Unknown W. Brackets
dbbcaa9eca
GLES: Invalidate framebuffers bound DONT_CARE.
...
Let's try to invalidate when it's possible. We move the invalidate to the
end of the render when detected.
2020-07-13 08:00:24 -07:00
Henrik Rydgård
b58ca8af12
Merge pull request #12945 from unknownbrackets/io-timing
...
Make file open timing a bit more accurate
2020-07-13 13:37:53 +02:00
twinaphex
f958ed5817
Add custom GLEW - interfaces with libretro get_proc_address -
...
we need this for compatibility with DRM/KMS and Wayland contexts -
otherwise we're limited to GLX context
2020-07-12 23:51:57 +02:00
Henrik Rydgård
406c06ccaf
Merge pull request #12972 from unknownbrackets/gl-step-debug
...
Label steps using GL debug groups
2020-07-12 23:27:09 +02:00
Henrik Rydgård
7e5527285d
Screen: Unlock the inputLock_ mutex slightly earlier in processFinishDialog
...
It's really just there to protect the stack.
2020-07-05 11:56:04 +02:00
Unknown W. Brackets
4d47715e41
http: Check cancel flag more often.
...
Would be better to use non-blocking sockets, but this code is working,
so not planning to rewrite it right now.
2020-07-04 21:18:41 -07:00
Henrik Rydgård
bd8083fb26
Downloader: Join threads in CancelAll
2020-06-28 18:34:00 +02:00
Henrik Rydgård
1a8084cdbc
Different handling of Download lifetimes. Might help an issue from #13057 (1.10 crash mysteries)
2020-06-28 13:26:12 +02:00
Jan Beich
2c7290e98b
cmake: don't install bundled glslang
...
lib/libglslang.a
lib/cmake/glslangTargets.cmake
lib/cmake/glslangTargets-release.cmake
include/glslang/Public/ShaderLang.h
include/glslang/Include/arrays.h
[...]
2020-06-27 21:14:58 +00:00
Henrik Rydgård
4bcd8df079
Logging improvements and warning fixes.
...
(Had a super odd crash that I can't repro anymore in PPGe init...)
2020-06-22 22:46:03 +02:00
Henrik Rydgård
cd1d73436d
Vulkan: Recreate the swapchain if we get too many "out of date" frames.
...
Should help an issue on my Linux laptop with Intel GPU.
2020-06-22 00:45:05 +02:00
iota97
804b673d8e
Vulkan: Correct secondary texture binding in Draw.
2020-06-12 12:40:53 -07:00
Unknown W. Brackets
201d2782b4
Draw: Allow 2 textures bound in Vulkan.
...
Not working properly though...
2020-06-12 12:35:37 -07:00
Unknown W. Brackets
21ac3ca7a4
Draw: Fix textures and samplers at an offset.
2020-06-12 12:35:37 -07:00
Unknown W. Brackets
64435e56b1
Draw: Use uniform locs for GLES, add samplers.
...
So that we can initialize and bind samplers.
2020-06-12 12:35:36 -07:00
Henrik Rydgård
737688a22a
Annotate calls to RebindFramebuffer with their cause.
2020-06-02 09:51:38 +02:00
Henrik Rydgård
d141e0cf84
Merge pull request #12989 from hrydgard/display-layout-inset-fixes
...
Display layout editor inset fix/workaround
2020-06-02 00:27:45 +02:00
Henrik Rydgård
34a2713c3f
Have DisplayLayoutScreen implemented insets manually. Gave up refactoring it.
2020-05-31 23:23:13 +02:00
Henrik Rydgård
8e7d2109fe
VulkanQueueRunner: Fix some uninitialized struct members (not sure if it has any effect)
2020-05-31 19:35:19 +02:00
Henrik Rydgård
774bea4f33
Merge pull request #12977 from unknownbrackets/travis
...
Make UWP build again and build on Travis
2020-05-26 23:05:03 +02:00
Unknown W. Brackets
40a0525aea
Vulkan: Ensure depth/stencil load match on Mali.
2020-05-25 12:14:03 -07:00
Unknown W. Brackets
c90c29df32
Vulkan: Trivially kill more empty steps.
...
Just in case we have a DONT_CARE step.
2020-05-25 12:04:18 -07:00
Unknown W. Brackets
f232352457
UWP: Include TextDrawer in main MSVC project.
2020-05-25 09:44:05 -07:00
Unknown W. Brackets
c46015e237
UWP: Fix TextDrawer with latest changes.
2020-05-25 09:44:05 -07: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
Unknown W. Brackets
c8f8d55118
Vulkan: Correct viewport flag reset on rebind.
...
Can't break since we're checking two separate flags.
2020-05-24 21:36:23 -07:00
Unknown W. Brackets
356468fe83
GLES: Use debug groups for render steps.
2020-05-24 20:50:17 -07:00
Unknown W. Brackets
00656a2d8d
GLES: Avoid duplicate state resets.
...
Between render passes, we don't need to re-disable stencil test each time.
Only when it changes. This makes render logs clearer.
2020-05-24 20:50:17 -07:00
Unknown W. Brackets
8fa84fd717
Merge pull request #12968 from hrydgard/dirty-from-drawengine
...
Dirty state from each DrawEngine
2020-05-24 15:35:05 -04:00
Henrik Rydgård
370678c498
Do a similar thing for D3D (let the backend handle the dirtying).
2020-05-24 20:57:59 +02:00
Henrik Rydgård
bebf649705
OpenGL/Vulkan: Rework the contract around dynamic state. Removes some ugly dirtying from the GL render manager.
2020-05-24 20:27:58 +02:00
Unknown W. Brackets
544576e6c2
UI: Lock around removal from dispatch queue.
2020-05-24 10:57:32 -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
23bdc40715
Merge pull request #12942 from unknownbrackets/vulkan-debug
...
When debugging, expose pass tags to RenderDoc
2020-05-22 09:28:09 +02:00
Unknown W. Brackets
49abe9ed6c
Io: Open sce_lbn references and whole ISO faster.
2020-05-21 18:58:24 -07:00
Unknown W. Brackets
2dbb7a598d
Vulkan: Label render passes in RenderDoc/etc.
2020-05-21 08:55:36 -07:00
Henrik Rydgård
4aec10d04f
Correct an issue where reformat didn't work if no renderpass was active due to the use of clear.
...
Also instantly convert to a clear when binding the framebuffer in cases
when we know it's the optimal thing. The QueueRunner would have later merged
anyway hopefully, but I like the simplicity of this.
2020-05-21 12:01:15 +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
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ård
f1b9943947
Merge pull request #12930 from unknownbrackets/gpu-stencil
...
GPU: Avoid unnecessary clear on stencil upload
2020-05-19 09:05:58 +02:00