public override void OnEnable()
{
base.OnEnable();
s_PreviewMovementSpeed = SessionState.GetFloat(k_PreviewMovementSpeed, 0.2f);
s_PreviewTimeScale = SessionState.GetFloat(k_PreviewTimeScale, 1.0f);
s_PreviewShape = (PreviewShape)SessionState.GetInt(k_PreviewShape, 0);
s_PreviewShapeSize = SessionState.GetFloat(k_PreviewShapeSize, 5.0f);
m_CurveEditor.OnEnable(serializedObject);
s_Inspectors.AddLast(this);
SceneView.duringSceneGui += OnSceneViewGUI;
EditorApplication.update += RepaintSceneView;
ShortcutIntegration.instance.contextManager.RegisterToolContext(m_ShortcutContext);
s_PlayEvent = CreateCommandEvent("Play");
s_StopEvent = CreateCommandEvent("Stop");
s_RestartEvent = CreateCommandEvent("Restart");
s_ShowBoundsEvent = CreateCommandEvent("ShowBounds");
m_Time = serializedObject.FindProperty("m_Time");
m_MinVertexDistance = serializedObject.FindProperty("m_MinVertexDistance");
m_Autodestruct = serializedObject.FindProperty("m_Autodestruct");
m_Emitting = serializedObject.FindProperty("m_Emitting");
m_ApplyActiveColorSpace = serializedObject.FindProperty("m_ApplyActiveColorSpace");
m_ColorGradient = serializedObject.FindProperty("m_Parameters.colorGradient");
m_NumCornerVertices = serializedObject.FindProperty("m_Parameters.numCornerVertices");
m_NumCapVertices = serializedObject.FindProperty("m_Parameters.numCapVertices");
m_Alignment = serializedObject.FindProperty("m_Parameters.alignment");
m_TextureMode = serializedObject.FindProperty("m_Parameters.textureMode");
m_TextureScale = serializedObject.FindProperty("m_Parameters.textureScale");
m_ShadowBias = serializedObject.FindProperty("m_Parameters.shadowBias");
m_GenerateLightingData = serializedObject.FindProperty("m_Parameters.generateLightingData");
m_MaskInteraction = serializedObject.FindProperty("m_MaskInteraction");
}