Fail fast on missing terrain assets and recover empty renders
This commit is contained in:
@@ -26,3 +26,17 @@ This pass did not launch a Minecraft client, use Playwright, or use the Computer
|
||||
The subsequent renderer changes replace per-block model transformation and texture loading with cached state templates, numeric section bitsets, bounded typed geometry buffers and spatial meshes. WebP output avoids an intermediate PNG encode, and processed-image uploads run in a four-request pool. GPU selection is automatic with software fallback on initialization failure.
|
||||
|
||||
No tests, browsers or benchmarks were run for this change at the user's request. Its speedup and image fidelity on the 2,651,888-block Mac export are unverified. The new per-stage timings, blocks-per-second logs and geometry counts provide measurements for the next real run.
|
||||
|
||||
## Empty-render recovery
|
||||
|
||||
The subsequent Mac report showed 2,651,888 input blocks but zero meshes, emitted faces and geometry bytes. Ordinary vanilla block models and fluid textures were all unavailable. The worker previously skipped those failures and completed sky-only previews. The fix prepares missing/incomplete assets before rendering, checks extraction completion, and rejects zero geometry or sky-only downward/map output.
|
||||
|
||||
After the user authorized tests again, the following checks passed on Windows using the pinned Playwright 1.56.1 / Chromium 1194 product renderer:
|
||||
|
||||
- All 27 unit tests, including missing/interrupted asset caches, missing textures, corrupted client checksums, negative-coordinate occupancy, geometry-buffer growth, sky-only WebP rejection, and reprocessing safety/rollback.
|
||||
- TypeScript checking with incremental caching disabled.
|
||||
- A 4,913-block grass/water/tree/building fixture: 29 meshes, 6,521 emitted faces, no unsupported states, valid WebP faces and visible downward terrain at all five viewpoints.
|
||||
- The cached real Paper export: 17,738 blocks, 31 states, 71 meshes, 62,727 emitted faces, no unsupported states, valid map/cubemap images and visible downward terrain at all 12 viewpoints.
|
||||
- A nonexistent block model failed with an explicit missing-assets error instead of completing an empty draft.
|
||||
|
||||
Both worker renders closed their Chromium processes automatically. No Minecraft server/client or website UI automation was started. Outputs and reports are under `.cache/renderer-regression`; `npm run test:renderer` reproduces the fixture, and a cached export folder can be supplied as an argument. The full 2,651,888-block dataset and Intel Metal/macOS behavior still require regeneration on the Mac. No speedup claim is inferred from the small Windows fixtures.
|
||||
|
||||
Reference in New Issue
Block a user