Ryu r6 (2026/10/08) is released. A self-contained DLSS 5 graphics stack on top of vanilla Ryubing: upscaling + DLAA in one NGX evaluate, in-game Neural Rendering, and DLSS-G frame generation up to 2x/3x/4x. Upstream master merges in automatically every Monday; every push builds.
KytyPS5 Changelog:
Prebuild Shader Cache from ROM. Game list right-click > Cache Management > "Prebuild Shader Cache from ROM..." reads the game's files with the selected update applied (no mods), finds NVN shader containers (BNSH, standalone or inside .bfsha, .ptcl, SARC/.arc and NSO files, and agl SHARCB archives) through zstd (including game dictionaries such as the ZsDic of Tears of the Kingdom, TOTK), SARC, Yaz0, zlib, LZ4 and HAL .cmp wrappers, translates the vertex/fragment pairs offline and appends them to the game's own shader cache. Existing entries are never modified, and the previous guest/shared files are backed up under cache/shader/prebuild/backup-* (the latest backup is kept). A manifest makes a second run for the same title, build and update a no-op unless forced, a rerun on a cache that has been played adds only programs it does not already hold, and a cache that fails validation is refused and left untouched. It needs prod.keys and the shader cache enabled for the game. Cancelling is cooperative and keeps the cache valid. Starting a game is blocked while it runs, and the menu item is disabled while a game runs. The new menu and dialog strings are localized in 20 languages.
Compiled for your GPU. On Windows with the Vulkan backend, a background helper process then runs the real shader cache loader with the configured GPU and compiles the new programs into the GPU-specific host cache, so the next launch loads them instead of compiling them. The helper runs with DLSS, frame generation and Neural Rendering off. On other platforms or backends this step is skipped and the first launch translates the programs itself.
Command line. --prebuild-shaders
Unsupported containers are listed. When a ROM holds container families that cannot be read yet, the result names them: Unity bundles and SerializedFiles, Trinity onepack (Oodle, used by Pokémon Scarlet/Violet) and GFLXPACK, Monolith xbc1/arh1/.wishp, Unreal Engine 4 .pak, CRI CPK and Level-5 VFS3.
Masked vertex-attribute matching is now on by default. Shader cache entries are matched on the attribute types of the vertex inputs the shader actually reads, not on all 32 slots. Unused slots do not affect the generated code, and without the mask ROM-generated programs essentially never match (earlier research: 99/99 mismatches only in slots 16-31). This applies to every game. RYUJINX_SHADER_INPUT_MASK=0 restores the full 32-slot check.
Translator query. IGpuAccessor has a new default method, QueryTextureQuerySamplerType, for the sampler type of a texture-size query. It forwards to QuerySamplerType, so generated code and CodeGenVersion are unchanged; the offline accessor overrides it to answer only that query.
Measured on Tears of the Kingdom (v1.2.1, fresh test profile, a build before SHARCB support). Prebuilding 1,381 BNSH containers gave 22,188 pairs and 44,376 programs in about 2 minutes. The first launch translated them in 6 min 40 s; later launches load them from the 1.4 GB host cache in about a minute. In one 10-minute play session without a crash, 562 prebuilt programs were hit by real draws and 163 graphics plus 32 compute programs were still compiled at runtime, so 77.5% of that session's graphics programs came from the prebuild; all 262 stages added at runtime were code that is not in the BNSH containers.
SHARCB archives and state de-duplication (validated offline only). The agl SHARCB archives add 3,953 pairs for TOTK. Of the 163 runtime graphics programs above, up to 140 now have a matching prebuilt record, a projected graphics coverage of about 96.8% that has not been replayed in game. Compiling those 3,953 programs for the GPU took 97 s with the helper peaking at about 6.5 GB (the full TOTK build peaks at about 7.3 GB); a fresh TOTK cache with SHARCB holds 52,282 programs and a host cache of about 1.46 GB. Records are now written with a canonical graphics state and de-duplicated on it, so a rerun on a played cache adds only new content (an earlier development build of this branch duplicated 26,141 records there). On Echoes of Wisdom, merged into a copy of an existing cache, 970 of 970 graphics stages of that cache were reproduced from the ROM, a rerun was a no-op, and four kinds of truncated or corrupted caches were refused with their files unchanged.
The regression harness tests/ShaderPrebuild and the notes in docs/rom-shader-prebuild.md accompany these changes; the harness is outside Ryujinx.sln and is not shipped. The research seed generator tools/TotkTextureSeed is retired in favor of the in-app prebuild.
Known limitations: compute shaders are not prebuilt (all 32 compute programs TOTK compiled in the session above exist in the ROM; this is future work). 19 TOTK programs are rejected because a vertex shader queries a texture size and no sampling instruction shows the texture type. Vulkan pipelines are still created on first use, which remains a source of stutter. Every launch loads the whole cache (about a minute for TOTK). The GPU step needs Windows, Vulkan and several GB of RAM, and it was timed only on the SHARCB increment (97 s); a first launch after a full prebuild plus the GPU step has not been measured. Only some engines are supported. A title whose update changes shader code must be prebuilt again after switching updates. The depth mode is not known before play, so a fresh prebuild writes both. The play-session figures come from a single TOTK session, and the SHARCB and de-duplication changes have not been played in game. No frame-time or stutter improvement is claimed.
Download:Ryu r6 (2026/10/08)
Source:Here
2026-10-12
Tags:
Console,
NintendoSwitch,
Official_Build,
Ryu

NewsLetter
Bookmark
Submit News
Email Us

Random Related Topic
0 Comments
Post a Comment
Can't post a comment? Try This!