The steps to set up Crest in a new or existing project are as follows:
Importing Crest¶
Import the Crest package into the project using the Package Manager window in the Unity Editor.
Crest is a UPM package and thus is imported into the Packages directory. Once imported Crest packages will be listed in the package manager window. Familiarity with the package details pane is important as this is where Samples are imported from.
Troubleshooting¶
The following are issues with the install process which come up frequently.
I am seeing errors in the console and/or visual issues
When changing Unity versions, setting up a render pipeline or making changes to packages, the project can appear to break. This may manifest as spurious errors in the log, no water rendering, magenta materials, scripts unassigned in example scenes, etcetera. Often, restarting the Editor fixes it. Additionally, re-importing broken (ie magenta) materials/shaders may be required. Clearing out the Library folder can also help to reset the project and clear temporary errors. These issues are not specific to Crest, but we note them anyway as we find our users regularly encounter them.
I am seeing magenta materials after changing render pipelines
Unity has a bug where sometimes it will not correctly switch materials to the current render pipeline. Solutions can vary:
Restarting Unity
View the affected material’s inspector
Reimport the affected material/shader
This affects Shader Graph specifically. Find our water Shader Graph, right click and re-import it. It may appear as a blank file icon instead of the usual Shader Graph icon.
I can enter play mode, but errors appear in the log at runtime that mention missing ‘kernels’
Recent versions of Unity have a bug that makes shader import unreliable. Please try reimporting the Packages/Crest/Runtime/Shaders folder using the right click menu in the project view. Or simply close Unity, delete the Library folder and restart which will trigger everything to reimport.
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.
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 I am seeing “The referenced script on this Behavior is missing!” or similar in Crest’s sample scenes and prefabs?
This is normal and can be ignored. The sample scenes support all render pipelines which require render pipeline specific components to be serialized in the scene. If a render pipeline package is missing, then those components will also be missing.