static void DrawMinMaxCurveField(SerializedProperty property, MinMaxCurvePropertyDrawer drawer, GUIContent label) { var rect = EditorGUILayout.GetControlRect(false, drawer.GetPropertyHeight(property, label)); EditorGUI.BeginProperty(rect, label, property); drawer.OnGUI(rect, property, label); EditorGUI.EndProperty(); }
void OnEnable() { m_Shape = serializedObject.FindProperty("m_Parameters.m_Shape"); m_StartRange = serializedObject.FindProperty("m_Parameters.m_StartRange"); m_EndRange = serializedObject.FindProperty("m_Parameters.m_EndRange"); m_Length = serializedObject.FindProperty("m_Parameters.m_Length"); m_DirectionX = serializedObject.FindProperty("m_Parameters.m_DirectionCurveX"); m_DirectionY = serializedObject.FindProperty("m_Parameters.m_DirectionCurveY"); m_DirectionZ = serializedObject.FindProperty("m_Parameters.m_DirectionCurveZ"); m_Gravity = serializedObject.FindProperty("m_Parameters.m_GravityCurve"); m_GravityFocus = serializedObject.FindProperty("m_Parameters.m_GravityFocus"); m_RotationSpeed = serializedObject.FindProperty("m_Parameters.m_RotationSpeedCurve"); m_RotationAttraction = serializedObject.FindProperty("m_Parameters.m_RotationAttractionCurve"); m_RotationRandomness = serializedObject.FindProperty("m_Parameters.m_RotationRandomness"); m_Drag = serializedObject.FindProperty("m_Parameters.m_DragCurve"); m_MultiplyDragByParticleSize = serializedObject.FindProperty("m_Parameters.m_MultiplyDragByParticleSize"); m_MultiplyDragByParticleVelocity = serializedObject.FindProperty("m_Parameters.m_MultiplyDragByParticleVelocity"); m_VectorField = serializedObject.FindProperty("m_Parameters.m_VectorField"); m_VectorFieldSpeed = serializedObject.FindProperty("m_Parameters.m_VectorFieldSpeedCurve"); m_VectorFieldAttraction = serializedObject.FindProperty("m_Parameters.m_VectorFieldAttractionCurve"); m_DirectionDrawerX = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_DirectionDrawerY = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_DirectionDrawerZ = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_GravityDrawer = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_RotationSpeedDrawer = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_RotationAttractionDrawer = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_DragDrawer = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_VectorFieldSpeedDrawer = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; m_VectorFieldAttractionDrawer = new MinMaxCurvePropertyDrawer() { isNativeProperty = true, xAxisLabel = "distance" }; }