public readonly record struct WaterRippleSettingsThe shape and the limits of a ripple simulation.
Remarks
Every one of these is a bound, and that is the point — [35 § D12](../../docs/plan/35-water.md#d12-ripples-are-a-sliding-window-height-field-and-they-are-displacement-not-geometry). § Risks calls this "an unbounded feature wearing a bounded name": a fixed resolution, a fixed step and an explicit injection budget are what keep it from becoming a frame-time cliff in a busy scene, and the moment somebody proposes making the window adaptive it has failed the document's own left-column test.
Fields and properties (8)
public float ExtentHow wide and deep the window is, in metres.
public int ResolutionHow many texels along each axis.
public float SpeedHow fast a disturbance travels across the field, in metres a second.
public float DampingHow fast a disturbance dies away, per second.
public float EdgeFadeHow wide the band is over which the edge is damped to nothing, in metres.
public int InjectionBudgetHow many injections a step will accept before it starts reporting overflow.
public static WaterRippleSettings DefaultA 64-metre window at a quarter of a metre a texel — the CPU reference's rate.
public float MetresPerTexelHow many metres apart two neighbouring texels are.
Methods (2)
public float MaximumSpeed(float deltaTime)The fastest a disturbance may travel for a step of a given length to be stable.
public string? Validate(float deltaTime)Why this simulation cannot be run, or if it can.
Used by (7)
- WaterDebugDrawVixen.Rendering.Water
- WaterDebugDrawTestsVixen.Rendering.Water.Tests
- WaterDisturbanceTestsVixen.Water.Tests
- WaterRippleSeamTestsVixen.Graphics.Golden.Tests
- WaterRippleSimulationVixen.Rendering.Water
- WaterRippleTestsVixen.Water.Tests
- WaterRipplesVixen.Water