[AddComponentMenu("Stylized Water 2/Dynamic Water Effect")]
publicclassDynamicEffect:MonoBehaviour
{
#pragmawarningdisable108,114//New keyword
publicRendererrenderer;
#pragmawarningrestore108,114
[Tooltip("Higher layers are always drawn over lower layers. Use this to override other effects on a lower layer.\n\nThis is effectively the render queue")]
publicintsortingLayer=0;
publicfloatdisplacementScale=1f;
publicfloatfoamAmount=1f;
publicfloatnormalStrength=1f;
privatevoidReset()
{
renderer=GetComponent<Renderer>();
if(!renderer)
{
DestroyImmediate(this);
thrownewException("Component must only be added to a GameObject with a renderer (Mesh Renderer, Trail Renderer, Line Renderer or Particle System)");
}
}
privateMaterialPropertyBlock_props;
publicMaterialPropertyBlockprops
{
get
{
//Fetch when required, execution order makes it unreliable otherwise