aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/fparkan-game/src/main.rs12
-rw-r--r--docs/tomes/05-render.md11
2 files changed, 14 insertions, 9 deletions
diff --git a/apps/fparkan-game/src/main.rs b/apps/fparkan-game/src/main.rs
index b93eb39..f229d95 100644
--- a/apps/fparkan-game/src/main.rs
+++ b/apps/fparkan-game/src/main.rs
@@ -1012,7 +1012,11 @@ impl Args {
let mut frames = 1;
let mut backend = RenderBackendMode::Planning;
let mut load_progress = None;
- let mut preview_roots = NonZeroUsize::MIN;
+ // A native static-Vulkan invocation is the usable mission preview, so
+ // its default scope covers every root. `PreviewRoots` is clamped by the
+ // runtime to the decoded mission length; an explicit --preview-roots N
+ // remains available for bounded diagnostic work.
+ let mut preview_roots = NonZeroUsize::MAX;
let mut legacy_camera_capture = None;
let mut iter = args.iter();
while let Some(arg) = iter.next() {
@@ -1224,7 +1228,7 @@ mod tests {
frames: 3,
backend: RenderBackendMode::Planning,
load_progress: None,
- preview_roots: NonZeroUsize::MIN,
+ preview_roots: NonZeroUsize::MAX,
legacy_camera_capture: None,
})
);
@@ -1247,7 +1251,7 @@ mod tests {
frames: 1,
backend: RenderBackendMode::StaticVulkan,
load_progress: None,
- preview_roots: NonZeroUsize::MIN,
+ preview_roots: NonZeroUsize::MAX,
legacy_camera_capture: None,
})
);
@@ -1305,7 +1309,7 @@ mod tests {
frames: 1,
backend: RenderBackendMode::Planning,
load_progress: Some(PathBuf::from("target/probe.txt")),
- preview_roots: NonZeroUsize::MIN,
+ preview_roots: NonZeroUsize::MAX,
legacy_camera_capture: None,
})
);
diff --git a/docs/tomes/05-render.md b/docs/tomes/05-render.md
index e23a182..7bdabf4 100644
--- a/docs/tomes/05-render.md
+++ b/docs/tomes/05-render.md
@@ -972,11 +972,12 @@ of the first-root static-preview bridge, not a claim that the two games' full
mission renderers are compatible.
The preview now has an explicit root-prefix contract. `--preview-roots N`
-prepares the first non-zero `N` TMA roots for the opt-in static Vulkan path;
-the default remains one root. Normal mission loading remains full and
-transactional, so this is not a hidden relaxation of gameplay validation. The
-previous all-root probe timed out at `Graph`; the prefix makes broader scene
-work measurable without pretending that a bounded preview is the full game.
+prepares the first non-zero `N` TMA roots for the opt-in static Vulkan path.
+Without that diagnostic limiter, the static Vulkan path now requests every TMA
+root (the runtime clamps the request to the decoded mission length), so a
+normal native preview no longer silently displays just root zero. Normal mission
+loading remains full and transactional; the prefix is retained for bounded
+investigation rather than as a hidden relaxation of gameplay validation.
### Shared terrain/root diagnostic frame