KWS2 is an advanced water system for Unity, built around a physically-based real-time simulation. KWS2 simulates actual wave-based flow, interactions with dynamic objects, and terrain-driven behavior.
For more details about this asset from the Unity Asset Store, please visit: Click Here
This is a paid asset, but now you can download the “KWS2 Dynamic Water System” for FREE. Please note that this package is provided solely for learning purposes or to test the product before purchase, and not for commercial use.
KWS2 Dynamic Water System v1.0.7 (18 Sep 2025) (Latest version)
“If possible, please buy the package to support the developer”
Description
KWS2 is an advanced water system for Unity, built around a physically-based real-time simulation.
Unlike many static or purely visual solutions, KWS2 simulates actual wave-based flow, interactions with dynamic objects, and terrain-driven behavior.
Fully customizable through zones and optimized as far as technically possible for large-scale water environments, with support for natural scenarios like calm-to-moderate oceans, small waterfalls, and realistic river flows.
Ideal for projects requiring believable, performance-friendly water, from open seas to mountain streams, without targeting exaggerated extremes 🙂
Compared to the first version KWS Water System, some outdated features have been removed, while others have been significantly improved and reworked from the ground up.
KWS2 is a completely separate asset and does not require KWS1 to work.
An upgrade discount (~40%) is available for existing KWS1 users.
Supported pipelines: Built-in, URP, HDRP, including Unity 6
Mobile platforms are not supported due to compute shader limitations and heavy real-time rendering features. In future updates, lighter baked alternatives (such as precomputed simulation or ocean data) are planned, which should allow limited support on mobile hardware, webGPU, etc.
Other platforms (VR, Metal, PlayStation, Xbox, etc.) may work, but are not officially supported or guaranteed.
You can check the online README. It’s still being updated and will be expanded over time
Main Features:
Real-time dynamic water simulation using flow water equations and FFT ocean rendering
Spline-free river and waterfall creation – auto-follows terrain, no manual pathing
Easy zone-based workflow: add flowing water in seconds
Interaction with dynamic objects, shore response, and obstacle avoidance
Buoyancy system + height/flow sampling API for floating objects
Optional cached simulation (preflow) with dynamic rerouting
Rendering & Lighting:
Physically-based lighting with absorption, SSS, caustics, sunshafts, and PBR shading
Volumetric lighting above/below surface + underwater sunshafts
Reflections stack: fast SSR, planar, skybox and anisotropic reflection
Refraction with dispersion and water IOR
Internal underwater reflections (Snell’s window) with full immersion support
Anisotropic highlights and Fresnel-based shimmer
Visual Effects & Environment:
Dynamic foam, splash particles, wetness, and droplets
Custom zones for color, wind, water level, or full transparency (glass/submarine view)
Bioluminescent foam/plankton style
Persistent puddles and flooding with depth awareness
Camera effects: underwater transitions, water-on-lens, blur, droplets, half-water line
Optimization & Integration:
GPU-driven mesh generation via Quadtree LOD and procedural instancing
Automatic simulation LOD: particle count, update rate, and culling by distance/occlusion
Full support for Built-in, URP, and HDRP pipelines
Writes to depth buffer (for DoF, third-party fog, volumetrics)
One-click fog support: Enviro, Azure, Aura2, COZY, and more
In-editor tooltips and documentation for every parameter
Quality settings are linked to Unity’s global quality levels for seamless scaling
Limitations:
While KWS2 offers a powerful and physically – grounded simulation system, there are a few important limitations to keep in mind:
Not suited for extreme waves – The shallow water algorithm works best for low- to mid-scale wave heights. Using wave heights above ~20 meters may cause unnatural simulation behavior, artifacts, or instability. Use FFT ocean rendering for large-scale ocean swell instead.
Simulation zones are flat – water doesn’t fall, only spreads across a surface. Sloped surfaces like waterfalls are handled visually and through flow redirection, but cannot simulate true 3D fluid volume or pressure.
Overlapping simulation zones don’t blend – Zones are isolated and do not share simulation data. Flow may not behave naturally at borders or overlaps. Future updates may include blending support where technically feasible.
Objects outside of zone camera – Each simulation zone uses an orthographic camera to detect terrain and object intersections. This means only objects visible to that camera will influence the water. If part of an object (e.g. a rock or terrain overhang) is hidden behind another object or wall, like inside a cave or behind steep geometry – it won’t be visible to the zone camera and won’t affect the simulation. As a result, water might appear to flow incorrectly over or through it
Non-flat or steep surfaces – such as undercuts, cliffs, or slanted rocks — may not be properly recognized by the simulation. The system assumes surfaces are mostly horizontal or gently sloped, so vertical or inverted geometry might result in inaccurate water behavior (e.g. water flowing through or ignoring the surface).