Runtime code under Assets/ModernWater2D/Runtime/.

C#

ModernWater2D

Main component. Manages render mode, materials, manager lifecycle, subsystem coordination.

→
C#

WaterSimulation

Abstract base. Simple (object-space) and Advanced (world-space) implementations.

→
SHADER

water2d/waterg

Shader Graph water shader. Composites all effects.

C#

ReflectionsSystem

Manages reflection cameras. Three instances: TD, PL, RM.

→
C#

ObstructorManager

Renders obstructors to depth texture for edge data and simulation.

→
C#

SurfaceRenderingManager

Captures below-water scene for wet surface effects.

EDITOR

ModernWater2DEditor

Custom inspector with foldouts, undo, contextual help.

→
C#

WaveSimulation

Mesh surface waves. Spring physics, splashes, buoyancy.

→
C#

ModernWater2DSettings

Serializable settings container with sub-settings.

Key Runtime Folders

FolderContents
modern water 2d/ModernWater2D.cs, editor, settings classes.
Reflections/ReflectionsSystem, camera setup.
Obstructions/ObstructorManager, Obstructor component.
Surface_Simulation/WaterSimulation base, Simple and Advanced.
Surface Renderer/SurfaceRenderingManager.
Spline/Spline-based water mesh generation.
parents class/WaterCryo reactive property system.
Utils/Layer utilities, texture helpers.