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); } }
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)); } }
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(); } } }
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"); } }