diff options
Diffstat (limited to 'JamHelper/Assets/JamUtils/Scripts/Utils/Editor/MeshRendererEditor.cs')
-rw-r--r-- | JamHelper/Assets/JamUtils/Scripts/Utils/Editor/MeshRendererEditor.cs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/JamHelper/Assets/JamUtils/Scripts/Utils/Editor/MeshRendererEditor.cs b/JamHelper/Assets/JamUtils/Scripts/Utils/Editor/MeshRendererEditor.cs new file mode 100644 index 0000000..139072a --- /dev/null +++ b/JamHelper/Assets/JamUtils/Scripts/Utils/Editor/MeshRendererEditor.cs @@ -0,0 +1,35 @@ +using UnityEngine;
+using UnityEditor;
+
+[CustomEditor(typeof(MeshRenderer))]
+public class MeshRendererEditor : Editor
+{
+ MeshRenderer meshRenderer;
+ public override void OnInspectorGUI()
+ {
+ base.OnInspectorGUI();
+ meshRenderer = target as MeshRenderer;
+
+ string[] layerNames = new string[SortingLayer.layers.Length];
+ for (int i = 0; i < SortingLayer.layers.Length; i++)
+ layerNames[i] = SortingLayer.layers[i].name;
+
+ int layerValue = SortingLayer.GetLayerValueFromName(meshRenderer.sortingLayerName);
+ layerValue = EditorGUILayout.Popup("Sorting Layer", layerValue, layerNames);
+
+ GUI.changed = false;
+
+ SortingLayer layer = SortingLayer.layers[layerValue];
+ meshRenderer.sortingLayerName = layer.name;
+ meshRenderer.sortingLayerID = layer.id;
+ meshRenderer.sortingOrder = EditorGUILayout.IntField("Order in Layer", meshRenderer.sortingOrder);
+
+ if (GUI.changed)
+ {
+ EditorUtility.SetDirty(meshRenderer);
+ AssetDatabase.SaveAssets();
+ AssetDatabase.Refresh();
+ }
+
+ }
+}
\ No newline at end of file |