Vixen
dd8b0a81
csharp
public interface IWaterSplineSource

Where a body's curve comes from.

Read the guide page for this →

Remarks

A seam rather than a reference to the asset system, for the reason IWaterGround is one: a test's spline is a literal, an editor's is a document being dragged, and a game's is a loaded .vxspline — and the fold has no business knowing which.

⚠ Answering null is not an error, it is a body whose spline has not loaded. A fold that threw would fail a frame during streaming; a fold that silently skipped would leave an author looking at dry ground with nothing to read. It skips and counts — UnresolvedBodies — and it asks again on the next fold, which is what makes "not loaded yet" different from "does not exist". A source that will never have the curve is expected to remember that itself and answer cheaply, which is what AssetWaterSource's failed entries are for.

Methods (1)

  • Spline? SplineFor(string name, in Matrix4x4 placement)

    The curve a body names, or if it is not available.

Used by (9)

  • AssetWaterSourceVixen.Engine.Renderer
  • SquareVixen.Rendering.Water.Tests
  • SquareVixen.Graphics.Golden.Tests
  • SquareVixen.Rendering.Water.Tests
  • StraightVixen.Rendering.Water.Tests
  • StreamingVixen.Rendering.Water.Tests
  • WaterZoneSystemVixen.Rendering.Water
  • PondSplineVixen.Editor.Assets.Tests
  • SplineAdapterVixen.Editor.App