Exemplo n.º 1
0
        void OnEnable()
        {
            if (target == null)
            {
                return;
            }
            m_target = (VRM10Object)target;

            m_expression  = SerializedPropertyEditor.Create(serializedObject, nameof(m_target.Expression));
            m_meta        = VRM10MetaEditor.Create(serializedObject);
            m_lookAt      = SerializedPropertyEditor.Create(serializedObject, nameof(m_target.LookAt));
            m_firstPerson = SerializedPropertyEditor.Create(serializedObject, nameof(m_target.FirstPerson));
        }
Exemplo n.º 2
0
        protected override bool DoGUI(bool isValid)
        {
            if (State.ExportRoot == null)
            {
                return(false);
            }

            if (State.ExportRoot.GetComponent <Animator>() != null)
            {
                var backup = GUI.enabled;
                GUI.enabled = State.ExportRoot.scene.IsValid();
                if (GUI.enabled)
                {
                    EditorGUILayout.HelpBox(EnableTPose.ENALBE_TPOSE_BUTTON.Msg(), MessageType.Info);
                }
                else
                {
                    EditorGUILayout.HelpBox(EnableTPose.DISABLE_TPOSE_BUTTON.Msg(), MessageType.Warning);
                }

                if (GUILayout.Button("T-Pose" + "(unity internal)"))
                {
                    if (State.ExportRoot != null)
                    {
                        Undo.RecordObjects(State.ExportRoot.GetComponentsInChildren <Transform>(), "tpose.internal");
                        if (InternalTPose.TryMakePoseValid(State.ExportRoot))
                        {
                            // done
                            Repaint();
                        }
                        else
                        {
                            Debug.LogWarning("not found");
                        }
                    }
                }

                GUI.enabled = backup;
            }

            if (!isValid)
            {
                return(false);
            }

            if (m_tmpObject == null)
            {
                // disabled
                return(false);
            }

            // tabbar
            _tab = TabBar.OnGUI(_tab);
            switch (_tab)
            {
            case Tabs.Meta:
                if (m_metaEditor == null)
                {
                    SerializedObject so;
                    if (m_meta != null)
                    {
                        so = new SerializedObject(Vrm);
                    }
                    else
                    {
                        so = new SerializedObject(m_tmpObject);
                    }
                    m_metaEditor = VRM10MetaEditor.Create(so);
                }
                m_metaEditor.OnInspectorGUI();
                break;

            case Tabs.Mesh:
                m_meshesInspector.OnInspectorGUI();
                break;

            case Tabs.ExportSettings:
                m_settingsInspector.OnInspectorGUI();
                break;
            }

            return(true);
        }