Performance Guide#
The foundation of Crest is architected for performance from the ground up with an innovative LOD system. It is tweaked to achieve a good balance between quality and performance in the general case, but getting the most out of the system requires tweaking the parameters for the particular use case. These are documented below.
Tip
Tooltips will often mention if a feature has a significant performance cost.
Quality Parameters#
These are available for tweaking out of the box and should be explored on every project:
See parameters under
which directly control how much detail is in the water, and therefore the work required to update and render it. These are the primary quality settings from a performance point of view.Adjust resolution of simulations on a per-simulation basis.
Persistent simulations can have their frequency reduced to improve performance.
Features#
The water shader has accrued a number of features, and has become a reasonably heavy shader. Where possible these are on toggles which can be disabled to will help the rendering cost.
Disable any unused simulations under
will help.By default, there are several extra passes to accomodate the Collision Layers feature. If this feature is not needed, performance can be improved by disabling it.
Rendering features under
like Motion Vectors, Write Color and Write Depth can be expensive (especially for BIRP).
Mobile Performance#
Mobile is not the primary target for Crest, but the following are some hints on getting better performance:
Crest can be draw call heavy which mobile platforms can be sensitive to. Together, reducing the
and increasing the minimum can significantly reduce draw calls.For demanding platforms that use tile rendering (like the Meta Quest), consider setting the water to opaque, as it will net a significant performance gain. Transparency does not add a lot of value to open ocean scenes.