Henrik Rydgård
28790c19af
Merge pull request #20912 from hrydgard/ios-portrait-support
...
iOS portrait mode support
2025-10-22 16:19:37 +02:00
Henrik Rydgård
1c49ad7b29
Support screen rotation on iOS (unrestricted)
2025-10-22 15:13:21 +02:00
fp64
5c67109862
Update NEON PMA to match scalar/SSE2
...
See https://github.com/hrydgard/ppsspp/pull/20902#issuecomment-3429764588 for details.
WARNING: not at all tested in actual PPSSPP, only godbolt for relevant snippet. Verification that it works would be good.
Again, this should be slightly slower than the current version, which shouldn't matter. The goal is accuracy/consistency here.
2025-10-22 14:13:07 +03:00
Henrik Rydgård
2bc2d9c6f9
Minor UIAtlas code cleanup
2025-10-21 14:49:55 +02:00
Henrik Rydgård
c29eb5097b
Use the more accurate sleep function in the UI throttling
2025-10-21 12:11:23 +02:00
Henrik Rydgård
7cc4a0f3a3
Add more accurate sleep function (well, not more accurate on Windows unfortunately)
2025-10-21 12:11:23 +02:00
Henrik Rydgård
29032f4a70
Merge pull request #20900 from hrydgard/restore-vsync
...
Rework the VSync setting and related code to make more sense
2025-10-21 12:10:23 +02:00
Henrik Rydgård
d265336912
Warning fix
2025-10-21 11:16:19 +02:00
Henrik Rydgård
3ae0057285
UIAtlas: Fix bug when adding 1px border to images (was a no-op by accident)
2025-10-21 11:08:53 +02:00
fp64
9932ad3f85
Improve accuracy of SSE2 PMA conversion
...
This makes SSE2 version match the (correctly-rounded)
scalar reference (which the current version doesn't:
see https://godbolt.org/z/hK5938jda ).
The new implementation uses the same idea as mentioned in
https://github.com/hrydgard/ppsspp/pull/20870#issuecomment-3413134437
It may be a bit slower than current implementation (which
simply truncates?), but correctness/consistency is
probably worth it.
The difference is slight (by 1 in RGB color channels),
but observable in synthetic examples (in particular the
current implementation darkens completely opaque parts,
including `0xFFFFFFFF` -> `0xFFFEFEFE`, and, more
strikingly,`0xFF010101` -> `0xFF000000`).
This doesn't touch NEON part at all (so "vibe-coded" comment
stays for now), but it shouldn't be too hard to port.
2025-10-21 08:04:37 +03:00
Henrik Rydgård
c5b1f2ffb0
OpenGL: Call SwapInterval properly
2025-10-20 22:45:42 +02:00
Henrik Rydgård
042cf87248
Rework the present mode settings, refactor.
2025-10-20 21:28:38 +02:00
Henrik Rydgård
82bba691dd
Unexpose the specialized Vulkan presentation modes for now
2025-10-20 19:53:21 +02:00
Henrik Rydgård
b4f7635719
Vulkan: Check the available present modes right after initializing the surface
2025-10-20 19:52:24 +02:00
Henrik Rydgård
80bd32325c
Move the present mode from the CreateInfo to InitSwapchain
2025-10-20 16:33:34 +02:00
Henrik Rydgård
6338832015
Vulkan: Smoothly recreate the swapchain using oldSwapchain on "resize" on Windows
2025-10-20 15:42:34 +02:00
Henrik Rydgård
176c55da25
Remove unused "interval" concept from presentation mode
2025-10-19 18:18:06 +02:00
Henrik Rydgård
2b6b951f78
Fix alpha in drawtext for RGBA8888 format.
...
Should fix #20879
2025-10-17 08:57:12 +02:00
Henrik Rydgård
e5f52854d8
Atlas SVG: Add 1px transparent border to images without shadows, to ensure consistent filtering
2025-10-16 16:45:59 +02:00
Henrik Rydgård
3736702f93
Use the correct blending operator when compositing the drop shadow
2025-10-16 11:07:05 +02:00
Henrik Rydgård
c08e48bf82
Only shadow the UI images that are used for line-art in-game buttons.
2025-10-16 11:07:05 +02:00
Henrik Rydgård
230fa1a985
Improve the premul alpha conversion
2025-10-16 11:07:05 +02:00
Henrik Rydgård
cec4cd28dd
Make compatible with SSE2 (_mm_mullo_epi32 is SSE4.1)
2025-10-16 11:07:05 +02:00
Henrik Rydgård
21e0c496c4
Convert loaded pngs and zims to premultiplied alpha
2025-10-16 11:07:05 +02:00
Henrik Rydgård
60d25cb97d
Change the UI rendering shaders to apply vertex color alpha properly
2025-10-16 11:07:05 +02:00
Henrik Rydgård
f0b5209908
Convert all UI atlas images to premultiplied alpha format
2025-10-16 11:07:05 +02:00
Henrik Rydgård
b082e94edb
Initial work on using premultiplied alpha in the UI
2025-10-16 11:07:05 +02:00
Henrik Rydgård
c3dfddebd7
IR interpreter: Improve code gen for the main interpreter loop
...
Thanks to fp64 for the idea of using unreachable markers to avoid the
range check on the switch!
Additionally, use it in a few more places.
2025-10-15 21:15:30 +02:00
Henrik Rydgård
58f55ae44b
Enable exception handling on Windows ARM64
...
Simpler than expected. We don't really make any advanced use of the
context currently so I guess it makes sense.
See #20854
2025-10-07 10:56:23 -06:00
Henrik Rydgård
b4b9ae2d3c
Fix the OnClick behavior on checkboxes, oops. Fixes cheats.
2025-09-30 12:38:38 -05:00
Henrik Rydgård
1efd0b95b8
Improve logging of UI atlas generation, don't generate debug png (oops)
2025-09-23 13:40:39 -06:00
Henrik Rydgård
10b0d94940
Remove some redundant code, minor optimization
2025-09-23 11:10:46 -06:00
Henrik Rydgård
233a9b0df8
Merge pull request #20824 from hrydgard/svg-icons
...
Load UI atlas images from SVG : proof of concept
2025-09-22 15:57:09 -06:00
Henrik Rydgård
27ed337d99
Move more pngs into the images.svg file
2025-09-22 15:24:10 -06:00
Henrik Rydgård
30392cd0ed
Merge pull request #20826 from oltolm/warn
...
fix compiler warnings
2025-09-22 10:09:03 -06:00
Henrik Rydgård
4a50174d14
Support dpi scaling in SVG atlas generation
2025-09-20 10:00:05 -06:00
Henrik Rydgård
0bb70de3f0
Correct the drop shadow
2025-09-19 11:23:48 -06:00
Henrik Rydgård
e03de7b9da
Add some quick and dirty drop shadow code. Now the generated images look good!
2025-09-19 10:57:29 -06:00
Henrik Rydgård
74874bb81e
Test a multi-shape image
2025-09-19 10:31:51 -06:00
Henrik Rydgård
9fa7a8880a
Include nanosvg in MSVC project
2025-09-19 10:31:51 -06:00
oltolm
de3abcf579
fix compiler warnings
2025-09-19 11:36:11 +02:00
Henrik Rydgård
bceb989811
Remove ImageDesc from AtlasGen.cpp/h
2025-09-18 11:26:19 -06:00
Henrik Rydgård
ca2a7c93a0
Make ToAtlasImage a global function instead of a method on ImageDesc
2025-09-18 11:03:50 -06:00
Henrik Rydgård
95703d2d9c
Delete "C++ table" output from atlastool
2025-09-18 10:58:27 -06:00
Henrik Rydgård
641fa40d82
Runtime atlas gen: Reorganize, remove global_id
2025-09-17 10:46:08 -06:00
Henrik Rydgård
52f2475353
Remove the LoadImage method (the two users have quite different needs)
2025-09-17 10:37:42 -06:00
Henrik Rydgård
0298536efa
Separate images from data in bucketer
2025-09-17 10:28:08 -06:00
Henrik Rydgård
d2512817bd
checkpoint
2025-09-17 10:10:59 -06:00
Henrik Rydgård
81819642d8
Minor cleanups
2025-09-17 10:01:00 -06:00
Henrik Rydgård
92f5db7445
Remove further references to the fixed ui_atlas. CMakeLists.txt improvements.
2025-09-17 09:56:17 -06:00