Drop-In Water — Realistic URP System

Oceans, lakes and rivers for Unity URP, with buoyancy, wakes and an underwater view.

  • Water
  • Ocean
  • URP
  • Physics
  • Multiplayer
Coming soon to the Asset StoreDocumentationPDF
Turquoise water breaking into white surf along a sandy beach, with a wooden pier and green hills in the distance

Overview

Drop-In Water brings oceans, lakes and rivers to your Unity scenes. The waves are simulated with FFT from the wind, the swell and the depth, and the water is shaded from how light is absorbed and scattered in it.

It is made for gameplay. Floating objects feel the same waves the players see, boats and splashes leave rings and Kelvin wakes, and your code can ask for the height, slope and motion of the water anywhere, immediately, even in FixedUpdate or on a server with no GPU. The waves depend only on the settings and the time, so every client of a multiplayer game sees the same sea by sharing its clock.

Bake a terrain once and the waves shrink and break into surf along the coast. Lakes sit at any height and get waves of their own size; rivers follow a spline and flow faster down slopes. Under the surface, fog, colour loss, light shafts and caustics take over, with a seamless crossing through the waterline.

There is nothing to set up in URP: add an Ocean and press Play. A Tools menu creates water, makes objects float and bakes shorelines, and the demo scene shows a bay, a lake and a river with floating objects and a boat you can drive.

Key features

  • FFT ocean from wind speed, fetch and swell, four cascades, sharp crests and whitecaps
  • Infinite ocean to the horizon, lakes at any height and spline rivers that flow downhill
  • Baked shorelines: waves shrink in shallow water, break into surf and stay off dry land
  • Physically based shading: absorption, scattering, refraction, screen-space and probe reflections, sun glints, caustics
  • Underwater view with fog, colour loss, a waterline across the lens and light shafts
  • Floating Body buoyancy and drag for any Rigidbody, computed in Burst jobs
  • Interaction waves from an exact spectral solver: ripples, rings and Kelvin wakes with foam
  • Gameplay queries for height, normal and velocity of the water, single or in batched Burst jobs
  • Deterministic waves for multiplayer: share only the clock
  • No URP setup, a Tools menu, inline material editing, river handles and refraction debug views

Good to know

URP only, on platforms with compute shaders: mobile, WebGL and XR are not supported in this version. Interaction waves are visual and do not move floating objects. Water is not removed inside boat hulls. Shorelines are baked from terrains and must be baked again after terrain changes.

Gallery