Table of Contents

Ripple Effect

Ripple effect is quite advanced and computation heavy feature.
You may want to be careful with its quality and maybe even expose it to game settings.

Ripple consists of few parts:


Configure URP Renderer

In most cases you will want to use separate, simpler renderer for ripple.
In asset files you will find predefined Dragon Water Ripple Renderer.
Assign it to every URP render pipeline asset at same index and configure it in Dragon Water Config window.


Create Projector

Projector internally works as separate camera used to draw casters at specific height level for water surfaces and wave profiles.
You can have many of them on scene, but you shouldn't - have as few of them as possible and reuse them between water surfaces when possible to save performance.

Make sure its height position (Y component) is equal to your water surface level (usually 0 for oceans).
This height level will be drawn as purple plane on scene gizmo.
Projector placed too high or too low will make ripple appear too soon or too late. If you have multiple water surfaces at same height level - make and reuse one projector for this level.
Also, make sure its rotation is always default, zero-rotation in global space, otherwsie it will not work properly.


Create Caster

Casters are like mesh renderers but only for projector cameras.
You create them in similar way to Cutout Volumes.

Method #1:

Method #2:



Configure Wave Profile

Technically ripple is a linear, float variable from 0 to 1.
0 means no ripple and 1 means full riple (caster geometry at full depth).

Because you can reuse projector between different surfaces with different wave profiles, you can configure how ripple is simulated in each wave preset (see Wave Profile).


Configure Material Profile

Similar to wave profiles, you can configure how ripple is actually displayed visually on surface in Material Profile.

As we already know, ripple is a single float variable within 0-1 range.
It's used as input for every section here in material profile.


Assign Projector to Surface

Final step is to actually make your ripple visible.
Select your water surface, enable ripple and assign projector.
One surface can use only one ripple projector, but you can (and you should) reuse one projector between multiple surfaces as long as they are on similar height level in world-space coordinates.