Vixen
c7401864
csharp
public sealed class TerrainSceneSource

The frame's terrains, written by the extraction system and read by the compositor node.

Read the guide page for this →

Remarks

The stable object between two things with different lifetimes. The extraction system is registered once when the loop is assembled; the compositor node is rebuilt on every document load. Neither can hold the other, so both hold this — ForwardLightingRenderFeature.Lights is the same arrangement for the same reason, and TerrainFactory.Scene is how the node's end gets wired.

⚠ Rebuilt every frame rather than mirrored. A terrain has no handle to reconcile: the list is cleared and refilled, which costs a walk over the handful of entities that carry ground and removes the class of bug where a destroyed entity leaves a landscape standing.

Fields and properties (4)

  • public List<TerrainSceneEntry> Terrains

    This frame's terrains, in extraction order.

  • public List<FoliageSceneEntry> Foliage

    And its foliage volumes, on the same terms.

  • public IMeshSource? Meshes

    What turns a foliage type's mesh reference into geometry, or null.

  • public ITerrainTextures? Textures

    What turns a layer's texture reference into something to sample, or null.

Used by (9)

  • BuiltPbrShowcase.Frame.Tests
  • TerrainCasterRendererVixen.Rendering.Terrain
  • TerrainCasterTestsVixen.Rendering.Terrain.Tests
  • TerrainExtractionSystemVixen.Rendering.Terrain
  • TerrainFactoryVixen.Rendering.Terrain
  • TerrainNodeTestsVixen.Rendering.Terrain.Tests
  • TerrainSceneRendererVixen.Rendering.Terrain
  • TerrainVelocityTestsVixen.Rendering.Terrain.Tests
  • WorldRendererVixen.Engine.Renderer