Open-source project
wave-harmonic/crest avatar
wave-harmonic/crest

Crest Water System: MIT-Licensed Unity Ocean Water for the Built-In Renderer

A class-leading water system implemented in Unity

3,904 stars522 forksC#MIT

At a glance

What is it?
wave-harmonic/crest is a MIT-licensed Unity water system targeting the built-in renderer. It requires shader compilation target 4.5 and Unity 2022.3 or later in its current form, and covers a range of older Unity versions through pinned release tags. HDRP and URP variants exist as paid products on the Unity Asset Store, and a newer Crest Water 5 is also available there.
Who is it for?
Unity game developers who need a water system for a built-in renderer project and want MIT-licensed source code should evaluate Crest Water 4 from this repository.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 105 days ago.
What is it written in?
Mainly C#, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 27, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Crest Is and Who It Targets

Crest is a water simulation system for Unity. The README describes it as an "advanced water system" and the repository description calls it "class-leading." The project is maintained by Wave Harmonic, which also sells asset store versions of the product and maintains a Discord community, a YouTube channel, and full documentation at crest.readthedocs.io.

This open-source repository contains Crest Water 4 for Unity's built-in render pipeline (BIRP). It is MIT-licensed, which means you can use it in commercial projects without paying for a license. The target audience is Unity developers who need a water system and either prefer to work with a built-in renderer project or want access to the full source code.

The repository is specifically not for developers targeting URP, HDRP, or the newer Crest Water 5. Those variants are sold separately on the Unity Asset Store. The split between the free open-source BIRP version and the paid render pipeline variants is a central architectural decision of this project.

Render Pipeline Split: BIRP Free, URP and HDRP Paid

Crest Water 4 exists in three render pipeline variants. This GitHub repository hosts the built-in renderer (BIRP) version under MIT. The URP and HDRP variants of Crest Water 4 are separate products available on the Unity Asset Store. Crest Water 5, a newer generation of the system, is also on the Asset Store and is distinct from this repository.

The README makes the pipeline target explicit: "This repository targets the built-in renderer. For other render pipelines, see the following:" followed by Asset Store links for BIRP, HDRP, and URP paid editions. The paid BIRP edition on the Asset Store is separate from this free open-source version; both exist for the built-in renderer.

This split matters for project planning. A team evaluating Crest for a URP project will not find what they need in this repository; they need to purchase the URP Asset Store package. A team already on BIRP who wants to understand the source code, contribute fixes, or customize the system can do so using this repository. The MIT license permits modifications and redistribution without restriction.

Installing Crest Water 4 into a Unity Project

The README instructions for installation are straightforward. Download the latest stable release from the top of the GitHub tags page. Extract the files, then copy the contents of the crest/Assets/Crest directory into your existing Unity project:

The crest/Assets/Crest directory is the core installation target. The README notes two directories inside it that have specific status:

- crest/Assets/Crest/Crest-Examples contains example scenes and content useful for first-time users but is not required for core Crest functionality. - crest/Assets/Crest/Development is only for Crest's own development work and should not be included in your project.

There is no package manager integration documented in the README. Installation is a direct asset copy into the Unity project folder. After copying, the water system is available within the Unity Editor through the normal component and prefab workflow documented in the full documentation at crest.readthedocs.io and the community wiki.

The README's installation section does not describe any additional configuration steps beyond the file copy. For first-time setup and feature configuration, the documentation site is the authoritative resource.

Unity Version Compatibility and Pinned Releases

The current version of Crest Water 4 in this repository requires Unity 2022.3.62f3 or later. The README documents a specific version matrix for older Unity installations:

- Unity 2021.3: use Crest 4.22.4 - Unity 2020.3: use Crest 4.22.4 - Unity 2019.4: use Crest 4.11 - Unity 2018.4: use Crest 4.2

Each of these pinned versions is available as a tagged release on the GitHub repository. Teams on older Long-Term Support versions of Unity are not required to upgrade to use Crest Water 4; they just need to use the version that matches their Unity LTS.

This version matrix is a real constraint for teams that cannot upgrade their Unity version mid-project. A project locked to Unity 2020.3, for example, is limited to Crest 4.22.4 and cannot take advantage of features added in later releases. The documentation at crest.readthedocs.io is likely structured around the current release rather than these older pinned versions, so developers on older Unity may need to navigate the version-specific release notes for accurate guidance.

Hard Requirements: Shader Target 4.5 and the OpenGL and WebGL Exclusion

Crest Water 4 requires a shader compilation target of 4.5 or above. This is a GPU and driver requirement, not just a Unity configuration setting. Shader target 4.5 corresponds to hardware that supports compute shaders, which is standard in modern desktop and console GPUs but may not be available on older or lower-end mobile hardware.

The README is explicit about two unsupported backends: "Crest does not support OpenGL or WebGL backends." This rules out any deployment target that relies on OpenGL for rendering, including many Android configurations that use OpenGL ES, and any browser-based deployment that uses WebGL. Teams planning to release to WebGL via Unity must find a different water solution. Teams targeting Android should verify whether their device minimum specification uses Vulkan rather than OpenGL ES.

These two constraints together (shader target 4.5 and no OpenGL/WebGL) narrow the supported platform set to modern desktop operating systems, consoles that support compute shaders via non-OpenGL APIs, and specific mobile configurations running Vulkan. The documentation at crest.readthedocs.io is the place to verify platform support for specific target configurations.

Unity's Standard Water System as the Baseline Comparison

Unity has included basic water prefabs and shaders in its Standard Assets package. The standard Unity water is a reflective and refractive plane with a simple wave animation, designed as a baseline starting point rather than a simulation. It does not involve compute shaders, dynamic foam, underwater effects, or the kind of simulation fidelity that a water-centric game would require.

Crest Water 4 positions itself as "an advanced water system" in contrast to this. The README calls it "class-leading" and the showcase links to videos of ship games, ocean environments, and detailed wave scenarios. The difference in ambition is visible in the requirements: basic Unity water works on any shader target and any platform; Crest requires shader target 4.5 and excludes OpenGL and WebGL.

For a project where water is a background element, a simple reflective plane is often sufficient and avoids the integration complexity that Crest requires. For a project where water is a primary gameplay surface, where wave shape, foam, buoyancy, and visual fidelity matter, Unity's standard water is the wrong tool. Crest addresses the second case; the standard Unity assets address the first. The decision between them is rarely ambiguous in practice.

Editorial conclusion

Unity game developers who need a water system for a built-in renderer project and want MIT-licensed source code should evaluate Crest Water 4 from this repository. The important things to verify before starting: whether your Unity version meets the 2022.3.62f3 minimum or falls into one of the older pinned releases, whether your target platform supports shader compilation target 4.5, and whether you are targeting a backend other than OpenGL or WebGL (both of which Crest explicitly does not support). Teams on URP or HDRP, or those who want the newer Crest Water 5, should look at the Unity Asset Store instead of this repository. The last push to this repository was on 2026-06-18.

Frequently asked questions

What is the difference between this open-source Crest repository and Crest Water 5?

This repository contains Crest Water 4 for the built-in renderer (BIRP) under MIT license. Crest Water 5 is a newer product sold on the Unity Asset Store. The README notes that Crest Water 5 is now available but does not describe its features; it links to the Asset Store page rather than this repository.

Can Crest Water 4 be used with the Universal Render Pipeline (URP) or HDRP?

Not from this repository. The README states this repository targets the built-in renderer and lists separate Unity Asset Store products for URP and HDRP variants of Crest Water 4. Those are paid packages distinct from the MIT-licensed open-source BIRP version in this repository.

How do I install Crest Water 4 into a Unity project?

Download the latest stable tag from the GitHub tags page, extract the files, and copy the contents of the crest/Assets/Crest directory into your Unity project. The Crest-Examples subdirectory is optional example content for first-time users; the Development subdirectory is only for Crest's own development and should be excluded.

Official sources

  1. Issues
  2. License: MIT
  3. README
  4. wave-harmonic/crest on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/wave-harmonic-crest.svg)](https://hysenlabs.com/projects/wave-harmonic-crest)