private void DrawSelectedPointInspector() { GUILayout.Label("Selected Point"); EditorGUI.BeginChangeCheck(); Vector3 point = EditorGUILayout.Vector3Field("Position", _spline.GetControlPoint(_selectedIndex)); if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(_spline, "Move Point"); EditorUtility.SetDirty(_spline); _spline.SetControlPoint(_selectedIndex, point); } EditorGUI.BeginChangeCheck(); BezierControlPointMode mode = (BezierControlPointMode)EditorGUILayout.EnumPopup("Mode", _spline.GetControlPointMode(_selectedIndex)); if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(_spline, "Change Point Mode"); _spline.SetControlPointMode(_selectedIndex, mode); EditorUtility.SetDirty(_spline); } }