Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commit3bb1da2647

README.md

streaming

What the engine has resident of a world's detail right now, and why a piece of it is not on screen.

Four systems decide how much of a world stands at any moment, and each keeps its own answer: terrain's LOD cut, a voxel world's chunk meshes, spatial streaming's cell store, and mesh LOD's level selection. This namespace reads all four.

  • streaming.observe() — the whole reading: terrain, voxel, cells, levels, and the totals those rows sum to. Built by the call and published as its last act, so /zero/runtime/observations/streaming serves the same document.
  • streaming.whyNotDrawn(subject) — one reason from a closed set, with a detail line naming what it is about. The subject is an entity, a voxel chunk ({ entity, chunk }), a LOD level ({ entity, level }) or a streaming cell ({ cell }).
  • streaming.reasons() — every reason whyNotDrawn can answer with.
  • streaming.terrain() / streaming.voxel() / streaming.cells() / streaming.levels() — one axis at a time.

A voxel chunk's state comes from the mesher's record of what the build asked the device for, the engine's own record of what it did with the dispatch that build issued, and the counters the shader increments as it writes. meshed means geometry is on the device rather than that a dispatch was accepted, and a chunk whose mesh build was dropped reads as buildFailed carrying the engine's message, rather than as a world with the right block count that draws nothing.