Skip to main content

Module streaming

Module streaming 

Source
Expand description

Streaming + procedural-generation hooks.

S7 of the scene-graph port (see PORTING-SCENE.md § S7). This module lands incrementally:

  • S7.0 (this commit): the ChunkGenerator trait and the synchronous [Grid::ensure_chunk_generated] helper. Generators are plain Box<dyn ChunkGenerator> — no rayon, no channels, no async dispatch yet.
  • S7.1: per-grid StreamRadius { r_active, r_evict } policy and Scene::pump_streaming_sync(camera).
  • S7.2: per-chunk version counter for the edit-vs-generate race.
  • S7.3: async dispatch through a dedicated rayon pool + crossbeam_channel.
  • S7.4: render integration (pending-chunk reads, billboard cache invalidation on stream-in).
  • S7.5: roxlap-cavegen adapter as the first concrete generator.
  • S7.6: streaming demo.

The Send + Sync bound on ChunkGenerator is needed by S7.3 but is cheap to require now — generators are typically stateless noise configs that already satisfy it.

Structs§

StreamRadius
Per-grid streaming activity / eviction radii (S7.1).

Traits§

ChunkGenerator
Pluggable per-chunk procedural generator.