private static void CloseSceneTool() { selectedPointIndex = -1; enabled = false; AnimationWindowUtil.SetOnFrameRateChange(onClipSelectionChanged, true); AnimationUtility.onCurveWasModified -= OnCurveWasModified; SceneView.onSceneGUIDelegate = (SceneView.OnSceneFunc)Delegate.RemoveAll(SceneView.onSceneGUIDelegate, new SceneView.OnSceneFunc(OnSceneViewGUI)); SceneView.RepaintAll(); }
public static void OpenSceneTool(GameObject go) { enabled = false; activeGameObject = go; selectedPointIndex = -1; CloseSceneTool(); activeAnimationClip = AnimationWindowUtil.GetActiveAnimationClip(); if (activeAnimationClip == null) { return; } InitPointsInfo(); AnimationWindowUtil.SetOnFrameRateChange(onClipSelectionChanged); AnimationUtility.onCurveWasModified += OnCurveWasModified; if (keepShow) { SceneView.onSceneGUIDelegate = (SceneView.OnSceneFunc)Delegate.Combine(SceneView.onSceneGUIDelegate, new SceneView.OnSceneFunc(OnSceneViewGUI)); } enabled = true; SceneView.RepaintAll(); }