OpenUPMOpenUPM
Packages
Docs
Blog
  • Support OpenUPM
  • Contributors
  • Uptime Status
  • Queue Status
  • Trends
  • GitHub
  • Twitter
  • Discord
  • Contact Us
  • Package Updates
  • Blog RSS
CLI
Loading...
Stars ... Donate
Packages Stars ... Donate
Packages
Docs
Blog
  • Support OpenUPM
  • Contributors
  • Uptime Status
  • Queue Status
  • Trends
  • GitHub
  • Twitter
  • Discord
  • Contact Us
  • Package Updates
  • Blog RSS
CLI

OceanFlow

com.zzamjak.oceanflow is an OpenUPM Unity package. Cartoon-style 3D water for Unity URP, designed mobile-first. OceanFlowSurface (XZ grid for oceans and lakes) and OceanFlowRiver (Bezier-path ribbon for rivers) share one shader. Shore foam and depth-tinted color are derived from the scene depth difference. The surface noise is cross-faded between two half-cycle phases that are re-seeded with a random offset and rotation each cycle, so the pattern keeps being born and dissolving instead of sliding as a whole; the per-frame phase constants are computed on the CPU. Vertex Gerstner waves with analytic normals, cel-shaded highlights, and a two-channel UV flow system with 31 DOTween-compatible easings. Large oceans use a camera-following high-density patch plus a coarse far plane with a matching hole; long rivers chain several segments with continuous UV. Per-frame CPU cost is a handful of SetVector calls with zero GC.

Install this package from the OpenUPM scoped registry with the instructions on this page, or use openupm-cli to update Packages/manifest.json.

Repository: https://github.com/zzamjak-cloud/OceanFlow.

Owner: zzamjak-cloud.

Topics

  • Particles & Effects
  • Level Design
  • Mobile

Related Unity Packages

  • CATSprite com.zzamjak.catsprite
  • ColorReplace com.zzamjak.colorreplace
  • CAT TileMapMaker com.zzamjak.tilemapmaker
  • UIShining com.zzamjak.uishining
  • UVPatternFlow com.zzamjak.uvpatternflow
  • Water2D com.zzamjak.water2d

For registry setup problems, see Unity scoped registry troubleshooting.