18. Frequently Asked Questions#

Why does the ocean not update smoothly in edit mode?

By default, the update speed is intentionally throttled by Unity to save power when in edit mode. To enable real-time update, enable Animated Materials in the Scene View toggles:

../_images/AnimatedMaterialsOption.png

See the Unity Documentation for more information.

I am seeing “Crest does not support OpenGL/WebGL backends.” in the editor

It is likely Unity has defaulted to using OpenGL on your platform. You will need to switch to a supported graphics API like Vulkan. You will need to make Vulkan the default by overriding the graphics APIs.

Why aren’t my prefab mode edits not reflected in the scene view?

Crest does not support running in prefab mode which means dirty state in prefab mode will not be reflected in the scene view. Save the prefab to see the changes.

Is Crest well suited for medium-to-low powered mobile devices?

Crest is built to be performant by design and has numerous quality/performance levers. However it is also built to be very flexible and powerful and as such can not compete with a minimal, mobile-centric water solution such as the one in the Boat Attack project. Therefore we target Crest at PC/console platforms.

That being said, developers have had success with Crest on lower powered platforms like the Nintendo Switch. Apple devices are good targets as their processors are quite capable all round. Meta Quest 2 is one device where it will be a struggle to take advantage of Crest.

Which platforms does Crest support?

Testing occurs primarily on MacOS and Windows. iOS and Android are also periodically tested.

Firstly, make sure your target platform adheres to the Requirements.

We have users targeting the following platforms:

  • Windows

  • MacOS

  • Linux *

  • PlayStation *

  • Xbox *

  • Switch * **

  • iOS **

  • Android/Quest **

* We do not have access to these platforms ourselves.
** Performance is a challenge on these platforms. Please see the previous question.

Crest also supports VR/XR Multi-Pass and Single Pass Instanced rendering.

For additional platform notes, see Platform Support.

Is Crest well suited for localised bodies of water such as lakes?

Yes, see Oceans, Rivers and Lakes for documentation.

Can Crest work with multiplayer?

Yes, the animated waves are deterministic and can be synchronised across the network. For more information see Network Synchronisation.

Note however that the dynamic wave sim is not synchronized over the network and should not be relied upon in networked situations.

Errors are present in the log that report Kernel ‘xxx.yyy’ not found

Unity sometimes gets confused and needs assets reimported. This can be done by clicking the Crest root folder in the Project window and clicking Reimport. Alternatively the Library folder can be removed from the project root which will force all assets to reimport.

Can I push the ocean below the terrain?

Yes, this is demonstrated in Fig. 4.1.

Does Crest support multiple viewpoints?

Currently only a single ocean instance can be created, and only one viewpoint is supported at a time. We hope to support multiple simultaneous views in the future.

Can I sample the water height at a position from C#?

Yes, see usages of SampleHeightHelper class in SamplingHelpers.cs. The OceanRenderer uses this helper to get the height of the viewer above the water, and makes this viewer height available via the ViewerHeightAboveWater property.

Can I trigger something when an object is above or under the ocean surface without any scripting knowledge?
Does Crest support orthographic projection?

Yes. Please see Orthographic Projection.

How do I disable underwater fog rendering in the scene view?

You can enable/disable rendering in the scene view by toggling fog in the scene view control bar.

Can the density of the fog in the water be reduced?

The density of the fog underwater can be controlled using the Fog Density parameter on the ocean material. This applies to both above water and underwater. The Depth Fog Density Factor on the Underwater Renderer can reduce the density of the fog for the underwater effect.

Does Crest support third party weather assets?

Several weather assets provide integrations with Crest. Some will list support in their description, but often they only list support in their documentation.

These may require some code to be inserted into the ocean shader. There is a comment referring to this, search Ocean.shader for ‘Azure’.

Please see the Community Contributions section in our Wiki for some integration solutions.

Can I remove water from inside my boat?

Yes, this is referred to as ‘clipping’ and is covered in section Clip Surface.

How to implement a swimming character?

As far as we know, existing character controller assets which support swimming do not support waves (they require a volume for the water or physics mesh for the water surface). We have an efficient API to provide water heights, which the character controller could use instead of a physics volume. Please request support for custom water height providers to your favourite character controller asset dev.

Can I render transparent objects underwater?
Can I render transparent objects in front of water?
Can I render transparent objects behind the ocean surface?