Commit Graph

459 Commits

Author SHA1 Message Date
Stenzek
9211d9f2e3 Path: Add CreateFileURL() 2024-03-16 14:10:35 +10:00
Stenzek
51b3fabd31 OpenGLContext: Try libEGL.so.1 as well as libEGL.so 2024-03-13 14:14:40 +10:00
Stenzek
9b784b1777 OpenGLDevice: Fix incorrect streamed counter 2024-03-08 21:20:44 +10:00
Stenzek
de1338cbbc VulkanDevice: Add additional semaphore on swap chain
We don't actually need +1 semaphores, or, more than one really.
But, the validation layer gets cranky if we don't fence wait before the next image acquire.
So, add an additional semaphore to ensure that we're never acquiring before fence waiting.
2024-03-08 14:16:56 +10:00
Stenzek
7159330f63 GPU/HW: Ensure buffers are unmapped before present
Darn DX11...
2024-03-08 13:43:22 +10:00
Stenzek
c854b8f85e Image: Swap stb for libpng/libjpeg 2024-03-07 00:02:35 +10:00
Stenzek
250b1bea8f GPU: Use Image class for screenshot saving 2024-03-06 23:55:18 +10:00
Stenzek
620d08f72d Build: Move Image from common to util 2024-03-06 16:09:21 +10:00
Stenzek
e2024f6175 System: Change "Auto Load Cheats" to "Enable Cheats" 2024-03-03 14:03:07 +10:00
Stenzek
a1d7d214cf GPUDevice: Add support for VRR and relaxed vsync 2024-03-03 14:03:07 +10:00
Stenzek
b8127facdc GPUDevice: Memoize preferred renderer for auto 2024-03-02 17:45:39 +10:00
Stenzek
9e26622a12 CDImageDevice: Implement disc reading for Linux
And fix it for Windows. SubQ reading should now work.
2024-03-01 00:50:31 +10:00
Stenzek
b060edc61b VulkanDevice: Actually use all the swap chain semaphores 2024-03-01 00:50:27 +10:00
Stenzek
edeaaebc7d OpenGLContextEGL: Fix X11+platform base combination 2024-02-29 20:07:05 +10:00
Stenzek
f936a36c85 GPUDevice: Add GPUDownloadTexture
Which can also be based in host/client memory.
Use it for screenshots and VRAM downloads.
2024-02-29 18:56:50 +10:00
Wunkolo
4309d8ebf3 VulkanDevice: Add TryImportHostMemory
Utilizing `VK_EXT_external_memory_host`, attempt to import the host-pointer into a `VkBuffer`, `VkDeviceMemory`, and an offset to the start of the data. When the page size matches the import alignment, then it is possible to import an entire range of memory from the host directly into a vulkan-side buffer to read and write into.
2024-02-29 17:00:51 +10:00
Wunkolo
0ce1149e41 VulkanDevice: Optional VK_EXT_external_memory_host enablement
Allows usage of this extension only when the import-pointer-alignment
matches that of the hosts' page size.
2024-02-29 17:00:51 +10:00
Stenzek
ab83247de3 GLContext: Rename to OpenGLContext 2024-02-25 20:30:41 +10:00
Stenzek
9ac9fc0a1e Host: Add ReportFatalError() 2024-02-25 20:30:41 +10:00
Stenzek
df3517f19b GLContext: Use EGL 1.5 platform selection 2024-02-25 20:30:41 +10:00
Stenzek
143fb0876d dep/glad: Update to v2.0.5 2024-02-25 20:30:41 +10:00
Stenzek
8756672e12 ImGuiManager: Defer scale updates 2024-02-19 22:47:47 +09:00
KamFretoZ
1f6636f62b Qt: Icon updates 2024-02-18 15:44:12 +09:00
Stenzek
01876ec4aa Qt: Fix a couple of game summary translation issues 2024-02-15 22:14:46 +09:00
Tobias Jakobi
317a7ce8a7 Util: Add missing standard library includes 2024-02-06 23:48:45 +10:00
Stenzek
d5fb5645fc ByteStream: Move zstd wrapper to util project
Removes zstd dependency from common, fixes updater running on Mac.
2024-02-05 14:28:26 +10:00
Stenzek
6cca468e65 MetalDevice: Add family check for 16-bit formats 2024-02-03 20:44:34 +10:00
Stenzek
06b11590fe MetalDevice: Textures should be private 2024-02-03 19:53:35 +10:00
Stenzek
73bb2e77af SDLInputSource: Expose IOKit/MFI toggles 2024-02-03 19:41:56 +10:00
Stenzek
29b5afecae MetalDevice: Fix creation error on non-RGBA8 layers 2024-02-03 19:41:56 +10:00
Stenzek
c2c3eac749 Build: Use shared webp/zstd/zlib 2024-02-03 19:41:56 +10:00
Stenzek
6184b671c5 ImGuiFullscreen: Slightly improve hover/animation behavior 2024-01-31 00:53:30 +10:00
Stenzek
ebaef81aae ImGuiFullscreen: Don't clamp scale to 1.0 2024-01-31 00:16:06 +10:00
Stenzek
14e3969736 Misc: Warning fixes 2024-01-26 14:31:03 +10:00
Stenzek
bcf7f55b93 VulkanDevice: Fix potential race between submit and main thread 2024-01-22 22:57:42 +10:00
Stenzek
150ab8f4af GPU: Add host/hardware stats 2024-01-22 14:41:19 +10:00
Stenzek
f66866ed73 GPUDevice: Use Error class for initialization errors 2024-01-21 00:18:33 +10:00
Stenzek
429cb4f351 Qt: Allow toggling fullscreen when VM is paused 2024-01-21 00:07:32 +10:00
Stenzek
f369724b7c dep/imgui: Update to v1.90.1 2024-01-19 21:22:26 +10:00
Stenzek
5042460264 ImGuiFullscreen: Add LayoutUnscale() 2024-01-14 01:44:21 +10:00
Stenzek
da9e3064c2 Achievements: Display missable/progression/win icons 2024-01-14 01:44:21 +10:00
Stenzek
5d3cf93aa3 GPUDevice: Fix race on resize in GL/Vulkan 2024-01-10 22:46:57 +10:00
Stenzek
73cee9f705 Settings: Add UserResources to EmuFolders
Allowing some resources, such as fonts/sounds to be overridden by the
user.
2024-01-10 22:46:57 +10:00
KamFretoZ
34160a8c1b Qt/FSUI: Backport PromptFont from PCSX2 for better readibility 2024-01-10 22:23:56 +10:00
Stenzek
c5c023af5f SDLInputSource: Log axes/buttons when controller is opened 2024-01-08 15:49:05 +10:00
Stenzek
cf760bbe42 CDSubChannelReplacement: Clear map on reload
Fixes one PBP disc's SBI from leaking into others.
2024-01-01 14:46:58 +10:00
Stenzek
12b9cf1898 GPU: Fix crash when trying to postprocess surfaceless 2023-12-31 19:40:45 +10:00
Stenzek
344d2ccd5d OpenGLDevice: Work around lack of base_vertex in GLES3.1 2023-12-28 18:57:45 +10:00
Stenzek
958b033a66 PostProcessing: Fix assertion on some shader/texture formats 2023-12-28 15:31:03 +10:00
Stenzek
6d07d70946 GPUDevice: Fix erratic texture pool recycling 2023-12-27 02:28:12 +10:00