Пример #1
0
        // async static Task<VRMImporterContext> LoadAsync(Byte[] bytes)
        // {
        //     var context = new VRMImporterContext();

        //     // GLB形式でJSONを取得しParseします
        //     context.ParseGlb(bytes);

        //     // ParseしたJSONをシーンオブジェクトに変換していく
        //     await context.LoadAsyncTask();

        //     return context;
        // }

        /// <summary>
        /// Taskで非同期にロードする例
        /// </summary>
        async void LoadVRMClicked()
        {
#if UNITY_STANDALONE_WIN
            var path = FileDialogForWindows.FileDialog("open VRM", ".vrm");
#else
            var path = Application.dataPath + "/default.vrm";
#endif
            if (string.IsNullOrEmpty(path))
            {
                return;
            }


            // var context = new VRMImporterContext();

            // var bytes = await ReadBytesAsync(path);

            // // GLB形式でJSONを取得しParseします
            // context.ParseGlb(bytes);

            // // metaを取得(todo: thumbnailテクスチャのロード)
            // var meta = context.ReadMeta();
            // Debug.LogFormat("meta: title:{0}", meta.Title);

            // // ParseしたJSONをシーンオブジェクトに変換していく
            // var now = Time.time;
            // await context.LoadAsyncTask();

            // var delta = Time.time - now;
            // Debug.LogFormat("LoadVrmAsync {0:0.0} seconds", delta);
            // OnLoaded(context);
        }
Пример #2
0
        void OnOpenClicked()
        {
#if UNITY_STANDALONE_WIN
            var path = FileDialogForWindows.FileDialog("open VRM", "vrm", "glb", "bvh");
#else
            var path = Application.dataPath + "/default.vrm";
#endif
            if (string.IsNullOrEmpty(path))
            {
                return;
            }

            var ext = Path.GetExtension(path).ToLower();
            switch (ext)
            {
            case ".gltf":
            case ".glb":
            case ".vrm":
                LoadModelAsync(path);
                break;

            case ".bvh":
                LoadMotionAsync(path);
                break;
            }
        }
Пример #3
0
        void LoadBVHClicked()
        {
#if UNITY_STANDALONE_WIN
            var path = FileDialogForWindows.FileDialog("open BVH", ".bvh");
            if (!string.IsNullOrEmpty(path))
            {
                LoadBvh(path);
            }
#else
            LoadBvh(Application.dataPath + "/default.bvh");
#endif
        }