Stenzek
f1847462a9
VulkanDevice: Fix rendering to multiple targets
2024-03-24 22:32:44 +10:00
Stenzek
3206054fab
OpenGLDevice: Fix rendering to multiple RTs
2024-03-24 22:32:44 +10:00
Stenzek
101ebe3ac3
PostProcessing/FX: Fix GLSL compile error with discard
2024-03-24 22:32:44 +10:00
Stenzek
9cdff4781f
OpenGLDevice: Fix depth clears not going through
2024-03-24 22:32:44 +10:00
Stenzek
f3c0c14b2a
Image: Support loading/saving WebP
2024-03-24 16:03:00 +10:00
Stenzek
b143d96476
Build: Use deps DLLs on Windows
2024-03-24 16:02:59 +10:00
Stenzek
084a76afa0
CDImageDevice: Verify MSF of SUBQ before use
2024-03-23 13:46:18 +10:00
Stenzek
d96062b690
AudioStream: Fix infinite loop
2024-03-21 03:50:46 +10:00
Stenzek
bcc7ab71cb
NoGUI: Add SDL platform
2024-03-21 01:53:44 +10:00
Stenzek
9703542775
AudioStream: Re-add SDL backend
2024-03-20 22:46:20 +10:00
Stenzek
1ab7850ed0
GPU: Rewrite deinterlacing and add adaptive/blend modes
2024-03-16 14:14:15 +10:00
Stenzek
8b2b4ce8d9
Image: Fix reading of JPEG files
2024-03-16 14:14:15 +10:00
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
Stenzek
118c6c1269
VulkanDevice: Don't assume presence of vkGetPhysicalDeviceFeatures2
2023-12-26 13:00:58 +10:00
Stenzek
62d2f12236
Settings: Expose exclusive fullscreen control
2023-12-25 23:44:15 +10:00
Stenzek
46e0afd2d4
VulkanDevice: Actually allow enumeration of 1.0 device
2023-12-25 23:02:13 +10:00
Stenzek
c233eb53ab
VulkanDevice: Potentially re-enable Vulkan 1.0 support
2023-12-25 21:59:52 +10:00
Stenzek
e81e3edb23
SDLInputSource: Optionally load game_controller_db.txt from data dir
2023-12-25 19:47:57 +10:00
Stenzek
9ec3266f02
GPUDevice: Fix crash when using recycled targets
2023-12-21 23:40:03 +10:00
Stenzek
36643fe78b
GameList: Add "File Size" field
2023-12-20 23:40:28 +10:00
Stenzek
dc5e4120cd
GPUDevice: Improve texture pooling
2023-12-20 22:42:32 +10:00
Stenzek
5ef2ba0eb2
GPU/HW: Add fallback path for no-texture-buffers
...
Yay, old Mali drivers without SSBOs...
2023-12-19 22:38:36 +10:00
Stenzek
4942964e2f
OpenGLDevice: Fix texture creation issues w/o texture storage
2023-12-19 22:38:36 +10:00
Stenzek
717e0665ae
GPUDevice: Support R16I/R16U textures
2023-12-19 22:38:36 +10:00
Stenzek
05b42f34eb
JitCodeBuffer: Use MAP_FIXED on MacOS/MAP_FIXED_NOREPLACE on Linux
2023-12-19 22:20:00 +10:00
Stenzek
7829abc014
MSBuild: We don't need WinPixEventRuntime in Release builds
2023-12-18 20:50:36 +10:00
Stenzek
9e82c18559
MetalDevice: Defer release of layer drawables
2023-12-18 20:50:35 +10:00
Stenzek
f4fb069216
MetalDevice: Explicitly bind fragment resources
...
Fixes adaptive downsampling with Metal renderer.
2023-12-18 20:50:35 +10:00
Stenzek
6fe2177ee7
MetalDevice: Fix incorrect mipmap texture creation
2023-12-18 20:50:35 +10:00
Stenzek
e08f888e72
OpenGLDevice: Fix incorrect scissor rect
2023-12-17 00:09:23 +10:00
Stenzek
38777439c5
ShaderGen: Don't emit index qualifier when not using DSB
...
Fixes shader compile errors on Panfrost.
2023-12-16 22:40:30 +10:00
Stenzek
0632c3356c
OpenGLDevice: More Mali driver workarounds
2023-12-16 21:04:40 +10:00
Stenzek
b04578afee
ImGuiFullscreen: Fix menu background obscuring text
2023-12-15 13:45:19 +10:00
Stenzek
57aa138808
PostProcessing: Add compile progress indicator
2023-12-14 20:23:48 +10:00
Stenzek
7e1276fbac
GPUDevice: Fix binding deferred cleared textures
...
i.e. briefly flashing previous state after reset.
2023-12-14 20:23:48 +10:00
Stenzek
c20805f2be
VulkanDevice: Work around some mobile driver issues
2023-12-13 23:01:10 +10:00
Stenzek
710698f7e1
Misc: Remove StringUtil::{Starts,Ends}With, use C++20
2023-12-13 21:18:19 +10:00
Stenzek
79c226efff
SmallString: fmt -> format, format -> sprintf
2023-12-13 21:06:15 +10:00
Stenzek
e14bf95043
Misc: Linux build fix
2023-12-13 12:35:56 +10:00
Stenzek
ad96b1ec75
FullscreenUI: Improve menu button borders
2023-12-13 01:12:55 +10:00
Stenzek
c467825791
SaveStateSelectorUI: Make less ugly
2023-12-13 01:00:13 +10:00
Stenzek
dbaf49e4d4
VulkanDevice: Fix ARM32 build (again)
2023-12-10 23:31:01 +10:00
Stenzek
39913b2a39
GPUDevice: Fix incorrect positioning with PostFX and GL
2023-12-10 23:26:43 +10:00
Stenzek
27162e34a0
PostProcessing: Add Config::GetShaderOptions()
2023-12-10 22:22:02 +10:00
Stenzek
c90de025bf
MetalDevice: Fix depth not storing
2023-12-09 22:08:14 +10:00
Stenzek
1a5865bf95
D3D12Device: Fix crash on SW renderer switch
2023-12-09 22:08:14 +10:00
Stenzek
1f4a37f8eb
VulkanDevice: Fix crash on SW renderer switch
2023-12-09 22:08:14 +10:00
Stenzek
d068799515
VulkanDevice: Fix incomplete swap chain clear with dynamic rendering
2023-12-09 22:08:14 +10:00
Stenzek
ff37afef55
PostProcessing/FX: Support multiple render targets
2023-12-09 22:08:14 +10:00
Stenzek
a907e1f550
GPUDevice: Pool textures
2023-12-09 22:08:13 +10:00
Stenzek
3b2c70cda5
GPUDevice: Get rid of framebuffer abstraction
2023-12-09 22:08:13 +10:00