public override void OnInspectorGUI()
    {
        if (GUILayout.Button("Open Event Editor"))
        {
            MecanimEventEditor editor = EditorWindow.GetWindow <MecanimEventEditor>();
            editor.TargetController = serializedObject.FindProperty("lastEdit").objectReferenceValue;
        }

        if (previewedMotion != null && previewedMotion is UnityEditor.Animations.BlendTree && avatarPreview != null)
        {
            EditorGUILayout.Separator();
            GUILayout.Label("BlendTree Parameter(s)", GUILayout.ExpandWidth(true));

            UnityEditor.Animations.BlendTree bt = previewedMotion as UnityEditor.Animations.BlendTree;

            for (int i = 0; i < bt.GetRecursiveBlendParamCount(); i++)
            {
                float min = bt.GetRecursiveBlendParamMin(i);
                float max = bt.GetRecursiveBlendParamMax(i);

                string paramName = bt.GetRecursiveBlendParam(i);
                float  value     = Mathf.Clamp(avatarPreview.Animator.GetFloat(paramName), min, max);
                value = EditorGUILayout.Slider(paramName, value, min, max);
                avatarPreview.Animator.SetFloat(paramName, value);
            }
        }
    }
	public static MecanimEventEditorPopup Show(MecanimEventEditor editor, MecanimEvent e, KeyValuePair<string, EventConditionParamTypes>[] availableParameters) {
		actived = EditorWindow.GetWindow<MecanimEventEditorPopup>(false, "Edit Event");
		actived.eventEditing = e;

		actived.eventTemp = new MecanimEvent(e);
		actived.editor = editor;
		actived.availableParameters = availableParameters;
		actived.conditionList = new UnityEditorInternal.ReorderableList(actived.eventTemp.condition.conditions, typeof(EventConditionEntry));
		actived.conditionList.drawElementCallback = new UnityEditorInternal.ReorderableList.ElementCallbackDelegate(actived.DrawConditionsElement);
		actived.conditionList.drawHeaderCallback = new UnityEditorInternal.ReorderableList.HeaderCallbackDelegate(actived.DrawConditionsHeader);
		return actived;
	}
Beispiel #3
0
    public static MecanimEventEditorPopup Show(MecanimEventEditor editor, MecanimEvent e, KeyValuePair <string, EventConditionParamTypes>[] availableParameters)
    {
        actived = EditorWindow.GetWindow <MecanimEventEditorPopup>(false, "Edit Event");
        actived.eventEditing = e;

        actived.eventTemp           = new MecanimEvent(e);
        actived.editor              = editor;
        actived.availableParameters = availableParameters;
        actived.conditionList       = new UnityEditorInternal.ReorderableList(actived.eventTemp.condition.conditions, typeof(EventConditionEntry));
        actived.conditionList.drawElementCallback = new UnityEditorInternal.ReorderableList.ElementCallbackDelegate(actived.DrawConditionsElement);
        actived.conditionList.drawHeaderCallback  = new UnityEditorInternal.ReorderableList.HeaderCallbackDelegate(actived.DrawConditionsHeader);
        return(actived);
    }