Exemplo n.º 1
0
        private void SetupPreset()
        {
            PumkinsBlendshapePreset preset = (PumkinsBlendshapePreset)CreatePresetPopupBase.preset;

            preset.SetupPreset(preset.name, PumkinsAvatarTools.SelectedAvatar);
            CreatePresetPopupBase.preset = preset;
        }
Exemplo n.º 2
0
        public static PumkinsBlendshapePreset CreatePreset(string presetName, GameObject avatar)
        {
            PumkinsBlendshapePreset preset = CreateInstance <PumkinsBlendshapePreset>();

            preset.SetupPreset(presetName, avatar);
            return(preset);
        }
Exemplo n.º 3
0
        public static void ShowWindow(PumkinsBlendshapePreset newPreset = null)
        {
            AssignOrCreatePreset <PumkinsBlendshapePreset>(newPreset);
            newPreset = (PumkinsBlendshapePreset)preset;

            if (PumkinsAvatarTools.SelectedAvatar)
            {
                newPreset.SetupPreset("", PumkinsAvatarTools.SelectedAvatar);
            }

            if (!_window)
            {
                _window = CreateInstance <CreateBlendshapePopup>();
                _window.autoRepaintOnSceneChange = true;
            }

            if (editingExistingPreset)
            {
                _window.titleContent = new GUIContent(Strings.Presets.editBlendshapePreset);
                _overwriteFile       = true;
            }
            else
            {
                _window.titleContent = new GUIContent(Strings.Presets.createBlendshapePreset);
            }

            _window.ShowUtility();
        }
        public static void ShowWindow(PumkinsBlendshapePreset newPreset = null)
        {
            AssignOrCreatePreset <PumkinsBlendshapePreset>(newPreset);
            newPreset = (PumkinsBlendshapePreset)preset;

            if (PumkinsAvatarTools.SelectedAvatar)
            {
                newPreset.SetupPreset("", PumkinsAvatarTools.SelectedAvatar);
            }

            if (!_window || _window.GetType() != typeof(CreateBlendshapePopup))
            {
                _window = CreateInstance <CreateBlendshapePopup>();
                _window.autoRepaintOnSceneChange = true;

                if (minWindowSize.magnitude > Vector2.zero.magnitude)
                {
                    float maxX = Mathf.Max(_window.minSize.x, minWindowSize.x);
                    float maxY = Mathf.Max(_window.minSize.y, minWindowSize.y);
                    _window.minSize = new Vector2(maxX, maxY);
                }
            }

            if (editingExistingPreset)
            {
                _window.titleContent = new GUIContent(Strings.Presets.editBlendshapePreset);
                _overwriteFile       = true;
            }
            else
            {
                _window.titleContent = new GUIContent(Strings.Presets.createBlendshapePreset);
            }

            _window.ShowUtility();
        }
Exemplo n.º 5
0
        private void OnEnable()
        {
            preset           = (PumkinsBlendshapePreset)target;
            serializedPreset = new SerializedObject(preset);

            pName = serializedPreset.FindProperty("name");
        }
Exemplo n.º 6
0
        private void OnGUI()
        {
            PumkinsBlendshapePreset preset = (PumkinsBlendshapePreset)CreatePresetPopupBase.preset;

            if (!preset)
            {
                AssignOrCreatePreset <PumkinsBlendshapePreset>(preset);
                return;
            }
            try
            {
                scroll = EditorGUILayout.BeginScrollView(scroll);
                {
                    EditorGUILayout.Space();

                    preset.name = EditorGUILayout.TextField(Strings.Presets.presetName, preset.name);

                    Helpers.DrawGUILine();

                    PumkinsAvatarTools.DrawAvatarSelectionWithButtonGUI(false, false);

                    Helpers.DrawGUILine();

                    DrawBlendshapePresetControls();

                    Helpers.DrawGUILine();

                    EditorGUI.BeginDisabledGroup(string.IsNullOrEmpty(preset.name) || !PumkinsAvatarTools.SelectedAvatar);
                    {
                        if (!editingExistingPreset)
                        {
                            _overwriteFile = GUILayout.Toggle(_overwriteFile, Strings.Presets.overwriteFile);
                            if (GUILayout.Button(Strings.Buttons.savePreset, Styles.BigButton))
                            {
                                EditorApplication.delayCall += () =>
                                {
                                    preset.SavePreset(_overwriteFile);
                                    Close();
                                };
                            }
                        }
                    }
                    EditorGUI.EndDisabledGroup();
                }
                EditorGUILayout.EndScrollView();
                CreatePresetPopupBase.preset = preset;
            }
            catch
            {
                if (this)
                {
                    Close();
                }
            }
        }
Exemplo n.º 7
0
        private void DrawBlendshapePresetControls()
        {
            PumkinsBlendshapePreset p = (PumkinsBlendshapePreset)preset;

            if (PumkinsAvatarTools.SelectedAvatar)
            {
                Helpers.DrawBlendshapeSlidersWithDeleteAndAdd(ref p.renderers, PumkinsAvatarTools.SelectedAvatar);
            }
            else
            {
                EditorGUILayout.TextField(Strings.PoseEditor.selectHumanoidAvatar, Styles.HelpBox_OneLine);
            }
        }