hejiesong123 / crest

An advanced ocean system implemented in Unity3D

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

 

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, a link to the scriptable render pipeline versions (URP/HDRP) on the Asset Store are below.

Teaser

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

Twitter: @crest_ocean

URP asset: Crest Ocean System URP

HDRP asset: Crest Ocean System HDRP

Showcase Gallery

Your game here! We're looking for projects to showcase - if you upload a video of your work to youtube and send us a link (or create a pull request) we'll put a thumbnail here and link to it.

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

Documentation

Refer to USERGUIDE.md for full documentation, including Initial setup steps.

There is also a getting started video here: https://www.youtube.com/watch?v=qsgeG4sSLFw&t=142s .

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 content requires a layer named Terrain which should be added to your project.
    • 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.

One way to obtain Crest is take the latest version in the master branch by forking/cloning this repository or by using the green download button above. 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.

Legacy

The following options are no longer maintained or supported.

Releases

Crest releases are no longer published or supported. Old releases can be obtained from the Releases page, but they are not recommended. They are Unity packages which can be imported into your project using Assets/Import Package.

2018.4

There is a legacy branch for 2018.4 support. A direct download to an archive is available here. It is not actively developed.

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.
  • This built-in render pipeline version of crest requires the Draw Instanced option on terrains to be disabled at start time. It can be re-enabled subsequently after the depth cache is populated. See issue #158.
  • Crest does not support OpenGL or WebGL backends

About

An advanced ocean system implemented in Unity3D

License:Other


Languages

Language:C# 78.1%Language:ShaderLab 14.3%Language:HLSL 7.5%