Real Underwater — Screen-Space Underwater Rendering for Any Water Asset
u3d
$21.45
$42.90
50%OFF
(no ratings)
Jump AssetStore
Underwater for Unity 6 on top of any water: a runtime wave surface, absorption, caustics, god rays, bubbles, the half-in/half-out waterline and underwater audio. Built-in + URP + HDRP.Real Underwater puts the camera in the water in Unity 6, in Built-in, URP 17 and HDRP 17: tell it where the water is, and everything below the surface becomes water - the colour absorbed channel by channel with distance, murk closing in, god rays raked down from the surface, caustics on the floor, bubbles rising past the lens, and the surface cutting the frame in half when you swim up to it.New in 1.1: the water surface itself. An optional runtime surface with three behaviour profiles - Still, Calm and Ocean - on one rendering engine: Gerstner waves on a tessellated mesh, animated ripple normals, Fresnel reflection of the scene and the sky, refraction from above and from below, sun glint, foam on fast crests and along walls, spray where the surface moves fast and floating bubbles where it is slow. The same waves drive the waterline and the submersion test, so the surface you see and the water you are in always agree.Generated detail. Bubble emitters anchored in the world - vents, regulators, cracks in a hull - where every bubble is a frame of a generated sprite sheet with a normal map, so the glint on it is your scene's own sun; a diver's breath rising past the lens; a looping caustic flipbook that lands only on lit floors; screen-space sun rays cut by the surface pattern and stopped by geometry; soft algae, moss and small corals standing on the sea floor.The sound of being under. The plunge and the gasp on the crossing, an ambience and a deep loop that grows with depth, a low-pass and a reverb on the listener - steered by a 16x depth probe of the frame, so a cave sounds enclosed and open water sounds open. Emitters play 3D bubble loops.One script is the water. Real Underwater Volume is a box that is the water: pick a preset and the quick options follow from the box's size. Twelve presets - Ocean, Tropical Lagoon, Lake, Swimming Pool, Swamp, Harbour, Cave, Shallows, Deep Dive, Ice Water, Stylized Ocean and Stylized Lagoon - are .json files: edit them in the Presets window, copy them between projects, load them at runtime.It works on top of the water you already have. Real Underwater renders the water you are in, not the water you look at, so it does not care what draws your surface: Crest, KWS, Stylized Water 3, Oceanis, a Unity plane or your own ocean. Use its surface, or switch it off and keep yours.Light that behaves like light. Sunlight is refracted into the water with Snell's law, and the god rays, the sun rays and the caustics are read from the same refracted sunlight - so the shafts in the water and the pools of light on the floor agree with each other and with the sun. Look up and the world above squeezes into the 97-degree Snell's window.Three pipelines, one system. Built-in, URP 17 (Render Graph) and HDRP 17 (Custom Post Process) share one shader body and identical settings. The Setup wizard installs the renderer feature or custom post-process, generates the pipeline wrappers and creates the preset profiles.In the boxFullscreen underwater effect for Built-in, URP 17 and HDRP 17 (Unity 6000.3)Runtime water surface with Still, Calm and Ocean profiles: tessellated Gerstner waves, ripples, reflection, refraction, foam, spray, floating bubblesReal Underwater Volume (one script on a box) and IRealWaterSurface with plane, box/sphere volume, height-map and scripted providersBubble emitters, breath bubbles, caustic flipbook, sun rays, sea-floor growth, waterline, Snell's window, absorption and murk, depth grading, suspended matter, refraction wobble, depth blur, wet lensUnderwater audio: eight clips and a depth probeTwelve .json presets and a Presets window; 109 controls in fourteen groupsEvents for gameplay: OnSubmerged, OnSurfaced, Depth, IsUnderwater, plus a component that exposes them in the inspectorA before/after split for your own comparisons (RealUnderwaterRuntime.SetComparisonSplit)Setup wizard, bakers, debug views and per-layer switchesThree sample scenes: Reef and Pool with baked lighting, and a Gallery with all twelve presetsManual, changelog, third-party noticesRequirements and notesUnity 6000.3.21f1 or newer; URP 17.3 / HDRP 17.3 for the SRP paths (Render Graph only)The water surface is drawn at runtime (play mode and players); it uses tessellation (shader model 4.6) and falls back to vertex waves elsewherePerspective cameras; the optional motion smear keeps a per-camera history bufferOne fullscreen pass that scales with pixel count, plus the surface mesh when the surface is on; use a lower resolution scale on mid-range GPUsScreen-space by design: caustics and shafts exist where the camera can see themOne water body is active at a time - the one the camera is in, or the nearest by priorityThe videos and screenshots show Crytek Sponza (Frank Meinl, CC BY 3.0) as the flooded atrium; it is not included in the packageMore from this familyReal Rain: https://u3d.as/49BWReal Flame: https://u3d.as/49XEReal Snow: https://u3d.as/49YaReal Poison: https://u3d.as/4a1LReal Vision: https://u3d.as/4a31Real Outline: https://u3d.as/4a3wReal Volumetric: https://u3d.as/4a5oOne fullscreen pass per pipeline over a shared HLSL body (Built-in image effect, URP Render Graph renderer feature, HDRP custom post-process), a second pass for the 1/16-resolution depth probe, and an optional per-camera history buffer for the motion smear; no compute shaders, no VFX Graph, no particle systems, no material changesWater surface: up to twelve Gerstner waves with deep-water dispersion, evaluated the same way on the CPU and the GPU; a mesh tessellated by on-screen edge length with frustum culling (shader model 4.6) and a vertex-only fallback; a per-camera surface distance target read by the fullscreen pass for reflection, refraction, foam, spray and floating bubblesSettings: RealUnderwaterSettings mirrored one-to-one in the URP and HDRP Volume components, a Built-in settings component and RealUnderwaterVolume boxes; 109 controls in fourteen groups; twelve presets as .json files (RealUnderwaterPresetLibrary)Water sources: IRealWaterSurface (Contains / SurfaceHeight / GetBounds / TryGetHeightMap / Priority) with plane, box-and-sphere volume, height-map and scripted providersVolume: Beer-Lambert transmittance per channel over the underwater path length of each view ray, turbidity, depth-graded inscatter, depth darkeningLight: the sun refracted with Snell's law (n = 1.333); god rays marched along the view ray, screen-space sun rays, caustics from a looping flipbook blended over a procedural web and gated by how lit the floor isTextures: a 64-cubed RGBA noise volume and a sprite atlas baked by the included bakers, three ripple normal flipbooks computed from a wave spectrum, and generated sprite sheets for bubbles, plumes, caustics and growth (flipbooks up to 2048x2048)Audio: eight generated clips (loops and one-shots) and RealUnderwaterAudio driven by the depth probe (enclosure, wall proximity, stereo tilt)Debug views and twelve per-layer switches; events OnSubmerged / OnSurfaced and the RealUnderwaterEvents componentCode, shaders, editor tooling and documentation were written with AI assistance. The bubble, plume, caustic and growth sprite sheets were made from video loops generated with AI video models on our own render fleet, then keyed, converted to normal maps and packed into flipbooks by our own tools; the eight audio clips were generated with an AI sound model. The noise volume, the sprite atlas and the ripple normal sheets are computed by our own tools, and the sample scenes use original geometry.




