Commit Graph

1195 Commits

Author SHA1 Message Date
Nukem d5cd8e699b d3d11: Fix DXGI device ref count leak 2025-02-12 19:50:06 -06:00
Nukem 0e623450c0 d3d11: Use modern flip model and tearing flags for swap chain creation 2025-02-12 19:50:05 -06:00
Henrik Rydgård 948c38a034 Some more minor fixes 2025-02-04 10:24:55 -06:00
oltolm 391e272df7 d3dx9: do not use it 2025-01-18 12:08:03 +01:00
Henrik Rydgård 7a0ec74c32 Merge pull request #19855 from oltolm/cmake
make compile with Clang/GCC on Windows
2025-01-17 15:13:52 +01:00
Henrik Rydgård 6e0cafccb9 Request Vulkan 1.4 if available. 2025-01-17 14:27:08 +01:00
oltolm 9566065455 make compile on mingw-w64 2025-01-11 01:25:27 +01:00
Nukem d3aeff861e libretro: Restore Vulkan MSAA video option 2025-01-10 16:13:16 -05:00
Luboš V. d1f8b78bbb OpenXR - Remove non-functional Vulkan implementation (#19766)
* OpenXR - Remove non-functional Vulkan implementation

* Forgotten to commit
2024-12-26 10:05:18 +01:00
Henrik Rydgård 58adb379ea GE debugger improvements 2024-12-20 20:31:58 +01:00
Henrik Rydgård c91169e702 Restore removed <algorithm> includes.
Turns out these were needed after all. For some reason, on Windows and
Mac, <algorithm> gets auto-included by something else so I don't notice
when it's missing, and MSVC's include dependency tracker doesn't see it
either.
2024-12-19 09:53:07 +01:00
Henrik Rydgård 4dd3621fa0 Remove some unnecessary <algorithm> includes. 2024-12-18 17:04:27 +01:00
Henrik Rydgård c608184cdd ImGeDebugger: Add support to inspect depth and stencil buffers too, including hover values 2024-12-16 21:06:09 +01:00
Henrik Rydgård 111d0c872d Global rename of FBChannel to Aspect, also make it a class enum 2024-12-15 22:24:05 +01:00
Henrik Rydgård 27122a9e64 Work on previews 2024-12-10 22:09:51 +01:00
Henrik Rydgård b2a8b4168b Core: Minor changes to stepping (and some log changes) 2024-12-10 01:06:19 +01:00
Katharine Chui 49553bcf8d Simplify MacOS AMD GPU workaround
Based on https://github.com/KhronosGroup/MoltenVK/issues/960,
expand MacOS AMD GPU workaround to all dGPU and instead of
changing usage, just append VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
2024-12-09 14:22:56 +01:00
Katharine Chui 286580a6a0 Switch to VMA_MEMORY_USAGE_CPU_ONLY on MacOS AMD
The ideal allocation would be VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
like in 1.12.3, but vma picked an index that's actually not mappable

VMA_MEMORY_USAGE_GPU_TO_CPU selects VK_MEMORY_PROPERTY_HOST_CACHED_BIT,
which seems to hurt performance

VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT + VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
selection with VMA_MEMORY_USAGE_CPU_ONLY would suffice for the
workaround, and get better performance
2024-12-09 12:32:31 +01:00
Katharine Chui 93009a3178 Work around metal buffer bug on MacOS + AMD GPU
With VMA_MEMORY_USAGE_CPU_TO_GPU buffers, metal buffer appears 0
filled in metal trace during vkCmdCopyBufferToImage triggered
MTLBlitCommandEncoder instance method.

Allocate VMA_MEMORY_USAGE_GPU_TO_CPU instead on MacOS + AMD GPU
2024-12-08 22:13:33 +01:00
Henrik Rydgård 080798b5dd Move out two more functions from Core.cpp. Clean up Windows includes 2024-12-08 12:12:02 +01:00
Henrik Rydgård e94defbb15 Get the CORE_RUNNING_GE coreState working! 2024-12-01 22:49:18 +01:00
Henrik Rydgård e4adc112ff ImDebugger: Add a basic texture browser 2024-11-29 19:30:38 +01:00
Henrik Rydgård 27a60517af Fix broken check for intel macs (for auto-disabling Vulkan) 2024-11-27 15:23:50 +01:00
Henrik Rydgård 6763c13f88 ImGui: Finish implementing pipeline switching for all backends 2024-11-27 01:19:05 +01:00
Henrik Rydgård 09779e0f44 ImGui drawing: Allow varying the pipeline when binding textures 2024-11-26 19:59:09 +01:00
Henrik Rydgård eaff38f161 Implement ImGui clipped batch texturing support in the other backends too 2024-11-26 09:38:30 +01:00
Henrik Rydgård e82b7f788e Implement texture binding in draw batches. Framebuffer viewer now works in Vulkan. 2024-11-26 09:22:35 +01:00
Henrik Rydgård e66516eb50 ImDebugger: Add ability to rename function symbols 2024-11-23 23:23:52 +01:00
Henrik Rydgård 194b2ce076 Ge Debugger: Add a framebuffer listing, along with some plumbing 2024-11-23 23:23:48 +01:00
Henrik Rydgård 659af60613 Fix ImDebugger rendering on D3D9 as well (although not very optimally). 2024-11-21 15:48:18 +01:00
Henrik Rydgård c6c9e32d15 Fix the ImDebugger on OpenGL 2024-11-21 15:48:18 +01:00
Henrik Rydgård 59a56d66c7 Add a "reason" argument to sleep_ms().
sleep_ms() should generally be avoided when possible. This can be used to try
to track down unnecessary sleeps by adding some logging.

This commit on its own doesn't actually add any logging.
2024-11-21 15:28:51 +01:00
Henrik Rydgård f5a4669cb4 Remove obsolete ifdef 2024-11-07 10:17:56 +01:00
Henrik Rydgård 472103d460 Back out the 32-bit index buffer support. Not actually needed for ImGui. 2024-11-04 23:14:39 +01:00
Henrik Rydgård 184a3ecf2a Code fixes. Correct the UWP fix 2024-11-04 23:14:39 +01:00
Henrik Rydgård 17a7c80cb1 Get it rendering on Vulkan and D3D11 (OpenGL is bugged though) 2024-11-04 23:14:39 +01:00
Henrik Rydgård d37c04079d Change the 2D matrix generation to query the coordinate convention from the draw context 2024-11-04 23:14:23 +01:00
Henrik Rydgård 8f8598c347 thin3d: Add partial support for 32-bit index buffers. Add DrawIndexedUP. 2024-11-04 23:14:22 +01:00
Henrik Rydgård 7d24fca4e2 Crashfix when switching buffered/non-buffered with the game running 2024-10-25 12:00:28 +02:00
Henrik Rydgård a545d3074f Do some renaming, dedupe some strings (old commit resurrected), add an assert 2024-10-22 22:28:06 +02:00
Henrik Rydgård 3a4b27b086 Fix some more presentation issues 2024-10-22 12:29:32 +02:00
Henrik Rydgård 99f7946471 Vulkan GraphicsPipeline: Fix an old and likely very rare race condition. 2024-10-22 11:02:26 +02:00
Henrik Rydgård a6a189c24d An old version of android had strict JNI validation of UTF-8 strings enabled. Let's pass it. 2024-10-22 11:02:26 +02:00
Henrik Rydgård 858f37b8fc Add a couple of asserts (to make things error out earlier) 2024-10-17 21:01:58 +02:00
Henrik Rydgård 2c283fbb07 Minor cleanups, crashfixes 2024-10-14 23:57:19 +02:00
Henrik Rydgård e1527233d9 Add the EmuScreen pass assert on OpenGL as well 2024-10-14 14:35:35 +02:00
oltolm f429a257af d3d9: fix bug introduced in "use ComPtr for D3D9" 2024-10-13 21:45:40 +02:00
oltolm 3a285bbd2f d3d9: refactor CompileShaderToByteCodeD3D9 2024-10-13 21:45:39 +02:00
Henrik Rydgård f1cbf1ba96 Android TextRenderer: Add try {} around loading the Roboto font. Also improve an unrelated assert. 2024-10-10 16:01:00 +02:00
Henrik Rydgård 9c5cda3487 Buildfix 2024-10-10 12:19:53 +02:00