public override void OnInspectorGUI()
{
if (_renderer == null)
{
EditorGUILayout.LabelField("Game Object doesn't have renderer.");
}
else
{
int ind = Mathf.Max(0, Array.IndexOf(_sortingLayerNames, _renderer.sortingLayerName));
int changedInd = EditorGUILayout.Popup("Sorting Layer", ind, _sortingLayerNames);
if (changedInd != ind)
{
Undo.RecordObject(_renderer, "Edit Sorting Layer Name");
_renderer.sortingLayerName = _sortingLayerNames[changedInd];
EditorUtility.SetDirty(_renderer);
}
int sortingOrder = _renderer.sortingOrder;
int changedSortingOrder = EditorGUILayout.IntField("Order in Layer", sortingOrder);
if (changedSortingOrder != sortingOrder)
{
Undo.RecordObject(_renderer, "Edit Sorting Order");
_renderer.sortingOrder = changedSortingOrder;
EditorUtility.SetDirty(_renderer);
}
}
}