/crest

An advanced ocean system implemented in Unity3D

Primary LanguageC#OtherNOASSERTION

Intro

Crest is a technically advanced ocean renderer implemented in Unity3D 2019.4.8 and later. The version hosted here targets the built-in render pipeline, links to the scriptable render pipeline versions (URP/HDRP) on the Asset Store are below.

Teaser

Supporting us: Asset Store sales partially cover our dev costs, for the rest we are looking for sponsorship. Please see our sponsorship page for more detals.

Discord for news/updates/discussions: https://discord.gg/g7GpjDC

YouTube for tutorials and showcases: Crest Ocean System

Twitter: @crest_ocean

Crest Ocean System URP Asset Crest Ocean System HDRP Asset
Crest Ocean System URP Crest Ocean System HDRP

Showcase Gallery

Irval the Dragon in Crest Ocean and Lordenfel Ruins Out of Reach: Treasure Royale - Trailer Windbound - Brave the Storm Announce Trailer [Official] An Adventure to the World of Artificial Intelligenc Hope Adrift Gameplay & Release Trailer Morild Navigator Blue Water Dev Diary - CIWS Expo Crest Ocean System - Pirate Cove Example Scene Critter Cove & Crest Trailer Of Ships & Scoundrels - Crest Demo Rogue Waves Ship Simulator : Realistic

Documentation

Full documentation is available online, including initial setup steps.

Prerequisites

  • Unity version:
    • The SRP assets on the Asset Store specify the minimum version required.
    • Releases on this GitHub target the built-in render pipeline, and each release specifies which version of Unity it was developed on. Currently Unity 2019.4.8 or later is the minimum version. See further down for 2018.4 support.
  • Crest example content:
    • The post processing package is used (for aesthetic reasons), if this is not present in your project you will see an unassigned script warning which you can fix by removing the offending script.
  • .NET 4.x runtime
  • Shader compilation target 4.5 or above
    • Crest unfortunately does not support OpenGL or WebGL backends

Installation

You can download the latest version from here.

Another way to obtain Crest is to fork/clone this repository.

The files that should be copied into an existing project are under crest/Assets/Crest.

Note that crest/Assets/Crest/Crest-Examples contains example content that is useful for first time users but not required for the core Crest functionality. Furthermore, the crest/Assets/Crest/Development folder is not needed as it is only for Crest development.

Releases: Currently we do not prepare release packages. However, we do tag each asset store version, so the zip corresponding to each version can be downloaded by clicking the desired version on the Releases page. Once the zip is downloaded, the steps are as above.

Notes and Issues

If you encounter an issue, please search the Issues page to see if there is already a resolution, and if you don't find one then please report it as a new issue.

There are a few issues worth calling out here:

  • Sky solutions such as Azure[Sky] requires some code to be added to the ocean shader for the fogging/scattering to work. This is a requirement of these products which typically come with instructions for what needs to be added. See the wiki for examples.
  • Crest does not support OpenGL or WebGL backends
  • Unity 2018 support - There is a [legacy branch] for 2018.4 support. A direct download to an archive is available here. It is not actively developed.

Donations

With your support we aim to increase our development bandwidth significantly. Please see our sponsor page for sponsor tiers and rewards:

https://github.com/sponsors/wave-harmonic

Sponsors

Diamond

Gold 🥇

@celeronpm @ipthgil

Board Members 🚀

@Bartolomeus755 @holdingjason @NeistH2o