1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- using UnityEngine;
- using UnityEditor;
- [CanEditMultipleObjects, CustomEditor(typeof(MegaDisplaceLimits))]
- public class MegaDisplaceLimitsEditor : MegaModifierEditor
- {
- public override string GetHelpString() { return "Displace Limits Modifier by Chris West"; }
- public override bool Inspector()
- {
- MegaDisplaceLimits mod = (MegaDisplaceLimits)target;
- #if !UNITY_5 && !UNITY_2017 && !UNITY_2018 && !UNITY_2019 && !UNITY_2020
- EditorGUIUtility.LookLikeControls();
- #endif
- mod.map = (Texture2D)EditorGUILayout.ObjectField("Map", mod.map, typeof(Texture2D), true);
- mod.amount = EditorGUILayout.FloatField("Amount", mod.amount);
- mod.offset = EditorGUILayout.Vector2Field("Offset", mod.offset);
- mod.vertical = EditorGUILayout.FloatField("Vertical", mod.vertical);
- mod.scale = EditorGUILayout.Vector2Field("Scale", mod.scale);
- mod.channel = (MegaChannel)EditorGUILayout.EnumPopup("Channel", mod.channel);
- mod.CentLum = EditorGUILayout.Toggle("Cent Lum", mod.CentLum);
- mod.CentVal = EditorGUILayout.FloatField("Cent Val", mod.CentVal);
- mod.Decay = EditorGUILayout.FloatField("Decay", mod.Decay);
- mod.origin = EditorGUILayout.Vector3Field("Origin", mod.origin);
- mod.size = EditorGUILayout.Vector3Field("Size", mod.size);
- return false;
- }
- public override void DrawSceneGUI()
- {
- MegaDisplaceLimits mod = (MegaDisplaceLimits)target;
- Vector3 pos = mod.transform.TransformPoint(mod.origin);
- Vector3 newpos = Handles.PositionHandle(pos, Quaternion.identity);
- if ( newpos != pos )
- {
- mod.origin = mod.transform.worldToLocalMatrix.MultiplyPoint(newpos);
- EditorUtility.SetDirty(target);
- }
- }
- }
|