Overview
📘 Documentation 🕹️ Compatibility 💬 Support (support@warpdev.co)
A license for this asset guarantees access to updates for Unity 6.* and future improvements within the Tidal product line.
What is Tidal 2?
Tidal 2 is a GPU-accelerated water system for Unity 6 URP, built around FFT-based wave simulation, a quadtree ocean mesh, and modular subsystems. It covers oceans, lakes, pools, and confined water - with real gameplay interaction: boats carve wakes and foam, currents carry the water, objects float, and cameras dive below a fully rendered underwater world.
Tidal 2 is intended for developers who want real control over wave behavior, performance scaling, and runtime interaction, rather than a one-size-fits-all water shader.
🌊 Highlights
- FFT-based multi-cascade wave simulation (GPU compute)
- Profile-driven wave behavior (wind, fetch, swell, direction)
- Infinite oceans and bounded lakes/pools from one mesh generator
- Interaction canvas: boat wakes, foam trails, currents & whirlpools
- Paintable zones: height (tsunami-capable), damping, and flow currents
- GPU physics field powering buoyancy, height queries & submersion
- Dynamic light-transport caustics that drift with the current
- Underwater rendering: volumetric lights, god rays, particles, analytic waterline
- Water cross-sections & dry cavities (aquariums, submarine interiors, cut-aways)
- Photoreal surface shading with day/night response and lit nights (glitter + light pools)
- Planar + environment reflections
- Extensive editor tooling, live in-editor preview, and setup validation
🏄 Quick Overview
Tidal 2 separates simulation, rendering, and interaction into clear components:
- TidalCompute - FFT wave simulation (can be shared across bodies)
- TidalBody - Rendering, mesh LODs, and all subsystems (physics field, canvas, zones, reflections, underwater)
- TidalSurface Material - Visual appearance
- TidalProfile - FFT water settings (as Scriptable Object)
- Zones & Volumes - Height/damping/current painting, cross-section masking, clipping, and interaction control
This modular design allows multiple water bodies to share a single simulation for excellent performance scalability - each body keeps its own look, bounds, interaction, and underwater rendering.
💧 Rendering & Visual Features
- FFT-based displacement with 3 cascades, advected by currents
- Procedural 3D-shaded sea foam + wake and contact foam
- Subsurface scattering and depth-based water coloring
- Planar reflections (throttleable, MSAA) + environment reflections
- Dynamic seabed & underwater caustics
- Underwater fog, volumetric point/spot lights, and sun god rays at a fixed resolution budget
- Pixel-exact water cross-sections through volumes, multi-body with depth ordering
- Night-ready lighting: water darkens with the sun, lamps streak and pool on the surface
- Orthographic camera support
🎮 Gameplay & Physics
GPU physics field: one baked height field (waves + wake + zones) behind every CPU query
Buoyancy component ready for hundreds of floats, hardened against edge cases
Water height, normal, flow, and submersion queries from script
Wake & foam emitters for boats, characters, and props
📦 Demo scenes/content
- Extreme wave / tsunami scene
- Large-scale ocean and island scene
- Indoor & confined water scene
- Multi-body scene
- Orthographic camera scene
- Performance-focused configuration scene
- Example profiles & materials
- Sea-foam texture generator, editor validation and setup helpers
✔️ Platform Support
Fully Supported:
- Windows (DX11 / DX12) - Primary development and tested platform
May Work: (Untested / Limited)
- macOS
- iOS / Android
- Consoles
- VR
Not Supported:
- WebGL - Compute shaders required
- VR - coming soon but not officially supported in v2.0
⚡ Performance
Tidal 2 is designed to scale:
- Share one simulation across many bodies
- Reduce FFT resolution (adjustable live)
- Lower simulation and physics update rates
- Fixed resolution budget for underwater volumetrics (same cost at 1080p and 4K)
- Throttle or disable planar reflections and underwater rendering per body
- Per-renderer quality defaults with per-body overrides
- Adjust mesh LOD density
From calm lakes to massive oceans, performance is always under your control.
📘 Documentation
Full setup guides, inspector references, performance tips, and demos:
https://www.warpdev.co/tidal/doc/
Third-Party Content
This asset includes third-party components licensed under permissive open licenses:
- Assets from Poly Haven and AmbientCG, licensed under Creative Commons CC0 1.0 Universal
- 3D models by Kenney, licensed under Creative Commons CC0 1.0 Universal
- Code and mathematical techniques derived from FFT-Ocean by Ivan Pensionerov, licensed under the MIT License
Promotional Media Notice:
Some promotional screenshots on the Asset Store page use a skybox from the Fantasy Skybox FREE package by Render Knight. This skybox is used for visual presentation only in screenshots and is not included, redistributed, or required for use of this asset. Permission for this usage has been granted by the asset author.
See the included Third-Party Notices.txt file in the package for full license details.