Exemple #1
0
 static GameObject Import(byte[] bytes, FileInfo path)
 {
     using (var data = Vrm10Data.ParseOrMigrate(path.FullName, bytes, doMigrate: true, out Vrm10Data result, out MigrationData migration))
         using (var loader = new Vrm10Importer(result))
         {
             var loaded = loader.Load();
             loaded.ShowMeshes();
             return(loaded.gameObject);
         }
 }
Exemple #2
0
 private (GameObject, IReadOnlyList <VRMShaders.MaterialFactory.MaterialLoadInfo>) ToUnity(byte[] bytes)
 {
     // Vrm => Model
     using (var data = Vrm10Data.ParseOrMigrate("tpm.vrm", bytes, true, out Vrm10Data result, out MigrationData migration))
     {
         if (result == null)
         {
             throw new Exception();
         }
         return(ToUnity(result));
     }
 }
Exemple #3
0
        public void EmptyThumbnailName()
        {
            using (var data = Vrm10Data.ParseOrMigrate(TestAsset.AliciaPath, true, out Vrm10Data vrm, out MigrationData migration))
            {
                Assert.NotNull(vrm);

                var index = vrm.VrmExtension.Meta.ThumbnailImage.Value;

                // empty thumbnail name
                vrm.Data.GLTF.images[index].name = null;

                using (var loader = new Vrm10Importer(vrm))
                {
                    loader.LoadAsync(new VRMShaders.ImmediateCaller()).Wait();
                }
            }
        }
Exemple #4
0
        public void Sample()
        {
            var path = "Tests/Models/Alicia_vrm-0.51/AliciaSolid_vrm-0.51.vrm";

            Debug.Log($"load: {path}");

            using (var data = Vrm10Data.ParseOrMigrate(path, true, out Vrm10Data result, out MigrationData migration))
            {
                Assert.NotNull(result);

                var go = BuildGameObject(result, true);
                Debug.Log(go);

                // export
                var vrmBytes = Vrm10Exporter.Export(go, new EditorTextureSerializer());

                Debug.Log($"export {vrmBytes.Length} bytes");
            }
        }