From 3a7fc7735ec3c8288a97805ed6df68fa76271751 Mon Sep 17 00:00:00 2001 From: ousttrue Date: Mon, 8 Mar 2021 19:47:52 +0900 Subject: [PATCH] fix Dispose --- .../Editor/UniGLTF/EditorImporterContext.cs | 44 +- .../Runtime/UniGLTF/IO/ImporterContext.cs | 9 +- .../UniGLTF/Runtime/UniJSON/ActionDisposer.cs | 20 - .../Runtime/UniJSON/ActionDisposer.cs.meta | 12 - .../Editor/Tests/VRMImportExportTests.cs | 68 +- .../Scenes/VRMRuntimeLoaderSample.Net4.unity | 1743 ----------------- .../VRMRuntimeLoaderSample.Net4.unity.meta | 8 - .../VRM.Samples/Scripts/VRMRuntimeExporter.cs | 16 +- .../VRM.Samples/Scripts/VRMRuntimeLoader.cs | 33 +- .../Scripts/VRMRuntimeLoaderNet4.cs | 188 -- .../Scripts/VRMRuntimeLoaderNet4.cs.meta | 12 - Assets/VRM.Samples/Scripts/ViewerUI.cs | 24 +- Assets/VRM/Editor/Format/VRMImporterMenu.cs | 32 +- .../Editor/Format/vrmAssetPostprocessor.cs | 18 +- Assets/VRM/Runtime/IO/VRMImporterContext.cs | 4 +- 15 files changed, 119 insertions(+), 2112 deletions(-) delete mode 100644 Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs delete mode 100644 Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs.meta delete mode 100644 Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity delete mode 100644 Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity.meta delete mode 100644 Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs delete mode 100644 Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs.meta diff --git a/Assets/UniGLTF/Editor/UniGLTF/EditorImporterContext.cs b/Assets/UniGLTF/Editor/UniGLTF/EditorImporterContext.cs index ed8bb03f3..8d6f52cba 100644 --- a/Assets/UniGLTF/Editor/UniGLTF/EditorImporterContext.cs +++ b/Assets/UniGLTF/Editor/UniGLTF/EditorImporterContext.cs @@ -19,35 +19,6 @@ namespace UniGLTF m_context = context; } - // public virtual IEnumerable ObjectsForSubAsset() - // { - // foreach (var x in m_context.TextureFactory.ObjectsForSubAsset()) - // { - // yield return x; - // } - // foreach (var x in m_context.MaterialFactory.ObjectsForSubAsset()) - // { - // yield return x; - // } - // foreach (var x in m_context.Meshes) { yield return x.Mesh; } - // foreach (var x in m_context.AnimationClips) { yield return x; } - // } - - // /// - // /// Destroy assets that created ImporterContext. This function is clean up for importer error. - // /// - // public virtual void EditorDestroyRootAndAssets() - // { - // // Remove hierarchy - // if (m_context.Root != null) GameObject.DestroyImmediate(m_context.Root); - - // // Remove resources. materials, textures meshes etc... - // foreach (var o in ObjectsForSubAsset()) - // { - // UnityEngine.Object.DestroyImmediate(o, true); - // } - // } - public virtual UnityPath GetAssetPath(UnityPath prefabPath, UnityEngine.Object o, bool meshAsSubAsset) { if (o is Material) @@ -122,6 +93,9 @@ namespace UniGLTF prefabPath }; + // backup + var root = m_context.Root; + m_context.TransferOwnership(o => { @@ -168,21 +142,13 @@ namespace UniGLTF { Debug.LogFormat("replace prefab: {0}", prefabPath); var prefab = prefabPath.LoadAsset(); -#if UNITY_2018_3_OR_NEWER - PrefabUtility.SaveAsPrefabAssetAndConnect(m_context.Root, prefabPath.Value, InteractionMode.AutomatedAction); -#else - PrefabUtility.ReplacePrefab(Root, prefab, ReplacePrefabOptions.ReplaceNameBased); -#endif + PrefabUtility.SaveAsPrefabAssetAndConnect(root, prefabPath.Value, InteractionMode.AutomatedAction); } else { Debug.LogFormat("create prefab: {0}", prefabPath); -#if UNITY_2018_3_OR_NEWER - PrefabUtility.SaveAsPrefabAssetAndConnect(m_context.Root, prefabPath.Value, InteractionMode.AutomatedAction); -#else - PrefabUtility.CreatePrefab(prefabPath.Value, Root); -#endif + PrefabUtility.SaveAsPrefabAssetAndConnect(root, prefabPath.Value, InteractionMode.AutomatedAction); } foreach (var x in paths) { diff --git a/Assets/UniGLTF/Runtime/UniGLTF/IO/ImporterContext.cs b/Assets/UniGLTF/Runtime/UniGLTF/IO/ImporterContext.cs index dfe817d85..653bbfa3a 100644 --- a/Assets/UniGLTF/Runtime/UniGLTF/IO/ImporterContext.cs +++ b/Assets/UniGLTF/Runtime/UniGLTF/IO/ImporterContext.cs @@ -190,8 +190,9 @@ namespace UniGLTF } #endregion - #region Imported + #region Imported public GameObject Root; + bool m_ownRoot = true; public List Nodes = new List(); public List Meshes = new List(); @@ -252,7 +253,7 @@ namespace UniGLTF m_materialFactory.Dispose(); m_textureFactory.Dispose(); - if (Root) + if (m_ownRoot && Root != null) { #if VRM_DEVELOP Debug.Log($"Destroy {Root}"); @@ -282,10 +283,10 @@ namespace UniGLTF } AnimationClips.Clear(); - if (Root != null) + if (m_ownRoot && Root != null) { add(Root); - Root = null; + m_ownRoot = false; } } diff --git a/Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs b/Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs deleted file mode 100644 index 09d6c0804..000000000 --- a/Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; - - -namespace UniJSON -{ - public struct ActionDisposer : IDisposable - { - Action m_action; - - public ActionDisposer(Action action) - { - m_action = action; - } - - public void Dispose() - { - m_action(); - } - } -} diff --git a/Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs.meta b/Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs.meta deleted file mode 100644 index 1a21d6618..000000000 --- a/Assets/UniGLTF/Runtime/UniJSON/ActionDisposer.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: ff15446e31b14ac409251c931b7c2038 -timeCreated: 1531893103 -licenseType: Free -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/VRM.Samples/Editor/Tests/VRMImportExportTests.cs b/Assets/VRM.Samples/Editor/Tests/VRMImportExportTests.cs index ae051e2e1..852ae2b2c 100644 --- a/Assets/VRM.Samples/Editor/Tests/VRMImportExportTests.cs +++ b/Assets/VRM.Samples/Editor/Tests/VRMImportExportTests.cs @@ -45,13 +45,12 @@ namespace VRM.Samples var parser = new GltfParser(); parser.ParseGlb(File.ReadAllBytes(path)); - var context = new VRMImporterContext(parser); - context.Load(); - context.ShowMeshes(); - context.EnableUpdateWhenOffscreen(); - - using (new ActionDisposer(() => { GameObject.DestroyImmediate(context.Root); })) + using (var context = new VRMImporterContext(parser)) { + context.Load(); + context.ShowMeshes(); + context.EnableUpdateWhenOffscreen(); + var importedJson = JsonParser.Parse(context.Json); importedJson.SetValue("/extensions/VRM/exporterVersion", VRMVersion.VRM_VERSION, (f, x) => f.Value(x)); importedJson.SetValue("/asset/generator", UniGLTF.UniGLTFVersion.UNIGLTF_VERSION, (f, x) => f.Value(x)); @@ -118,16 +117,18 @@ namespace VRM.Samples var path = AliciaPath; var parser = new GltfParser(); parser.ParseGlb(File.ReadAllBytes(path)); - var context = new VRMImporterContext(parser); - context.Load(); - context.ShowMeshes(); - context.EnableUpdateWhenOffscreen(); - foreach (var mesh in context.Meshes) + using (var context = new VRMImporterContext(parser)) { - var src = mesh.Mesh; - var dst = src.Copy(true); - MeshTests.MeshEquals(src, dst); + context.Load(); + context.ShowMeshes(); + context.EnableUpdateWhenOffscreen(); + foreach (var mesh in context.Meshes) + { + var src = mesh.Mesh; + var dst = src.Copy(true); + MeshTests.MeshEquals(src, dst); + } } } @@ -138,28 +139,31 @@ namespace VRM.Samples var path = AliciaPath; var parser = new GltfParser(); parser.ParseGlb(File.ReadAllBytes(path)); - var context = new VRMImporterContext(parser); - var oldJson = context.GLTF.ToJson().ParseAsJson().ToString(" "); - // 生成シリアライザでJSON化する - var f = new JsonFormatter(); - GltfSerializer.Serialize(f, context.GLTF); - var parsed = f.ToString().ParseAsJson(); - var newJson = parsed.ToString(" "); + using (var context = new VRMImporterContext(parser)) + { + var oldJson = context.GLTF.ToJson().ParseAsJson().ToString(" "); - // File.WriteAllText("old.json", oldJson); - // File.WriteAllText("new.json", newJson); + // 生成シリアライザでJSON化する + var f = new JsonFormatter(); + GltfSerializer.Serialize(f, context.GLTF); + var parsed = f.ToString().ParseAsJson(); + var newJson = parsed.ToString(" "); - // 比較 - Assert.AreEqual(oldJson.ParseAsJson().ToString(), newJson.ParseAsJson().ToString()); + // File.WriteAllText("old.json", oldJson); + // File.WriteAllText("new.json", newJson); - // 生成デシリアライザでロードする - var ff = new JsonFormatter(); - var des = GltfDeserializer.Deserialize(parsed); - ff.Clear(); - GltfSerializer.Serialize(ff, des); - var desJson = ff.ToString().ParseAsJson().ToString(" "); - Assert.AreEqual(oldJson.ParseAsJson().ToString(), desJson.ParseAsJson().ToString()); + // 比較 + Assert.AreEqual(oldJson.ParseAsJson().ToString(), newJson.ParseAsJson().ToString()); + + // 生成デシリアライザでロードする + var ff = new JsonFormatter(); + var des = GltfDeserializer.Deserialize(parsed); + ff.Clear(); + GltfSerializer.Serialize(ff, des); + var desJson = ff.ToString().ParseAsJson().ToString(" "); + Assert.AreEqual(oldJson.ParseAsJson().ToString(), desJson.ParseAsJson().ToString()); + } } } } diff --git a/Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity b/Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity deleted file mode 100644 index 68ba0aa45..000000000 --- a/Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity +++ /dev/null @@ -1,1743 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!29 &1 -OcclusionCullingSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_OcclusionBakeSettings: - smallestOccluder: 5 - smallestHole: 0.25 - backfaceThreshold: 100 - m_SceneGUID: 00000000000000000000000000000000 - m_OcclusionCullingData: {fileID: 0} ---- !u!104 &2 -RenderSettings: - m_ObjectHideFlags: 0 - serializedVersion: 9 - m_Fog: 0 - m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} - m_FogMode: 3 - m_FogDensity: 0.01 - m_LinearFogStart: 0 - m_LinearFogEnd: 300 - m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} - m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} - m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} - m_AmbientIntensity: 1 - m_AmbientMode: 0 - m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} - m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} - m_HaloStrength: 0.5 - m_FlareStrength: 1 - m_FlareFadeSpeed: 3 - m_HaloTexture: {fileID: 0} - m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} - m_DefaultReflectionMode: 0 - m_DefaultReflectionResolution: 128 - m_ReflectionBounces: 1 - m_ReflectionIntensity: 1 - m_CustomReflection: {fileID: 0} - m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0.44664878, g: 0.49649704, b: 0.57486165, a: 1} - m_UseRadianceAmbientProbe: 0 ---- !u!157 &3 -LightmapSettings: - m_ObjectHideFlags: 0 - serializedVersion: 11 - m_GIWorkflowMode: 0 - m_GISettings: - serializedVersion: 2 - m_BounceScale: 1 - m_IndirectOutputScale: 1 - m_AlbedoBoost: 1 - m_TemporalCoherenceThreshold: 1 - m_EnvironmentLightingMode: 0 - m_EnableBakedLightmaps: 1 - m_EnableRealtimeLightmaps: 1 - m_LightmapEditorSettings: - serializedVersion: 10 - m_Resolution: 2 - m_BakeResolution: 40 - m_AtlasSize: 1024 - m_AO: 0 - m_AOMaxDistance: 1 - m_CompAOExponent: 1 - m_CompAOExponentDirect: 0 - m_Padding: 2 - m_LightmapParameters: {fileID: 0} - m_LightmapsBakeMode: 1 - m_TextureCompression: 1 - m_FinalGather: 0 - m_FinalGatherFiltering: 1 - m_FinalGatherRayCount: 256 - m_ReflectionCompression: 2 - m_MixedBakeMode: 2 - m_BakeBackend: 0 - m_PVRSampling: 1 - m_PVRDirectSampleCount: 32 - m_PVRSampleCount: 500 - m_PVRBounces: 2 - m_PVRFilterTypeDirect: 0 - m_PVRFilterTypeIndirect: 0 - m_PVRFilterTypeAO: 0 - m_PVRFilteringMode: 1 - m_PVRCulling: 1 - m_PVRFilteringGaussRadiusDirect: 1 - m_PVRFilteringGaussRadiusIndirect: 5 - m_PVRFilteringGaussRadiusAO: 2 - m_PVRFilteringAtrousPositionSigmaDirect: 0.5 - m_PVRFilteringAtrousPositionSigmaIndirect: 2 - m_PVRFilteringAtrousPositionSigmaAO: 1 - m_ShowResolutionOverlay: 1 - m_LightingDataAsset: {fileID: 0} - m_UseShadowmask: 1 ---- !u!196 &4 -NavMeshSettings: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_BuildSettings: - serializedVersion: 2 - agentTypeID: 0 - agentRadius: 0.5 - agentHeight: 2 - agentSlope: 45 - agentClimb: 0.4 - ledgeDropHeight: 0 - maxJumpAcrossDistance: 0 - minRegionArea: 2 - manualCellSize: 0 - cellSize: 0.16666667 - manualTileSize: 0 - tileSize: 256 - accuratePlacement: 0 - debug: - m_Flags: 0 - m_NavMeshData: {fileID: 0} ---- !u!1 &147376043 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 147376044} - - component: {fileID: 147376046} - - component: {fileID: 147376045} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &147376044 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 147376043} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 2108006564} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 1} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: -88.7, y: -23.7} - m_SizeDelta: {x: 177.4, y: 47.4} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &147376045 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 147376043} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 32 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 3 - m_MaxSize: 40 - m_Alignment: 0 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: FirstPerson ---- !u!222 &147376046 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 147376043} - m_CullTransparentMesh: 0 ---- !u!1 &267321008 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 267321009} - - component: {fileID: 267321012} - - component: {fileID: 267321011} - - component: {fileID: 267321010} - m_Layer: 5 - m_Name: BottomLeft - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &267321009 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 267321008} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 2036452538} - - {fileID: 555566559} - m_Father: {fileID: 2082684587} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 1} ---- !u!114 &267321010 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 267321008} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1297475563, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_ChildAlignment: 0 - m_Spacing: 0 - m_ChildForceExpandWidth: 1 - m_ChildForceExpandHeight: 0 - m_ChildControlWidth: 0 - m_ChildControlHeight: 0 ---- !u!114 &267321011 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 267321008} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 0.392} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 ---- !u!222 &267321012 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 267321008} - m_CullTransparentMesh: 0 ---- !u!1 &283664911 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 283664914} - - component: {fileID: 283664913} - - component: {fileID: 283664912} - m_Layer: 0 - m_Name: EventSystem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &283664912 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 283664911} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_HorizontalAxis: Horizontal - m_VerticalAxis: Vertical - m_SubmitButton: Submit - m_CancelButton: Cancel - m_InputActionsPerSecond: 10 - m_RepeatDelay: 0.5 - m_ForceModuleActive: 0 ---- !u!114 &283664913 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 283664911} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_FirstSelected: {fileID: 0} - m_sendNavigationEvents: 1 - m_DragThreshold: 5 ---- !u!4 &283664914 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 283664911} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &555566558 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 555566559} - - component: {fileID: 555566562} - - component: {fileID: 555566561} - - component: {fileID: 555566560} - m_Layer: 5 - m_Name: LoadBVH - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &555566559 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 555566558} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 605703266} - m_Father: {fileID: 267321009} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 80, y: -45} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &555566560 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 555566558} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 555566561} - m_OnClick: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, - Culture=neutral, PublicKeyToken=null ---- !u!114 &555566561 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 555566558} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 ---- !u!222 &555566562 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 555566558} - m_CullTransparentMesh: 0 ---- !u!1 &568975773 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 568975775} - - component: {fileID: 568975774} - m_Layer: 0 - m_Name: CameraManager - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &568975774 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 568975773} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6b34fb2c039c3ce4881f04e476a2128f, type: 3} - m_Name: - m_EditorClassIdentifier: - m_topLeft: - Camera: {fileID: 1468129204} - Texture: {fileID: 0} - Image: {fileID: 2108006565} - m_topRight: - Camera: {fileID: 772693251} - Texture: {fileID: 0} - Image: {fileID: 635962097} - m_bottomRight: - Camera: {fileID: 1919635067} - Texture: {fileID: 0} - Image: {fileID: 991744090} - m_firstPersonCamera: {fileID: 1468129204} - m_thirdPersonCameras: - - {fileID: 1919635067} - - {fileID: 772693251} ---- !u!4 &568975775 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 568975773} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 1468129205} - - {fileID: 772693254} - - {fileID: 1919635063} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &605703265 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 605703266} - - component: {fileID: 605703268} - - component: {fileID: 605703267} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &605703266 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 605703265} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 555566559} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &605703267 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 605703265} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Load BVH ---- !u!222 &605703268 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 605703265} - m_CullTransparentMesh: 0 ---- !u!1 &635962095 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 635962096} - - component: {fileID: 635962098} - - component: {fileID: 635962097} - m_Layer: 5 - m_Name: TopRight - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &635962096 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 635962095} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 646222219} - m_Father: {fileID: 2082684587} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 1} ---- !u!114 &635962097 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 635962095} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -98529514, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Texture: {fileID: 0} - m_UVRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 ---- !u!222 &635962098 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 635962095} - m_CullTransparentMesh: 0 ---- !u!1 &646222218 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 646222219} - - component: {fileID: 646222221} - - component: {fileID: 646222220} - m_Layer: 5 - m_Name: Text (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &646222219 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 646222218} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 635962096} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 88.7, y: -23.700012} - m_SizeDelta: {x: 177.4, y: 47.4} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &646222220 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 646222218} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 32 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 3 - m_MaxSize: 40 - m_Alignment: 0 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: ThirdPerson ---- !u!222 &646222221 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 646222218} - m_CullTransparentMesh: 0 ---- !u!1 &772693250 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 772693254} - - component: {fileID: 772693251} - - component: {fileID: 772693253} - - component: {fileID: 772693252} - m_Layer: 0 - m_Name: OutPov - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!20 &772693251 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 772693250} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} - m_projectionMatrixMode: 1 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.3 - far clip plane: 1000 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294966783 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!81 &772693252 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 772693250} - m_Enabled: 0 ---- !u!124 &772693253 -Behaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 772693250} - m_Enabled: 0 ---- !u!4 &772693254 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 772693250} - m_LocalRotation: {x: 0, y: 1, z: 0, w: 0} - m_LocalPosition: {x: 0, y: 1.2, z: 1} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 568975775} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} ---- !u!1 &936781945 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 936781946} - - component: {fileID: 936781948} - - component: {fileID: 936781947} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &936781946 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 936781945} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 2036452538} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &936781947 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 936781945} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Load VRM ---- !u!222 &936781948 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 936781945} - m_CullTransparentMesh: 0 ---- !u!1 &991744088 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 991744089} - - component: {fileID: 991744091} - - component: {fileID: 991744090} - m_Layer: 5 - m_Name: BottomRight - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &991744089 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 991744088} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 1382317302} - m_Father: {fileID: 2082684587} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 1, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 1} ---- !u!114 &991744090 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 991744088} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -98529514, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Texture: {fileID: 0} - m_UVRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 ---- !u!222 &991744091 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 991744088} - m_CullTransparentMesh: 0 ---- !u!1 &1148284494 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1148284495} - - component: {fileID: 1148284496} - m_Layer: 0 - m_Name: VRMRuntimeLoader - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1148284495 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1148284494} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1148284496 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1148284494} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 649886f2803ade846a93be89f73e35c7, type: 3} - m_Name: - m_EditorClassIdentifier: - m_loadAsync: 1 - m_canvas: {fileID: 2082684588} - m_faceCamera: {fileID: 1919635064} - m_source: {fileID: 0} - m_target: {fileID: 0} - m_firstPerson: {fileID: 0} ---- !u!1 &1175289393 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1175289395} - - component: {fileID: 1175289394} - m_Layer: 0 - m_Name: Directional light - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!108 &1175289394 -Light: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1175289393} - m_Enabled: 1 - serializedVersion: 8 - m_Type: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Intensity: 0.33 - m_Range: 10 - m_SpotAngle: 30 - m_CookieSize: 10 - m_Shadows: - m_Type: 0 - m_Resolution: -1 - m_CustomResolution: -1 - m_Strength: 1 - m_Bias: 0.05 - m_NormalBias: 0.4 - m_NearPlane: 0.2 - m_Cookie: {fileID: 0} - m_DrawHalo: 0 - m_Flare: {fileID: 0} - m_RenderMode: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_Lightmapping: 4 - m_LightShadowCasterMode: 0 - m_AreaSize: {x: 1, y: 1} - m_BounceIntensity: 1 - m_ColorTemperature: 6570 - m_UseColorTemperature: 0 - m_ShadowRadius: 0 - m_ShadowAngle: 0 ---- !u!4 &1175289395 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1175289393} - m_LocalRotation: {x: 0.2571214, y: -0.8612099, z: 0.4380491, w: 0.017861776} - m_LocalPosition: {x: 2.84, y: 1.7, z: 2.02} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 130.209, y: -17.533997, z: 138.566} ---- !u!1 &1382317301 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1382317302} - - component: {fileID: 1382317304} - - component: {fileID: 1382317303} - m_Layer: 5 - m_Name: Text (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1382317302 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1382317301} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 991744089} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 242.4, y: -23.699997} - m_SizeDelta: {x: 484.7, y: 47.4} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1382317303 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1382317301} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 32 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 3 - m_MaxSize: 40 - m_Alignment: 0 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: ThirdPerson(BlendShapeCheck) ---- !u!222 &1382317304 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1382317301} - m_CullTransparentMesh: 0 ---- !u!1 &1396766179 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1396766183} - - component: {fileID: 1396766182} - - component: {fileID: 1396766181} - - component: {fileID: 1396766180} - m_Layer: 0 - m_Name: Plane - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1396766180 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1396766179} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RenderingLayerMask: 4294967295 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 1 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 0 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 ---- !u!64 &1396766181 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1396766179} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 3 - m_Convex: 0 - m_CookingOptions: 14 - m_SkinWidth: 0.01 - m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} ---- !u!33 &1396766182 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1396766179} - m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} ---- !u!4 &1396766183 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1396766179} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 1.41} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1468129200 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1468129205} - - component: {fileID: 1468129204} - - component: {fileID: 1468129203} - - component: {fileID: 1468129202} - - component: {fileID: 1468129201} - m_Layer: 0 - m_Name: FirstPerson - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!81 &1468129201 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1468129200} - m_Enabled: 0 ---- !u!92 &1468129202 -Behaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1468129200} - m_Enabled: 0 ---- !u!124 &1468129203 -Behaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1468129200} - m_Enabled: 0 ---- !u!20 &1468129204 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1468129200} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} - m_projectionMatrixMode: 1 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.3 - far clip plane: 1000 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294966271 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!4 &1468129205 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1468129200} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.13, z: -1.29} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 568975775} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1919635062 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1919635063} - - component: {fileID: 1919635067} - - component: {fileID: 1919635066} - - component: {fileID: 1919635065} - - component: {fileID: 1919635064} - m_Layer: 0 - m_Name: OutFace - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1919635063 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1919635062} - m_LocalRotation: {x: -0, y: 1, z: -0, w: 0} - m_LocalPosition: {x: -0.261, y: 1.497, z: 0.048} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 568975775} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} ---- !u!114 &1919635064 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1919635062} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d1cc319f70f55264eb38d1959c4222c6, type: 3} - m_Name: - m_EditorClassIdentifier: - Target: {fileID: 0} - m_offset: {x: 0, y: 0.05, z: 0} - m_distance: 0.7 - m_offsetTransform: - Transform: {fileID: 0} - OffsetRotation: - e00: 0 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 0 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 0 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 0 ---- !u!81 &1919635065 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1919635062} - m_Enabled: 0 ---- !u!124 &1919635066 -Behaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1919635062} - m_Enabled: 0 ---- !u!20 &1919635067 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1919635062} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} - m_projectionMatrixMode: 1 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.01 - far clip plane: 2 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294966783 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!1 &2036452537 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2036452538} - - component: {fileID: 2036452541} - - component: {fileID: 2036452540} - - component: {fileID: 2036452539} - m_Layer: 5 - m_Name: LoadVRM - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2036452538 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2036452537} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 936781946} - m_Father: {fileID: 267321009} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 80, y: -15} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &2036452539 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2036452537} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 2036452540} - m_OnClick: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, - Culture=neutral, PublicKeyToken=null ---- !u!114 &2036452540 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2036452537} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 ---- !u!222 &2036452541 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2036452537} - m_CullTransparentMesh: 0 ---- !u!1 &2082684583 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2082684587} - - component: {fileID: 2082684586} - - component: {fileID: 2082684585} - - component: {fileID: 2082684584} - - component: {fileID: 2082684588} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &2082684584 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2082684583} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!114 &2082684585 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2082684583} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 ---- !u!223 &2082684586 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2082684583} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!224 &2082684587 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2082684583} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_Children: - - {fileID: 2108006564} - - {fileID: 635962096} - - {fileID: 991744089} - - {fileID: 267321009} - m_Father: {fileID: 0} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!114 &2082684588 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2082684583} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 1ae08a6ba07c0864c9132bc8a004030d, type: 3} - m_Name: - m_EditorClassIdentifier: - LoadVRMButton: {fileID: 2036452539} - LoadBVHButton: {fileID: 555566560} ---- !u!1 &2108006563 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2108006564} - - component: {fileID: 2108006566} - - component: {fileID: 2108006565} - m_Layer: 5 - m_Name: TopLeft - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2108006564 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2108006563} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 147376044} - m_Father: {fileID: 2082684587} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0.5} - m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 1} ---- !u!114 &2108006565 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2108006563} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -98529514, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Texture: {fileID: 0} - m_UVRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 ---- !u!222 &2108006566 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2108006563} - m_CullTransparentMesh: 0 diff --git a/Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity.meta b/Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity.meta deleted file mode 100644 index b2e4bb311..000000000 --- a/Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.Net4.unity.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2f563e7bcfaebb74dbf9748df1f4824c -timeCreated: 1520832729 -licenseType: Free -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/VRM.Samples/Scripts/VRMRuntimeExporter.cs b/Assets/VRM.Samples/Scripts/VRMRuntimeExporter.cs index 888a4dc66..16119365e 100644 --- a/Assets/VRM.Samples/Scripts/VRMRuntimeExporter.cs +++ b/Assets/VRM.Samples/Scripts/VRMRuntimeExporter.cs @@ -50,16 +50,18 @@ namespace VRM.Samples var parser = new GltfParser(); parser.ParseGlb(bytes); - var context = new VRMImporterContext(parser); + using (var context = new VRMImporterContext(parser)) + { - // metaを取得(todo: thumbnailテクスチャのロード) - var meta = await context.ReadMetaAsync(); - Debug.LogFormat("meta: title:{0}", meta.Title); + // metaを取得(todo: thumbnailテクスチャのロード) + var meta = await context.ReadMetaAsync(); + Debug.LogFormat("meta: title:{0}", meta.Title); - // ParseしたJSONをシーンオブジェクトに変換していく - await context.LoadAsync(); + // ParseしたJSONをシーンオブジェクトに変換していく + await context.LoadAsync(); - OnLoaded(context); + OnLoaded(context); + } } void OnLoaded(VRMImporterContext context) diff --git a/Assets/VRM.Samples/Scripts/VRMRuntimeLoader.cs b/Assets/VRM.Samples/Scripts/VRMRuntimeLoader.cs index 192de0f0f..023690a18 100644 --- a/Assets/VRM.Samples/Scripts/VRMRuntimeLoader.cs +++ b/Assets/VRM.Samples/Scripts/VRMRuntimeLoader.cs @@ -90,23 +90,24 @@ namespace VRM.Samples var parser = new GltfParser(); parser.Parse(path, bytes); - var context = new VRMImporterContext(parser); - - // metaを取得(todo: thumbnailテクスチャのロード) - var meta = await context.ReadMetaAsync(); - Debug.LogFormat("meta: title:{0}", meta.Title); - - // ParseしたJSONをシーンオブジェクトに変換していく - if (m_loadAsync) + using (var context = new VRMImporterContext(parser)) { - await context.LoadAsync(); - } - else - { - context.Load(); - } + // metaを取得(todo: thumbnailテクスチャのロード) + var meta = await context.ReadMetaAsync(); + Debug.LogFormat("meta: title:{0}", meta.Title); - OnLoaded(context); + // ParseしたJSONをシーンオブジェクトに変換していく + if (m_loadAsync) + { + await context.LoadAsync(); + } + else + { + context.Load(); + } + + OnLoaded(context); + } } /// @@ -167,10 +168,12 @@ namespace VRM.Samples void OnLoaded(VRMImporterContext context) { var root = context.Root; + root.transform.SetParent(transform, false); //メッシュを表示します context.ShowMeshes(); + context.DisposeOnGameObjectDestroyed(); // add motion var humanPoseTransfer = root.AddComponent(); diff --git a/Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs b/Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs deleted file mode 100644 index 928361913..000000000 --- a/Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs +++ /dev/null @@ -1,188 +0,0 @@ -#pragma warning disable 0414 -using System; -using System.IO; -using UnityEngine; -#if (NET_4_6 && UNITY_2017_1_OR_NEWER) -using System.Threading.Tasks; -#endif - - -namespace VRM.Samples -{ - public class VRMRuntimeLoaderNet4 : MonoBehaviour - { - [SerializeField, Header("GUI")] - CanvasManager m_canvas; - - [SerializeField] - LookTarget m_faceCamera; - - [SerializeField, Header("loader")] - UniHumanoid.HumanPoseTransfer m_source; - - [SerializeField] - UniHumanoid.HumanPoseTransfer m_target; - - [SerializeField, Header("runtime")] - VRMFirstPerson m_firstPerson; - -#if (NET_4_6 && UNITY_2017_1_OR_NEWER && !UNITY_WEBGL) - VRMBlendShapeProxy m_blendShape; - - void SetupTarget() - { - if (m_target != null) - { - m_target.Source = m_source; - m_target.SourceType = UniHumanoid.HumanPoseTransfer.HumanPoseTransferSourceType.HumanPoseTransfer; - - m_blendShape = m_target.GetComponent(); - - m_firstPerson = m_target.GetComponent(); - - var animator = m_target.GetComponent(); - if (animator != null) - { - m_firstPerson.Setup(); - - if (m_faceCamera != null) - { - m_faceCamera.Target = animator.GetBoneTransform(HumanBodyBones.Head); - } - } - } - } - - private void Awake() - { - SetupTarget(); - } - - private void Start() - { - if (m_canvas == null) - { - Debug.LogWarning("no canvas"); - return; - } - - m_canvas.LoadVRMButton.onClick.AddListener(LoadVRMClicked); - m_canvas.LoadBVHButton.onClick.AddListener(LoadBVHClicked); - } - - // Byte列を得る - async static Task ReadBytesAsync(string path) - { - return File.ReadAllBytes(path); - } - - async static Task LoadAsync(Byte[] bytes) - { - var context = new VRMImporterContext(); - - // GLB形式でJSONを取得しParseします - context.ParseGlb(bytes); - - // ParseしたJSONをシーンオブジェクトに変換していく - await context.LoadAsyncTask(); - - return context; - } - - /// - /// Taskで非同期にロードする例 - /// - async void LoadVRMClicked() - { -#if UNITY_STANDALONE_WIN - var path = FileDialogForWindows.FileDialog("open VRM", ".vrm"); -#elif UNITY_EDITOR - var path = UnityEditor.EditorUtility.OpenFilePanel("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); - - } - - void LoadBVHClicked() - { -#if UNITY_STANDALONE_WIN - var path = FileDialogForWindows.FileDialog("open BVH", ".bvh"); - if (!string.IsNullOrEmpty(path)) - { - LoadBvh(path); - } -#elif UNITY_EDITOR - var path = UnityEditor.EditorUtility.OpenFilePanel("Open BVH", "", "bvh"); - if (!string.IsNullOrEmpty(path)) - { - LoadBvh(path); - } -#else - LoadBvh(Application.dataPath + "/default.bvh"); -#endif - } - - void OnLoaded(VRMImporterContext context) - { - var root = context.Root; - root.transform.SetParent(transform, false); - - //メッシュを表示します - context.ShowMeshes(); - - // add motion - var humanPoseTransfer = root.AddComponent(); - if (m_target != null) - { - GameObject.Destroy(m_target.gameObject); - } - m_target = humanPoseTransfer; - SetupTarget(); - } - - void LoadBvh(string path) - { - Debug.LogFormat("ImportBvh: {0}", path); - - var context = new UniHumanoid.BvhImporterContext(); - - context.Parse(path); - - context.Load(); - - if (m_source != null) - { - GameObject.Destroy(m_source.gameObject); - } - m_source = context.Root.GetComponent(); - - SetupTarget(); - } -#endif - } -} diff --git a/Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs.meta b/Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs.meta deleted file mode 100644 index 88dbaa226..000000000 --- a/Assets/VRM.Samples/Scripts/VRMRuntimeLoaderNet4.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 649886f2803ade846a93be89f73e35c7 -timeCreated: 1517899576 -licenseType: Free -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/VRM.Samples/Scripts/ViewerUI.cs b/Assets/VRM.Samples/Scripts/ViewerUI.cs index 7c83452fa..81af05dc5 100644 --- a/Assets/VRM.Samples/Scripts/ViewerUI.cs +++ b/Assets/VRM.Samples/Scripts/ViewerUI.cs @@ -314,15 +314,15 @@ namespace VRM.Samples var parser = new GltfParser(); parser.ParseGlb(file); - var context = new VRMImporterContext(parser); - await m_texts.UpdateMetaAsync(context); - await context.LoadAsync(); - - context.DisposeOnGameObjectDestroyed(); - context.ShowMeshes(); - context.EnableUpdateWhenOffscreen(); - context.ShowMeshes(); - SetModel(context.Root); + using (var context = new VRMImporterContext(parser)) + { + await m_texts.UpdateMetaAsync(context); + await context.LoadAsync(); + context.EnableUpdateWhenOffscreen(); + context.ShowMeshes(); + context.DisposeOnGameObjectDestroyed(); + SetModel(context.Root); + } break; } @@ -334,10 +334,9 @@ namespace VRM.Samples var context = new UniGLTF.ImporterContext(parser); context.Load(); - context.DisposeOnGameObjectDestroyed(); - context.ShowMeshes(); context.EnableUpdateWhenOffscreen(); context.ShowMeshes(); + context.DisposeOnGameObjectDestroyed(); SetModel(context.Root); break; } @@ -350,10 +349,9 @@ namespace VRM.Samples var context = new UniGLTF.ImporterContext(parser); context.Load(); - context.DisposeOnGameObjectDestroyed(); - context.ShowMeshes(); context.EnableUpdateWhenOffscreen(); context.ShowMeshes(); + context.DisposeOnGameObjectDestroyed(); SetModel(context.Root); break; } diff --git a/Assets/VRM/Editor/Format/VRMImporterMenu.cs b/Assets/VRM/Editor/Format/VRMImporterMenu.cs index 798b5ec12..beac43f6f 100644 --- a/Assets/VRM/Editor/Format/VRMImporterMenu.cs +++ b/Assets/VRM/Editor/Format/VRMImporterMenu.cs @@ -22,11 +22,15 @@ namespace VRM // load into scene var parser = new GltfParser(); parser.ParsePath(path); - var context = new VRMImporterContext(parser); - context.Load(); - context.ShowMeshes(); - context.EnableUpdateWhenOffscreen(); - Selection.activeGameObject = context.Root; + + using (var context = new VRMImporterContext(parser)) + { + context.Load(); + context.EnableUpdateWhenOffscreen(); + context.ShowMeshes(); + context.DisposeOnGameObjectDestroyed(); + Selection.activeGameObject = context.Root; + } } else { @@ -52,18 +56,24 @@ namespace VRM var prefabPath = UnityPath.FromUnityPath(assetPath); var parser = new GltfParser(); parser.ParseGlb(File.ReadAllBytes(path)); - var context = new VRMImporterContext(parser); - var editor = new VRMEditorImporterContext(context); - editor.ExtractImages(prefabPath); + + using (var context = new VRMImporterContext(parser)) + { + var editor = new VRMEditorImporterContext(context); + editor.ExtractImages(prefabPath); + } EditorApplication.delayCall += () => { // // after textures imported // - context.Load(); - editor.SaveAsAsset(prefabPath); - context.Dispose(); + using (var context = new VRMImporterContext(parser)) + { + var editor = new VRMEditorImporterContext(context); + context.Load(); + editor.SaveAsAsset(prefabPath); + } }; } } diff --git a/Assets/VRM/Editor/Format/vrmAssetPostprocessor.cs b/Assets/VRM/Editor/Format/vrmAssetPostprocessor.cs index f8c95f061..1140cfe88 100644 --- a/Assets/VRM/Editor/Format/vrmAssetPostprocessor.cs +++ b/Assets/VRM/Editor/Format/vrmAssetPostprocessor.cs @@ -59,18 +59,24 @@ namespace VRM var texture = await UniGLTF.AssetTextureLoader.LoadTaskAsync(assetPath, parser.GLTF, textureIndex); return new TextureLoadInfo(texture, used, false); }; - var context = new VRMImporterContext(parser, textureLoader); - var editor = new VRMEditorImporterContext(context); - editor.ExtractImages(prefabPath); + + using (var context = new VRMImporterContext(parser, textureLoader)) + { + var editor = new VRMEditorImporterContext(context); + editor.ExtractImages(prefabPath); + } EditorApplication.delayCall += () => { // // after textures imported // - context.Load(); - editor.SaveAsAsset(prefabPath); - context.Dispose(); + using (var context = new VRMImporterContext(parser, textureLoader)) + { + var editor = new VRMEditorImporterContext(context); + context.Load(); + editor.SaveAsAsset(prefabPath); + } }; } } diff --git a/Assets/VRM/Runtime/IO/VRMImporterContext.cs b/Assets/VRM/Runtime/IO/VRMImporterContext.cs index f0f5a135d..795cfdf13 100644 --- a/Assets/VRM/Runtime/IO/VRMImporterContext.cs +++ b/Assets/VRM/Runtime/IO/VRMImporterContext.cs @@ -306,8 +306,6 @@ namespace VRM public override void TransferOwnership(Action add) { - base.TransferOwnership(add); - // VRM 固有のリソース(ScriptableObject) add(HumanoidAvatar); HumanoidAvatar = null; @@ -326,6 +324,8 @@ namespace VRM add(BlendShapeAvatar); BlendShapeAvatar = null; + + base.TransferOwnership(add); } } }