Vixen
c7401864
csharp
public interface IWaterGround

Where the ground is, for a field that has to know what its water sits on.

Read the guide page for this →

Remarks

⚠ The terrain is a first-class producer, not a component somebody remembers to attach — [35 § D3](../../docs/plan/35-water.md#d3-the-water-info-texture-is-the-interchange-and-it-is-a-zone-render). Unreal's UWaterTerrainComponent is opt-in per actor, which is why "my water has no depth" is a common question there with a non-obvious answer. Here a zone asks whatever ground it has, and a mesh contributes only if it says so explicitly — the opposite default, because a terrain always wants to be the riverbed and a lamp post never does.

An interface rather than a reference to Vixen.Terrain, because the kernel opens no device and takes no dependency it does not need: a test's ground is a lambda, a server's is a heightfield, and neither is the renderer's.

Methods (1)

  • float HeightAt(Vector2 ground)

    How high the ground is at a place, in world units.

Used by (6)

  • BeachVixen.Water.Tests
  • FlatWaterGroundVixen.Water
  • WaterFieldVixen.Water
  • WaterZoneStateVixen.Water
  • WaterZoneSystemVixen.Rendering.Water
  • GroundAdapterVixen.Editor.App