protected void BipedPose()
        {
            AvatarBipedMapper.BipedPose(gameObject, m_Bones);

            AvatarSetupTool.TransferPoseToDescription(m_Skeleton, root);
            m_Inspector.Repaint();
        }
 protected void TransferPoseIfChanged()
 {
     foreach (GameObject selected in Selection.gameObjects)
     {
         if (TransformChanged(selected.transform))
         {
             AvatarSetupTool.TransferPoseToDescription(m_Skeleton, root);
             m_Inspector.Repaint();
             break;
         }
     }
 }
Exemple #3
0
 protected void TransferPoseIfChanged()
 {
     foreach (GameObject gameObject in Selection.gameObjects)
     {
         if (this.TransformChanged(gameObject.transform))
         {
             AvatarSetupTool.TransferPoseToDescription(this.serializedObject, this.root);
             this.m_Inspector.Repaint();
             break;
         }
     }
 }
        private void HandleUndoPerformed()
        {
            if (Event.current.type == EventType.ValidateCommand && Event.current.commandName == EventCommandNames.UndoRedoPerformed)
            {
                SetupInternalProperties();

                AvatarSetupTool.TransferPoseToDescription(m_Skeleton, root);
                for (int i = 0; i < m_Bones.Length; i++)
                {
                    m_Bones[i].Serialize(m_HumanBoneArray);
                }
            }
        }
Exemple #5
0
 protected void TransferPoseIfChanged()
 {
     GameObject[] gameObjects = Selection.gameObjects;
     for (int i = 0; i < gameObjects.Length; i++)
     {
         GameObject gameObject = gameObjects[i];
         if (this.TransformChanged(gameObject.transform))
         {
             AvatarSetupTool.TransferPoseToDescription(base.serializedObject, base.root);
             this.m_Inspector.Repaint();
             break;
         }
     }
 }
 protected void MakePoseValid()
 {
     AvatarSetupTool.MakePoseValid(m_Bones);
     AvatarSetupTool.TransferPoseToDescription(m_Skeleton, root);
     m_Inspector.Repaint();
 }
 protected void SampleBindPose()
 {
     AvatarSetupTool.SampleBindPose(gameObject);
     AvatarSetupTool.TransferPoseToDescription(m_Skeleton, root);
     m_Inspector.Repaint();
 }
 protected void CopyPrefabPose()
 {
     AvatarSetupTool.CopyPose(gameObject, prefab);
     AvatarSetupTool.TransferPoseToDescription(m_Skeleton, root);
     m_Inspector.Repaint();
 }
Exemple #9
0
 protected void MakePoseValid()
 {
     AvatarSetupTool.MakePoseValid(this.m_Bones);
     AvatarSetupTool.TransferPoseToDescription(base.serializedObject, base.root);
     this.m_Inspector.Repaint();
 }
Exemple #10
0
 protected void BipedPose()
 {
     AvatarBipedMapper.BipedPose(base.gameObject);
     AvatarSetupTool.TransferPoseToDescription(base.serializedObject, base.root);
     this.m_Inspector.Repaint();
 }
Exemple #11
0
 protected void CopyPrefabPose()
 {
     AvatarSetupTool.CopyPose(base.gameObject, base.prefab);
     AvatarSetupTool.TransferPoseToDescription(base.serializedObject, base.root);
     this.m_Inspector.Repaint();
 }
Exemple #12
0
 public override void OnInspectorGUI()
 {
     if (Event.current.type == EventType.ValidateCommand && Event.current.commandName == "UndoRedoPerformed")
     {
         AvatarSetupTool.TransferPoseToDescription(base.serializedObject, base.root);
         for (int i = 0; i < this.m_Bones.Length; i++)
         {
             this.m_Bones[i].Serialize(base.serializedObject);
         }
     }
     this.UpdateSelectedBone();
     if (Event.current.type == EventType.KeyDown && (Event.current.keyCode == KeyCode.Backspace || Event.current.keyCode == KeyCode.Delete) && AvatarMappingEditor.s_SelectedBoneIndex != -1 && AvatarMappingEditor.s_SelectedBoneIndex < this.m_Bones.Length)
     {
         Undo.RegisterCompleteObjectUndo(this, "Avatar mapping modified");
         AvatarSetupTool.BoneWrapper boneWrapper = this.m_Bones[AvatarMappingEditor.s_SelectedBoneIndex];
         boneWrapper.bone  = null;
         boneWrapper.state = BoneState.None;
         boneWrapper.Serialize(base.serializedObject);
         Selection.activeTransform = null;
         GUI.changed = true;
         Event.current.Use();
     }
     GUILayout.BeginVertical(new GUILayoutOption[0]);
     EditorGUI.BeginChangeCheck();
     GUILayout.BeginVertical(string.Empty, "TE NodeBackground", new GUILayoutOption[0]);
     this.m_BodyView = AvatarControl.ShowBoneMapping(this.m_BodyView, new AvatarControl.BodyPartFeedback(this.IsValidBodyPart), this.m_Bones, base.serializedObject, this);
     this.HandleBodyView(this.m_BodyView);
     GUILayout.EndVertical();
     this.m_FoldoutScroll = GUILayout.BeginScrollView(this.m_FoldoutScroll, AvatarMappingEditor.styles.box, new GUILayoutOption[]
     {
         GUILayout.MinHeight(80f),
         GUILayout.MaxHeight(500f),
         GUILayout.ExpandHeight(true)
     });
     this.DisplayFoldout();
     GUILayout.FlexibleSpace();
     GUILayout.EndScrollView();
     if (EditorGUI.EndChangeCheck())
     {
         this.ValidateMapping();
         SceneView.RepaintAll();
     }
     this.DisplayMappingButtons();
     GUILayout.EndVertical();
     if (GUIUtility.hotControl == 0)
     {
         this.TransferPoseIfChanged();
     }
     base.ApplyRevertGUI();
     if (Selection.activeTransform != null)
     {
         if (this.m_CurrentTransformEditor != null && this.m_CurrentTransformEditor.target != Selection.activeTransform)
         {
             UnityEngine.Object.DestroyImmediate(this.m_CurrentTransformEditor);
         }
         if (this.m_CurrentTransformEditor == null)
         {
             this.m_CurrentTransformEditor = Editor.CreateEditor(Selection.activeTransform);
         }
         EditorGUILayout.Space();
         this.m_CurrentTransformEditorFoldout = EditorGUILayout.InspectorTitlebar(this.m_CurrentTransformEditorFoldout, Selection.activeTransform, true);
         if (this.m_CurrentTransformEditorFoldout && this.m_CurrentTransformEditor != null)
         {
             this.m_CurrentTransformEditor.OnInspectorGUI();
         }
     }
     else if (this.m_CurrentTransformEditor != null)
     {
         UnityEngine.Object.DestroyImmediate(this.m_CurrentTransformEditor);
         this.m_CurrentTransformEditor = null;
     }
 }
Exemple #13
0
        public override void OnInspectorGUI()
        {
            if (Event.current.type == EventType.ValidateCommand && Event.current.commandName == EventCommandNames.UndoRedoPerformed)
            {
                AvatarSetupTool.TransferPoseToDescription(serializedObject, root);
                for (int i = 0; i < m_Bones.Length; i++)
                {
                    m_Bones[i].Serialize(serializedObject);
                }
            }

            UpdateSelectedBone();

            // case 837655.  GUI.keyboardControl is overriden when changing scene selection.
            // Late update here to bypass this issue.
            if (s_KeyboardControl != 0)
            {
                GUIUtility.keyboardControl = s_KeyboardControl;
                s_KeyboardControl          = 0;
            }

            GUILayout.BeginVertical();
            {
                EditorGUI.BeginChangeCheck();

                GUILayout.BeginVertical("", "TE NodeBackground");
                {
                    m_BodyView = AvatarControl.ShowBoneMapping(m_BodyView, new AvatarControl.BodyPartFeedback(this.IsValidBodyPart), m_Bones, serializedObject, this);
                    HandleBodyView(m_BodyView);
                }
                GUILayout.EndVertical();

                m_FoldoutScroll = GUILayout.BeginScrollView(m_FoldoutScroll, styles.box, GUILayout.MinHeight(80), GUILayout.MaxHeight(500), GUILayout.ExpandHeight(true));
                {
                    DisplayFoldout();
                    GUILayout.FlexibleSpace();
                }
                GUILayout.EndScrollView();

                if (EditorGUI.EndChangeCheck())
                {
                    ValidateMapping();
                    SceneView.RepaintAll();
                }

                DisplayMappingButtons();
            }
            GUILayout.EndVertical();

            if (EditorGUIUtility.hotControl == 0)
            {
                TransferPoseIfChanged();
            }

            //DebugPoseButtons ();

            ApplyRevertGUI();

            if (Selection.activeTransform != null)
            {
                // Selection is changing, clean up before we create a new editor
                if (m_CurrentTransformEditor != null && m_CurrentTransformEditor.target != Selection.activeTransform)
                {
                    DestroyImmediate(m_CurrentTransformEditor);
                }

                if (m_CurrentTransformEditor == null)
                {
                    m_CurrentTransformEditor = Editor.CreateEditor(Selection.activeTransform);
                }

                EditorGUILayout.Space();
                m_CurrentTransformEditorFoldout = EditorGUILayout.InspectorTitlebar(m_CurrentTransformEditorFoldout, Selection.activeTransform, true);

                if (m_CurrentTransformEditorFoldout && m_CurrentTransformEditor != null)
                {
                    m_CurrentTransformEditor.OnInspectorGUI();
                }
            }
            else if (m_CurrentTransformEditor != null)
            {
                DestroyImmediate(m_CurrentTransformEditor);
                m_CurrentTransformEditor = null;
            }
        }
Exemple #14
0
 protected void SampleBindPose()
 {
     AvatarSetupTool.SampleBindPose(this.gameObject);
     AvatarSetupTool.TransferPoseToDescription(this.serializedObject, this.root);
     this.m_Inspector.Repaint();
 }