Commit Graph
2 Commits
Author SHA1 Message Date
seedds d035e37c37 Depth mode per game at run time: Link's Awakening's outdoor blur fixed; README screenshots of Engage, 13 Sentinels and Link's Awakening
- NVN's depth mode is runtime state: Mario, Metroid Dread, Super Mario 3D
  World and Breath of the Wild keep near = -w (GL); Link's Awakening,
  13 Sentinels and Engage set near = 0. The translator rewrote z for GL
  in every vertex shader, so near = 0 games had all depths in 0.5..1 and
  depth-to-distance effects were wrong: Link's Awakening's depth of field
  blurred the whole screen outdoors.
- The translator no longer rewrites z; dmsh_build.py (vs_depth) writes two
  entry points into every vertex library, main0 with the GL rewrite (the
  same arithmetic as before) and main0_z without; the host picks one from
  the mode the game sets (mtl_set_depth_zero, shader_load). No per-game
  setting; a red line if the mode changes after vertex shaders loaded.
  Metal function constants were measured at about 2.4 ms of
  specialization per vertex shader, so two entry points instead.
- New translator dll (Ryujinx dlls unchanged), lock and chain versions for
  every profile; Mac libraries and c1_full.tsv rebuilt for Link's
  Awakening, Engage, 13 Sentinels and Mario Wonder (Breath of the Wild,
  Super Mario 3D World and Metroid Dread follow).
- Checked on the Mac: Link's Awakening outdoors (from a save in Mabe
  Village) has a sharp middle band again; Mario Wonder's title renders
  the same as before (differences only in animation).
- README gallery: Engage, 13 Sentinels and Link's Awakening recaptured
  with this build.
2026-10-18 00:02:28 +08:00
seedds 7fdf6dccbe README screenshots of every game; NSP script packs unknown games with a provisional profile; Link's Awakening stencil copy and outdoor shaders
- README: a gallery with one picture per game (docs/images): iPhone shots
  with the virtual gamepad for Mario Wonder, 3D World, BotW and Link's
  Awakening; Mac shots (captioned) for Engage, Metroid Dread and 13
  Sentinels. Link's Awakening is now listed as in testing on an iPhone.
- scripts/build_ipa_from_nsp.py: a game with no profile is surveyed, then
  gets a provisional profile guessed from the survey in
  <NSP folder>/<id>_build/profile/<id>/ (outside the repo, reused on the
  next run) and a best-effort IPA; --survey-only keeps the old behaviour.
  game.py searches DM_GAMES_DIR after dm/games; the host Makefile reaches
  such a profile through a symlink; build_ipa.sh finds it through game.py.
  zip_store also stores files whose headers say they are compressed.
- copy_t2t_draw: depth-stencil copies now carry the stencil ([[stencil]]
  export from an X32_Stencil8 view). Link's Awakening's occlusion pass
  tests stencil bit 1 of its quarter-size depth copy, whose stencil was
  the new texture's undefined content.
- Link's Awakening: four outdoor shaders with the foliage shader's input
  loop failed on the iPhone (Half2 / normalized formats); listed in
  shader_facts_manual.tsv. Chain c4995bb3161c.
2026-10-17 21:04:33 +08:00