Commit Graph

9017 Commits

Author SHA1 Message Date
Stenzek 9666abc172
FullscreenUI: Hook up to disc change hotkey 2025-01-24 13:47:55 +10:00
JukePlz 9096402a30
GameDB: Rakugaki Showtime does not support analog mode (#3358)
Only supports vibration.
2025-01-24 13:10:32 +10:00
Stenzek dc5f85a34e
System: Display safe mode warning when toggling on 2025-01-24 12:50:35 +10:00
Anderson Cardoso 807094d627
Atualização Português do Brasil (#3357)
Atualizado para a última versão
2025-01-23 12:38:43 +10:00
Stenzek 13c7b8542d
GPUThread: Fix starting big picture mode 2025-01-23 12:37:26 +10:00
Stenzek 4da1f613b6
System: Simplify CD speedup warnings 2025-01-23 12:22:32 +10:00
Stenzek df8822760a
GPU/HW: Further tweaks to replacement alpha handling
We can't simply clear the alpha channel unconditionally here, because that
would result in any black pixels with zero alpha being transparency-culled.

Instead, we set it to a minimum value (2/255 in case of rounding error, I
don't trust drivers here) so that transparent polygons in the source still
set bit 15 to zero in the framebuffer, but are not transparency-culled.

Silent Hill needs it to be zero, I'm not aware of anything that needs
specific values yet. If it did, we'd need a different dumping technique.
2025-01-23 12:12:58 +10:00
Stenzek 9113a6e6a6
Qt: Add 'Multiple Devices' to automatic mapping
Also populate the "current device" label with the device from
the config when running the setup wizard, instead of always setting
the label to Keyboard.
2025-01-22 18:38:37 +10:00
Stenzek b08ab9f712
Qt: Fix border overlay export button 2025-01-22 18:38:37 +10:00
Stenzek d395be07ee
Qt: Fix global setting showing incorrectly for int-list 2025-01-22 18:38:37 +10:00
Stenzek 89504b0184
GPUThread: Push settings through FIFO
Saves the std::function heap allocation.
2025-01-22 18:38:37 +10:00
Stenzek f045a1742d
GPUThread: Fix order of updating state
Fixes unoverwritten textures not dumping on system shutdown.
2025-01-22 18:38:37 +10:00
Stenzek 8eaa1f312d
GPU: Fix overlay destination alpha with postfx
Also don't assume the image has premultiplied alpha.
2025-01-22 18:38:37 +10:00
Stenzek 0129679bb0
GPU: Reduce overdraw when using overlays
Clear the four borders individually instead of a blit over the
entire texture.
2025-01-22 18:38:37 +10:00
Stenzek 0166939609
PostProcessing/GLSL: Clear alpha to 1.0 2025-01-22 18:23:12 +10:00
Stenzek be75a97efe
GPUDevice: Fix swap chain clear colour normalization 2025-01-22 18:23:11 +10:00
Stenzek af58740f5d
System: Always display OSD warning messages
I regretted what I did in f2720b98dd
less than a week after I pushed the change.

As a compromise, only display the unsafe settings warnings on startup.
2025-01-22 18:23:10 +10:00
Stenzek 4e588bb6c1
GPU: Fix incorrect interface for postfx config 2025-01-21 20:55:26 +10:00
Stenzek 78f6e11b91
GPUThread: Skip debug window update on Android 2025-01-21 20:22:10 +10:00
Stenzek 19ca9cb47d
GPU/HW: Use texture loads for native resolution
Hopefully work around sampling precision issues in older AMD drivers
and Mali Midgard if we're lucky. But I don't have anything this old
to verify with.
2025-01-21 20:15:07 +10:00
Stenzek 080eccd8fc
GPUThread: Shutdown instead of panicing on switch failure 2025-01-21 20:12:38 +10:00
Stenzek 9c4b2112ae
GPU: Fix incorrect screen draw rect
Fixes loading screen in Alundra 2, as well as incorrect effective
PAR when using None crop mode.
2025-01-21 19:54:54 +10:00
Stenzek fb3e290133
GPUDevice: Move exclusive fullscreen to features
Also fixes it not enabling in D3D12 renderer.
2025-01-21 19:12:44 +10:00
Stenzek 389276bb03
GPUDevice: Normalize supports_texture_buffers => texture_buffers 2025-01-21 19:06:59 +10:00
Stenzek 9d4789e082
FullscreenUI: Fix blank screen flicker starting game
Also returns to whichever menu the system boot was initiated from.
2025-01-20 23:17:24 +10:00
Stenzek 17b0da7283
GameList: URL encode custom properties paths with brackets
Fixes custom properties not applying on restart to games with
brackets in their paths.
2025-01-20 21:59:24 +10:00
Stenzek 4b20fc6922
Path: Fix several errors in URLEncode/Decode and add tests 2025-01-20 21:44:44 +10:00
Stenzek 78902d7632
FullscreenUI: Fix several more unsafe reads 2025-01-20 19:00:51 +10:00
Stenzek cc0ccf2648
Data: Update resources 2025-01-20 17:24:36 +10:00
Stenzek f219b47e98
FullscreenUI: Use constant width/height scale on Android
Fixes achievement notifications being differently sized
depending on the screen rotation.
2025-01-20 00:01:46 +10:00
Stenzek 7c2488c942
PostProcessing/GLSL: Fix image moved off-screen with alignment 2025-01-19 21:40:38 +10:00
Stenzek c03b6f3d84
Misc: Replace isspace() usage with StringUtil::IsWhitespace()
Avoids the UB if the character is negative (e.g. reading from a binary
file), as well as locale-specific rubbish.
2025-01-19 21:29:14 +10:00
Stenzek 21b167d382
CDImage: Tidy up Open() method 2025-01-19 21:29:14 +10:00
Stenzek 7905793ae0
GPU: Use screen alignment for overlay instead of display rect 2025-01-19 21:13:16 +10:00
Stenzek 8c5c0e6114
Common: Fix Vector2->Vector4 zero-extend constructor
And add loadl(const GSVector2i&) as an easier-to-read overload.
2025-01-19 21:13:16 +10:00
Stenzek ade8bf7b3b
GPU: Fix overlay+postprocessing combination 2025-01-19 21:13:16 +10:00
Stenzek 9fdeeb3fb6
GPU: Add alpha blending support to overlay 2025-01-19 16:37:51 +10:00
Stenzek 9b8d2a88de
System: Required changes for Android 2025-01-19 15:31:58 +10:00
Stenzek e1cbb50c64
GPU: Fix various capture/screenshot issues
- Simplify functions for rendering display.

- Post-processing should only when the target size matches the window.
  Otherwise the shaders are constantly recompiled.

- Include border overlay in capture/screenshots when above condition
  is satisfied.

- Relax video alignment size when using screen resolution + auto.

- Fix "Internal Resolution (Uncorrected)" capture mode.
2025-01-19 13:42:38 +10:00
Stenzek 725dcea05a
GPU: Fix crash toggling border overlays 2025-01-19 12:25:19 +10:00
Stenzek 6131ddbefe
GPU: Fill in unused/padded area in overlays 2025-01-18 22:59:49 +10:00
Stenzek 88b43370dc
GPUDevice: Replace explicit GL_PUSH/GL_POP with nested GL_SCOPE 2025-01-18 22:59:49 +10:00
Stenzek d62261e7a4
GPUDevice: Allow nested GL_SCOPE macros 2025-01-18 22:59:49 +10:00
Stenzek 7fcf0a3283
README: Update feature list for 2025 2025-01-18 22:59:48 +10:00
Stenzek 313f653fe0
Data: Add one example overlay 2025-01-18 22:59:48 +10:00
Stenzek e0a9bbe600
PostProcessing: Move into GPU presenter
Means that the renderer can be changed without reloading shaders,
and speeds up config change detection.
2025-01-18 22:59:48 +10:00
Stenzek d589696eff
PostProcessing: Get rid of GPU-dependent globals 2025-01-18 22:59:48 +10:00
Stenzek 338d29d271
GPUDevice: Move empty/null texture to base class 2025-01-18 22:59:48 +10:00
Stenzek 609fa5c7d7
GPUDevice: Add sampler cache to base class
Removes per-backend bookkeeping in D3D12 and Vulkan.
2025-01-18 22:59:48 +10:00
Stenzek da13579356
GPU: Align presenter/backends to cache line 2025-01-18 22:59:48 +10:00