Graphics
The Unity Built-in Render Pipeline is used for rendering. Therefore, many shaders included with Unity assets will work as-is.
Please also refer to the graphics settings in World Runtime Setting component.
Rendering
The versions of the Graphics API in use are as follows:
- Direct3D 11 (Windows)
- Metal (iOS / Mac)
- OpenGL ES 3 (Android)
On Metal, geometry shaders (#pragma geometry ...
) do not work.
In this case, the material will be displayed in the same purple color as a missing material.
It is recommended to target ShaderLab version #pragma target 3.5
or lower.
In VR mode, Multi-Pass Stereo Rendering is used.
Since mobile GPUs typically have less GPU-memory bandwidth compared to desktop environments, features like AlphaBlend or GrabPass, which add memory read operations, tend to be particularly slow.
The issue may be mitigated by designing effects that work with opacity or by using AlphaCut for transparent areas.
Lighting
The Unity Project Settings used by cluster are as follows:
When “Use World Shadow” in the World Runtime Setting is OFF:
- Shadows: Disable Shadows
When it is ON:
- Shadows: Hard and Soft Shadows
- Shadowmask Mode: Shadowmask
- Resolution: Medium
- Shadow Projection: Close Fit (Stable Fit for Android)
Up to two pixel lights are supported (Project Settings > Quality > Rendering > Pixel Light Count is set to 2).