Unknown W. Brackets
fd245f2863
Common: Correct shm_open() call.
...
Don't remember what happened here,
this was meant to be shm_open().
2021-12-03 14:30:32 -08:00
Unknown W. Brackets
212669d2bc
Vulkan: Cleanup pipeline var shadowing.
2021-12-02 17:57:40 -08:00
Henrik Rydgård
cfe2716d49
Merge pull request #15178 from unknownbrackets/threads-atomic
...
Tweaks to thread manager enqueue and shutdown
2021-11-30 09:26:13 +01:00
Unknown W. Brackets
12b790bb81
ThreadManager: Protect against teardown hang/leak.
...
Make sure we lock during canceled checks/updates, and also try to free
tasks queued on threads that didn't end up running.
2021-11-27 08:57:19 -08:00
Unknown W. Brackets
de9a4dcede
ThreadManager: Lock notify on global queue add.
...
Otherwise, it's possible the chosen thread might not wake up, and then it
may wait for another task to be enqueued - potentially causing a hang.
2021-11-27 08:57:19 -08:00
Unknown W. Brackets
d15af6e9d9
ThreadManager: Use atomic task optimistically.
...
This makes EnqueueTaskOnThread take priority as well.
Gives about 1% improvement in softgpu, reducing overhead a bit.
2021-11-27 08:07:12 -08:00
Unknown W. Brackets
3f3e0ea8cf
softjit: Optimize typical alpha/depth test.
...
Messed with SSE4 then realized there's no point, just use SHR.
2021-11-26 08:21:14 -08:00
Henrik Rydgård
f991f6a789
Remove the old allocator visualizer. Keep the setting but hide it. Other feedback
2021-11-23 08:55:12 +01:00
Henrik Rydgård
2cbadefb29
Fix bugs in deletion. Delete redundant functions.
2021-11-22 19:02:08 +01:00
Henrik Rydgård
a7591d7826
Switch framebuffers to use VMA for allocation as well
2021-11-22 18:54:09 +01:00
Henrik Rydgård
8d5247ddf3
Convert the PushBuffer to use VMA.
2021-11-22 18:54:09 +01:00
Henrik Rydgård
0cbb7ab027
Change the PushBuffer API a bit to not take explicit memory types.
2021-11-22 18:54:09 +01:00
Henrik Rydgård
c2f594cc73
Remove the VulkanDeviceAllocator
2021-11-22 18:54:09 +01:00
Henrik Rydgård
1b1e585a35
More integration, use VMA in VulkanTexture
2021-11-22 18:54:09 +01:00
Henrik Rydgård
8f9ce03a8d
Start integrating VMA
2021-11-22 18:54:08 +01:00
Henrik Rydgård
81fba1f4a4
Minor refactor
2021-11-21 22:08:53 +01:00
Henrik Rydgård
29f54befbd
Comment improvement, restore accidental deletion
2021-11-21 21:34:05 +01:00
Henrik Rydgård
dda425b068
Vulkan: Add a single background thread for pipeline creation
...
Add proper waits for compile-done
Don't rely on non-standard struct initialization of classes
Attempt to drain the pipeline compile queue before destroying the PipelineManager.
Vulkan: Bump the cache version for testing
2021-11-21 18:36:00 +01:00
Henrik Rydgård
62f4875e24
VulkanRenderManager: Add deferred pipeline creation (to get it off the CPU thread)
2021-11-21 18:36:00 +01:00
Henrik Rydgård
4f85b8b2ef
Threading: Remove a level of indirection from Promise and Mailbox.
...
Makes using small copyable or POD objects in these more efficient, and if you want
to you can just put a pointer or smart pointer in there, which will
effectively do the same thing as the old setup.
2021-11-20 22:40:10 +01:00
Unknown W. Brackets
e21f2b8fcf
Common: UWP buildfix.
...
Just use SetThreadDescription() directly, assuming new enough Windows.
2021-11-13 09:40:07 -08:00
Henrik Rydgård
9f1c9b9963
Buildfix
2021-11-13 18:12:09 +01:00
Henrik Rydgård
6e1455fd55
Use the "new" API SetThreadDescription to set thread names on Windows.
...
Mainly useful in debugging and profiling tools. Using the new function helps
modern debugging/profiling tools like Superluminal which don't support the
old exception method.
(Is there any old tool left that might be a reason we'd want to do both?)
2021-11-13 18:02:36 +01:00
Henrik Rydgård
4161b500ab
Merge pull request #15021 from unknownbrackets/ui-font-atlas
...
UI: Support a second texture for just fonts
2021-11-09 22:51:09 +01:00
Henrik Rydgård
281ddc2437
Speed up the 4xBRZ upscaler with 16x and the MMPX one with 4x by not doing redundant work
2021-11-07 15:47:05 +01:00
Unknown W. Brackets
60bd25582c
Vulkan: Remove wide line handling.
...
No longer used, since we convert lines to triangles now.
2021-10-31 14:47:21 -07:00
Unknown W. Brackets
2718e81c0e
GPU: Expand lines to triangles.
2021-10-31 14:46:46 -07:00
Unknown W. Brackets
1d76e55f84
Vulkan: Disable large points feature.
...
No longer used.
2021-10-31 13:07:03 -07:00
Unknown W. Brackets
b3a8e013f6
GPU: Expand points into triangles for higher res.
2021-10-31 13:06:06 -07:00
Henrik Rydgård
3245f54dc1
Optimize the rotation a bit (limit to VK/D3D11, mat2 instead of mat4)
2021-10-31 13:44:54 +01:00
Unknown W. Brackets
09daace8b8
GLES: Skip assert if no buffer.
2021-10-25 06:27:45 -07:00
Unknown W. Brackets
d5dac66c7a
Path: Avoid adding a double slash from root.
2021-10-20 13:01:16 -07:00
Unknown W. Brackets
8e15f755e6
UI: Add a sysprop for if the device has a keyboard.
...
Still left some ifdefs because of System_InputBoxGetString(), but
hopefully we can move away from them. Some devices (like SDL) may only
optionally have a keyboard, so it's a runtime check.
2021-10-19 10:01:52 -07:00
Unknown W. Brackets
49c64e12d1
UI: Add a way to disable tabs in tab strips.
2021-10-19 10:01:52 -07:00
Unknown W. Brackets
eb81d5b30b
UI: Support a second texture for just fonts.
...
Will still allow using fonts between both.
2021-10-19 10:01:17 -07:00
Henrik Rydgård
593241b50f
Merge pull request #14996 from hrydgard/vulkan-best-practices
...
Vulkan "best practices" fixes
2021-10-19 17:57:39 +02:00
Henrik Rydgård
16bf5197e4
Merge pull request #14833 from unknownbrackets/guardband
...
Handle guardband clip/cull better for hardware backends
2021-10-19 12:00:01 +02:00
Unknown W. Brackets
275baccc5b
GLES: Support GL_APPLE_clip_distance too.
...
Seems modern Apple mobile chips only support clip.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
7b00c4a572
GPU: Move Z/W equal hack to bugs from supports.
...
It's really a bug (might even ideally cap the version?), and we already
have other bugs handled the same way.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
5e6f54033e
GPU: Split clip and cull caps.
...
GL_ARB_cull_distance is needed, sometimes available on older GL.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
1c7cd67f6d
iOS: Buildfix bad GLES headers.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
1e66a66ed7
D3D11: Correct clearing samplers.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
d2ff66a660
UI: Clear textures on Begin.
...
On GLES, saw a texture bound to slot 1 when UI started to draw after an
emu frame, which caused a crash because there was no sampler. Let's just
explicitly flush.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
7d00b6ca90
GLES: Enable/disable clip distance 0.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
046a5c548b
GLES: Check clip/cull distance support.
...
Pretty limited on GLES3+. Also D3D11.
Seems like doing it on D3D9 might be a bit tricky.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
273b9a3dc1
Vulkan: Add negative Z clipping.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
9fdf0e1071
Common: Remove MakeUnique.h.
...
No longer used.
2021-10-12 20:33:07 -07:00
Henrik Rydgård
e6857388c7
Add input device debug info to touchscreen test screen
...
(yeah maybe there's a better place but it's fine).
Also make a slight tweak to the detection order which I don't think
matters much.
2021-10-10 11:50:20 +02:00
Henrik Rydgård
59b2604c14
Consistent sampler modes in UI to make Mali happy
2021-10-08 22:20:57 +02:00
Henrik Rydgård
d7ac6aa63d
Fix an assortment of minor VK barrier bugs in mostly texture upload
2021-10-08 21:58:03 +02:00