The Liquid Shader exposes many properties, and finding a believable combination by hand takes time. QuickLiquidSetup.cs lets you skip that step: it maps five intuitive controls onto the whole set of shader properties, so a plausible liquid is only a couple of sliders away.
Attach the component to the same GameObject as your Sprite Shape Renderer via Add Component > Project GAMEDEV > Essential 2D Shaders > Quick Liquid Setup. Changes apply immediately, both in the Editor and in Play mode.
Movement Speed
The base speed of the whole liquid – the flow, the waves, the ripples, and the patches. Each layer applies its own multiplier on top of this value, so they never move in lockstep. Set it to 0 to bring the liquid to a complete standstill.
Movement Direction
The primary direction of movement, in degrees (0 to 360). 0 moves along the +X axis; 90 moves along the +Y axis. The waves and patches are automatically offset by a few degrees from this direction, which keeps the surface from looking mechanical.
Viscosity
How thick the liquid is (0 to 1). Thin liquids such as water move quickly, with fine, lively surface detail. Thick liquids such as lava, honey, or tar crawl along, with a heavier, slower surface response and more pronounced surface relief.
Volatility
How energetic the surface is (0 to 1). Low values produce an almost still surface; high values produce tall waves, strong ripples, and pronounced vertex displacement.
Patch Preset
All five settings are also available from code. Assigning any of them re-applies the setup immediately, which makes it easy to,
for example, have lava thicken and slow down as it cools. The component lives in the
ProjectGamedev.Shaders.Essential2DShaders.LiquidShader namespace.
quickLiquidSetup being the Quick Liquid Setup component of your liquid, change the settings like so:quickLiquidSetup.MovementSpeed = 0.5f;
quickLiquidSetup.MovementDirection = 90f;
quickLiquidSetup.Viscosity = 0.9f;
quickLiquidSetup.Volatility = 0.25f;
quickLiquidSetup.Patches = QuickLiquidSetup.PatchPreset.Crust;
public float MovementSpeed
public float MovementDirection
public float Viscosity
public float Volatility
public QuickLiquidSetup.PatchPreset Patches