Files
kuraeowandClaude Opus 5.5 a14ed41d91 Game resolution: the output (canvas, UI, swapchain) and the scene at any size, FSR 1 on the present
As totk-pc-recomp (MIT), with MacNativeGames' patch sites (MIT): resolution= in ultratears.cfg sets the size the game
composes its frame in (1280x720 .. 7680x4320, or display), scale= its 3D scene in % of that (unset: the game's 5/6);
the game renders at those sizes and its own FSR 1 (EASU) scales the scene to the output.
- Code patches: the scene size the renderer reads (main+0x585e50 / 0x585e60, divided by the output width / 1920 that
  1.4.3 applies), the swapchain size nnMain asks for (main+0xbdb584) and the display configuration's canvas (before
  main+0x3dcb28).
- The render-target heap: the HeapDef table is served from memory with DynamicTextureAllocatorMem and Graphics grown
  by the shipped size times the pixel ratios above 1080p / 900p (zstd, linked), and the application pool grows by the
  same; without it the game keeps its own sizes.
- src/vk/fsr.c: FSR 1 EASU + RCAS (third_party/fsr1, AMD's and totk-pc-recomp's shaders) when the window is larger than
  the game's output, compute shader objects; upscale=bilinear and sharpness=0..100 in ultratears.cfg.
- The launcher: Resolution (1280x720, 1920x1080, 2560x1440, 3840x2160, as the screen) and Scene scale (50..200 %).
Checked on the Depths save: 1280x720 at 100 % (Steam Deck), 2560x1440, 3840x2160, 1080p at 150 %: the targets at the
sizes asked, a right picture (screenshots), no crash; FSR with the Vulkan validation layer clean.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 12:17:25 +03:00

2.3 KiB

Third-party code in this repository

Every piece keeps its license; the license file sits next to the code. All are compatible with the port's GPL-3.0-or-later.

Folder What From License
maxwell_shader/ The Ryujinx 1.3.2 shader translator, unchanged apart from the patches below (Ryujinx Team and contributors) (Ryujinx.Graphics.Shader, Ryujinx.Common, Spv.Generator) MacNativeGames vendor/ryujinx @b75be8c (Ryujinx 1.3.2, unmodified there), with the patches of shader_translator/patches/ applied here (0001-0004 MacNativeGames', 0005-0006 ours) MIT (maxwell_shader/LICENSE.txt)
fsr1/ AMD FidelityFX Super Resolution 1: ffx/ffx_a.h, ffx/ffx_fsr1.h (AMD, unchanged) and totk-pc-recomp's compute shaders around them (fsr_easu.comp, fsr_rcas.comp) with their SPIR-V (*_spv.h, generated by its tools/build_shaders.py); the present's upscale (src/vk/fsr.c) totk-pc-recomp runtime/shaders, runtime/*_spv.h @c3b9a4e MIT (fsr1/ffx/LICENSE.txt, fsr1/LICENSE-totk-pc-recomp.txt)
shader_translator/ MacNativeGames' totk_xlate: the service around that translator that turns the game's NVN shaders into SPIR-V; built as ultrs-shaders.exe by tools/build_xlate.py MacNativeGames games/totk/tools/totk_xlate @b75be8c, without its macOS build script MIT (shader_translator/LICENSE)

Elsewhere in the tree: src/gfx/tex/bc7enc/ (bc7enc and rgbcx, Rich Geldreich, MIT) and the files ported from MacNativeGames (MIT), LASRecomp (MIT) and B2recomp (GPL-3.0), each named in its header comment; tools/shaders/inventory.py (MacNativeGames, MIT). The launcher's fonts in assets/launcher/fonts/ (compiled into the launcher by tools/build_launcher.py): Inter (The Inter Project Authors) and Montserrat Alternates (The Montserrat Project Authors), both SIL Open Font License 1.1, their license texts next to them (OFL-*.txt).

Downloaded when the launcher is built (tools/build_launcher.py: into deps/launcher/, not in git; each file pinned to its upstream commit with its size and SHA-256 in tools/deps.json, "launcher"), unchanged: Dear ImGui 1.91.9b (Omar Cornut and contributors; the core and the SDL3 / SDL_Renderer3 backends; MIT), NanoSVG (Mikko Mononen; zlib) and stb_image.h 2.30 (Sean Barrett; MIT or public domain). Their licenses go into the builder package's licenses/.