private void AllRootCanvases()
{
if (PlayerSettings.virtualRealitySupported && (m_RenderMode.enumValueIndex == (int)RenderMode.ScreenSpaceOverlay))
{
EditorGUILayout.HelpBox("Using a render mode of ScreenSpaceOverlay while VR is enabled will cause the Canvas to continue to incur a rendering cost, even though the Canvas will not be visible in VR.", MessageType.Warning);
}
EditorGUILayout.PropertyField(m_RenderMode);
m_OverlayMode.target = m_RenderMode.intValue == 0;
m_CameraMode.target = m_RenderMode.intValue == 1;
m_WorldMode.target = m_RenderMode.intValue == 2;
EditorGUI.indentLevel++;
if (EditorGUILayout.BeginFadeGroup(m_OverlayMode.faded))
{
EditorGUILayout.PropertyField(m_PixelPerfect);
EditorGUILayout.PropertyField(m_SortingOrder, Styles.sortingOrder);
GUIContent[] displayNames = DisplayUtility.GetDisplayNames();
EditorGUILayout.IntPopup(m_TargetDisplay, displayNames, DisplayUtility.GetDisplayIndices(), Styles.targetDisplay);
}
EditorGUILayout.EndFadeGroup();
if (EditorGUILayout.BeginFadeGroup(m_CameraMode.faded))
{
EditorGUILayout.PropertyField(m_PixelPerfect);
EditorGUILayout.PropertyField(m_Camera, Styles.renderCamera);
if (m_Camera.objectReferenceValue != null)
{
EditorGUILayout.PropertyField(m_PlaneDistance);
}
EditorGUILayout.Space();
if (m_Camera.objectReferenceValue != null)
{
EditorGUILayout.SortingLayerField(Styles.m_SortingLayerStyle, m_SortingLayerID, EditorStyles.popup, EditorStyles.label);
}
EditorGUILayout.PropertyField(m_SortingOrder, Styles.m_SortingOrderStyle);
if (m_Camera.objectReferenceValue == null)
{
EditorGUILayout.HelpBox("Screen Space - A canvas with no specified camera acts like a Overlay Canvas." +
" Please assign a camera to it in the 'Render Camera' field.", MessageType.Warning);
}
}
EditorGUILayout.EndFadeGroup();
if (EditorGUILayout.BeginFadeGroup(m_WorldMode.faded))
{
EditorGUILayout.PropertyField(m_Camera, Styles.eventCamera);
EditorGUILayout.Space();
EditorGUILayout.SortingLayerField(Styles.m_SortingLayerStyle, m_SortingLayerID, EditorStyles.popup);
EditorGUILayout.PropertyField(m_SortingOrder, Styles.m_SortingOrderStyle);
}
EditorGUILayout.EndFadeGroup();
EditorGUI.indentLevel--;
}