Пример #1
0
        /// <summary>
        /// Creates and returns a PosePreset based on humanoid muscle values
        /// </summary>
        public static PumkinsPosePreset CreatePreset(string poseName, HumanPose p)
        {
            PumkinsPosePreset pose = CreateInstance <PumkinsPosePreset>();

            pose.SetupPreset(poseName, p);
            return(pose);
        }
Пример #2
0
        /// <summary>
        /// Creates and returns a PosePreset based on humanoid muscle values
        /// </summary>
        public static PumkinsPosePreset CreatePreset(string poseName, float[] muscles)
        {
            PumkinsPosePreset pose = CreateInstance <PumkinsPosePreset>();

            pose.SetupPreset(poseName, muscles);
            return(pose);
        }
Пример #3
0
        /// <summary>
        /// Creates and returns a PosePreset based on transform rotations only
        /// </summary>
        public static PumkinsPosePreset CreatePreset(string poseName, GameObject avatar, PosePresetMode mode)
        {
            PumkinsPosePreset pose = CreateInstance <PumkinsPosePreset>();

            pose.SetupPreset(poseName, avatar, mode);
            return(pose);
        }
 private void OnDestroy()
 {
     if (editingExistingPreset)
     {
         PumkinsPosePreset preset = (PumkinsPosePreset)CreatePresetPopupBase.preset;
         if (!preset)
         {
             AssignOrCreatePreset <PumkinsPosePreset>(null);
         }
         preset.SetupPreset(preset.name, PumkinsAvatarTools.SelectedAvatar, preset.presetMode);
     }
 }
        private void OnGUI()
        {
            PumkinsPosePreset preset = (PumkinsPosePreset)CreatePresetPopupBase.preset;

            if (!preset)
            {
                AssignOrCreatePreset <PumkinsPosePreset>(null);
                return;
            }

            try
            {
                scroll = EditorGUILayout.BeginScrollView(scroll);
                {
                    EditorGUILayout.Space();

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

                    Helpers.DrawGUILine();

                    PumkinsAvatarTools.DrawAvatarSelectionWithButton(false, false);

                    Helpers.DrawGUILine();

                    preset.presetMode = (PumkinsPosePreset.PosePresetMode)EditorGUILayout.EnumPopup(Strings.Presets.poseMode, preset.presetMode);

                    Helpers.DrawGUILine();

                    if (GUILayout.Button(Strings.Buttons.openPoseEditor, Styles.BigButton))
                    {
                        PumkinsMuscleEditor.ShowWindow();
                    }

                    Helpers.DrawGUILine();

                    EditorGUI.BeginDisabledGroup(!PumkinsAvatarTools.SelectedAvatar || !preset || string.IsNullOrEmpty(preset.name));
                    {
                        if (!editingExistingPreset)
                        {
                            _overwriteFile = GUILayout.Toggle(_overwriteFile, Strings.Presets.overwriteFile);
                            if (GUILayout.Button(Strings.Buttons.savePreset, Styles.BigButton))
                            {
                                preset.SetupPreset(preset.name, PumkinsAvatarTools.SelectedAvatar, preset.presetMode);
                                if (preset)
                                {
                                    EditorApplication.delayCall += () =>
                                    {
                                        preset.SavePreset(_overwriteFile);
                                        Close();
                                    };
                                }
                            }
                        }
                    }
                    EditorGUI.EndDisabledGroup();
                }
                EditorGUILayout.EndScrollView();
                CreatePresetPopupBase.preset = preset;
            }
            catch
            {
                if (this)
                {
                    Close();
                }
            }
        }