Les changements sont les suivants: Highlights
– Added DirectX 12 and OpenGL renderer support.
– Added OpenXR asynchronous mode for Vulkan and DirectX 12.
– Added passthrough support for Meta Quest headsets.
– Added foveated rendering to improve performance on Quest.
– Introduced a new VR configuration panel for binding controls directly in VR.
– Improved the Texture Override, Hide Code, and Shader Hunter tools.
OpenXR and VR
– Added OpenXR asynchronous mode for Vulkan and DirectX 12.
– Added an eager frame heartbeat for native VR frame-rate operation.
– Added a new VR configuration panel for controller bindings.
– Added new camera and controller anchor overrides.
– Added a new « Screen pane » override.
– Updated the Wiimote pointer to use absolute pointing.
– Fixed Wii MotionPlus gyroscope behavior.
Meta Quest
– Added passthrough support for Meta Quest headsets.
– Added foveated rendering to improve performance.
– Added a new first-launch screen for applying recommended Quest bindings.
– Newly created shaders can now be used on Quest.
– Added basic support for 2D Cinematic Mode.
2D Virtual Screen
– Added True Depth support.
– Added automatic « Remove EFB » handling.
– Fixed 2D screen clamping when using Vulkan.
Rendering and Compatibility
Added support for:
– Frame size detection from XFB copies.
– Small 3D viewports.
– Render-to-texture viewport detection.
– Improved handling for games that do not support Immediate XFB.
– Improved viewport scissor clipping behavior.
– Improved compatibility with games using unusual viewport configurations.
– Fixed Ubershader and visual glitches when using Vulkan Multiview.
Tools
– Greatly improved the Texture Override tool.
– Improved the Hide Code tool.
– Shader Hunter can now use Family Hash matching instead of only Exact Hash matching.
Stability and Bug Fixes
– Fixed a Vulkan crash that could occur after opening and closing DolphinXR multiple times.
– Fixed several rendering and visual issues.
– Various other bug fixes and stability improvements.
Version changes serve as landmarks and are by no means stable builds
This changelog lists the main (but not all) changes made since 0.0.X
Since v0.0.41 was tagged:
– 244 new commits
– 478 source code files have been edited
– 11 599 lines of code were added and 4 024 deleted
– 33 code contributors
– 58 days of development
Changelog:
– Remove duplicated code in VKShaderInterpreter.cpp by @digant73 in #18832
– Add « Enable Mouse-based Gyro » setting to I/O config by @Windsurf7 in #18835
– SPU LLVM: Use 128-bit SVE2 for FMS by @Whatcookie in #18837
– SPU LLVM: Idiomatic FSM implementation for ARM64 by @Whatcookie in #18806
– SPU LLVM: SVE multiply optimizations (ARM) by @Whatcookie in #18789
– vk: Autogrow descriptor pools based on demand by @kd-11 in #18844
– Initialize rtmidi async by @Megamouse in #18843
– Make FFB direction encoding for emulated G27 configurable by @ZerNico in #18776
– usb_device: present wii instruments as PS3 instruments by @sanjay900 in #18796
– SPU LLVM: Use I8MM for GBH and GBB by @Whatcookie in #18833
– Update Submodules by @Megamouse in #18840
– HOTFIX: JIT/AArch64: advertise +i8mm to the LLVM target machine by @Rad0van in #18846
– SPU LLVM: Use TBL for AArch64 ROTQBY shuffles by @Whatcookie in #18818
– cellAudio: fix _mxr000 surmixer event-queue key constant by @Rad0van in #18850
– RSX: Add hardware spin_wait helper, use it in flush requests by @Whatcookie in #18830
– rsx: Handle mipmap sampling edge case when SNORM emulation is active by @kd-11 in #18860
– cellAudio: Fix _mxr000 event queue hack by @elad335 in #18857
– SPU/PPU: Implement PPU reservation priority over SPUs by @elad335 in #18854
– rsx: Use mip0 resolution scale when computing mipmap scaling factors by @kd-11 in #18866
– Qt: Add exit game shortcut by @Megamouse in #18869
– SaveStates: Fix lv2_timer serialization by @elad335 in #18878
– ffmpeg: remove directshow backend by @Megamouse in #18879
– Fix drag & drop of files on main window by @digant73 in #18885
– gui: Move download database actions from game list to Manage -> Database submenu by @Vishrut2403 in #18870
– rsxaudio: fix some VS warnings by @Megamouse in #18886
– gui: Play preview videos on row selection, not just hover by @thephilcoulson in #18721
– Use more std::move by @Megamouse in #18868
– Add integrity check to PSN Content, DLC and Game Update files by @digant73 in #18669
– Fix visual studio projects by @Megamouse in #18889
– Do not throw on hex_to_bytes error in iso get_key by @Megamouse in #18891
– Optimise PNGs across the repo by @Chubercik in #18831
– Use more std::string_view (Part 1) by @Megamouse in #18890
– gl: Maintenance fixes by @kd-11 in #18874
– Use opengl renderer in game window title by @Megamouse in #18895
– Use more fmt::split_sv by @Megamouse in #18898
– Stop playing gamelist movies when the window loses focus by @Megamouse in #18899
– Use more std::string_view (Part 2) by @Megamouse in #18901
– [SPU] Optimize CLZ on targets without AVX512 by @WalterKruger in #18900
– sys_rsx: Fix IOMAP syscalls argument types by @elad335 in #18909
– Fix std::string_view regressions by @Megamouse in #18908
– Qt: use readable strings for window visibility in gui settings by @Megamouse in #18907
– [macOS] Update runners to OS 15, raise minimum deployment target accordingly by @schm1dtmac in #18897
– Add user agent to curl requests by @Megamouse in #18912
– [SPU] Calculate FRSQEST exponent using arithmetic by @WalterKruger in #18905
– Add missing sanity check in savedata_op by @Megamouse in #18918
– Update pugixml to 1.16 by @Megamouse in #18904
– fix double path delimiter by @digant73 in #18923
– Use more std::string_view (Part 3) by @Megamouse in #18903
– [SPU LLVM] Calculate FREST fraction using vperm2d for AVX512 by @WalterKruger in #18931
– SPU Analyzer: Giga Block Crash Fix for Skylanders Giants by @chotchki in #18935
– SPU LLVM: Use SVE2 XAR for constant rotates by @Whatcookie in #18849
– [SPU LLVM] Refactor SHUFB to improve readability by @WalterKruger in #18937
– Update wolfssl to 5.9.2 by @Megamouse in #18946
– Update 7zip to 26.02 by @Megamouse in #18947
– [SPU LLVM] Additional SHUFB splat/special-index fast paths by @WalterKruger in #18945
– emulated turntable: allow to map motion sensors by @Megamouse in #18958
– Add more motion control mappings to turntable and ghltar by @Megamouse in #18961
– Fix consteval read_from_ptr and add sanity checks if possible by @Megamouse in #18963
– Propagate src_loc in write_to_ptr and read_from_ptr by @Megamouse in #18967
– SPU Precompilation: Add support for unaligned segments by @elad335 in #18968
– Fix TTY UTF-8 logging by @Megamouse in #18969
– settings: Default async with shader interpreter with no shader compilation hint by @AniLeo in #18956
– Fix cellKb when using key modifiers on linux by @Megamouse in #18938
– macOS: DJ Hero Turntable support (deck buttons, passthrough conflict) by @silvatyrant in #18957
– Fix out of bounds read in Dimensions by @Megamouse in #18972
– cellSysmodule implementation by @capriots in #18962
– [SPU ASMJIT] Vectorized 16-bit variable shifts for SSE2 targets by @WalterKruger in #18911
– SPU LLVM: Use ARM USHL for masked infinite shifts by @Whatcookie in #18816
– PPU LLVM: Fix core_lock locking by @elad335 in #18774
– SPU: Comparisons via multiplications for ARM, checksums via absolute difference, and rolled loops by @Whatcookie in #18824
– Fallback unsupported database SPU decoder on ARM64 by @cicerohellmann in #18651
– sysinfo.cpp: Relax TSC calibration constraints by @elad335 in #17909
– cellSysmodule: fixup by @capriots in #18977
– Fix VSH on ARM64: Memory management fixes by @elad335 in #18707
– cellSysmodule: fixup (part 2) by @capriots in #18978
– Move unsafe raw pointer write_to_ptr and read_from_ptr to write_to_ptr_unsafe and read_from_ptr_unsafe by @Megamouse in #18975
– Update Submodules by @Megamouse in #18980
– Extra logging for GUI notifications by @RipleyTom in #18988
– input: fix arrow key mapping roundtrip on macOS ARM by @Icnopandaz in #18920
– Bump global savestate version by @capriots in #18989
– VK: fix video_out_calibration_pass::get_fragment_inputs by @Megamouse in #18952
– Add OpenCV 5 Support by @hcorion in #18998
– Update fusion to 1.3.0 by @Megamouse in #19008
– Update curl to 8.21.0 by @Megamouse in #18943
– Fix PS1 classics shortcuts by @Megamouse in #19012
– [SPU LLVM] Refactor SELB to improve readability by @WalterKruger in #19002
– [SPU ASMJIT] Optimize xfloat compares and multiply by @WalterKruger in #19025
– IDM: Optimize search for concurrency by @elad335 in #19027
– sys_fs: Fix ENOTDIR check for paths ending with /dot or /dotdot by @elad335 in #19028
– Update fusion to 1.3.1 by @Megamouse in #19030
– PPU LLVM: Optimize vector NaN handling for AVX512 by @Yahfz in #19033
– PPU LLVM: Optimize vector denormal handling for AVX512 by @Yahfz in #19034
– [SPU LLVM] Replace constant float checks with LLVM’s KnownFPClass analysis by @WalterKruger in #19043
– PPU LLVM: Accelerates NJ handling in FTZ environment by @elad335 in #19040
– metainfo: Update screenshot preview by @AniLeo in #19044
– qt: Fix save manager crash when deleting multiple entries by @ProtoJay4789 in #19019
– Revert SPU Reduced Loop Optimizations to fix Arm64 regressions by @elad335 in #18979
– SPU: Revert LQX/STQX reduction by @elad335 in #19050
– [SPU LLVM] Use select in FMA to shorten its dependency chain by @WalterKruger in #19052
– pad settings: Fix for clearing bindings by @Megamouse in #19054
– Add more info to VFS exceptions by @Megamouse in #19055
– [macOS] Update to the latest MoltenVK 1.4.2 prebuilt by @schm1dtmac in #19059
– atomic: Fix BSD compilation by @AniLeo in #19061
– LLVM: Improve v128 constant extraction by @elad335 in #19064
– Fix: get_known_bits fix by @RipleyTom in #19051
– cli: allow to boot last savestate of a game by @Megamouse in #19067
– Qt: add guest memory dump utility by @canersaka in #19068
– Qt: move guest memory dump code to own class by @Megamouse in #19070
– rsx: Clean up the shader interpreters by @kd-11 in #19084
– Update llvm to 22.1.8 by @Megamouse in #16807
– rsxfp/interpreter – Implement missing texture functionality by @kd-11 in #19090
– Fix package install failure warning message by @Megamouse in #19096
– Fix recording encoder selection by @Megamouse in #19063
– Fix DLC installation by @Megamouse in #19097
– SPU/ARM64: Fix PS1 classics and RawSPU Games by @elad335 in #19088
– vk: remove unused setting by @Megamouse in #19099
– Replace some abort() calls with fmt::throw_exception by @Megamouse in #19094
– Remove outdated LLVM ifdefs by @Megamouse in #19092
– Fix value assignment in iota16 by @isztldav in #19105
– Fix 1st regression on black textures in Sonic Generations by @digant73 in #19091
– Add game invite handling to friends overlay #18417 by @primetime43 in #19108
– UI/UX: Add Categories Broken and Completed to Filter Game List by @Darkhost1999 in #19106
– add missing vids and pids for wii MPA devices by @sanjay900 in #19111
– Allow to skip empty strings in fmt::merge by @Megamouse in #19110
– rsx: Implement proper fix for incomplete image reconstruction in the texture cache when WCB is disabled by @kd-11 in #19104
– rsx: Fix interpreter error spam due to incorrect format lookup by @kd-11 in #19113
– ci/bsd: Update FreeBSD to 14.4, use LLVM 22 while keeping clang-devel by @AniLeo in #19116
– rsx: fix some msvc warnings by @Megamouse in #19115
– [SPU LLVM] Shorten FI’s dependency chain and fix SNaN clamping issue by @WalterKruger in #19107
– ci/bsd: Compile with clang 22 by @AniLeo in #19119
– overlay: Add trophy list sorting options by @Vishrut2403 in #18965
– rpcs3_version: Bump to 0.0.42 by @AniLeo in #19121
Pour faciliter son usage, une interface externe est disponible. Elle permet de lancer des jeux, configurer les options, et suivre les performances via une interface visuelle simple et intuitive.
Les changements: – [macOS] Add zar file type to info.plist
– initial zar support (#408)
– Pass the game argument to emulator cores before custom arguments instead of after (#405)
– possible crash at startup fix
– New Crowdin updates
– Misc fixes