Exemplo n.º 1
0
        private void SetupSaveAsButton()
        {
            var button = _root.Q <Button>("SaveAsPose");

            button.clickable.clicked += () =>
            {
                var    folder = HVRSettings.Instance.PosesDirectory;
                string path;

                if (string.IsNullOrWhiteSpace(folder))
                {
                    path = EditorUtility.SaveFilePanelInProject("Save New Pose", "pose", "asset", "Message");
                }
                else
                {
                    path = EditorUtility.SaveFilePanelInProject("Save New Pose", "pose", "asset", "Message", folder);
                }

                if (!string.IsNullOrEmpty(path))
                {
                    var pose = ThisHand.CreateFullHandPose();
                    SelectedPose = AssetUtils.CreateOrReplaceAsset(pose, path);

                    serializedObject.ApplyModifiedProperties();
                }
            };
        }
Exemplo n.º 2
0
        public void SaveReferencePose(HVRHandPose pose, string name)
        {
            try
            {
                if (!name.EndsWith(".asset"))
                {
                    name += ".asset";
                }

                var path = Path.Combine(LocalReferencePoseDirectory, name);
                AssetUtils.CreateOrReplaceAsset(pose, path);
                Debug.Log($"Saved {name} to {LocalReferencePoseDirectory}");
            }
            catch (Exception e)
            {
                Debug.LogException(e);
            }
        }
Exemplo n.º 3
0
        public HVRHandPose SavePoseToDefault(HVRHandPose pose, string fileName, string directory = null)
        {
            try
            {
                var PosesDirectory = GetPosesDirectory();

                if (string.IsNullOrWhiteSpace(PosesDirectory))
                {
                    //Debug.Log($"Setup PosesDirectory and LocalPosesDirectory.");
                    return(SaveRunTimePose(pose, fileName, null));
                }

                if (!string.IsNullOrWhiteSpace(directory))
                {
                    var folder = Path.Combine(PosesDirectory, directory);
                    Directory.CreateDirectory(folder);
                }

                if (!fileName.EndsWith(".asset"))
                {
                    fileName += ".asset";
                }

                string path;
                if (!string.IsNullOrWhiteSpace(directory))
                {
                    path = Path.Combine(Path.Combine(LocalPosesDirectory, directory), fileName);
                }
                else
                {
                    path = Path.Combine(LocalPosesDirectory, fileName);
                }

                return(AssetUtils.CreateOrReplaceAsset(pose, path));
                //Debug.Log($"Saved {fileName} to {LocalPosesDirectory}");
            }
            catch (Exception e)
            {
                Debug.LogException(e);
            }

            return(null);
        }