From bf412f8d17633bc7230f6c46904fc8a74a0bcae7 Mon Sep 17 00:00:00 2001 From: NoelStephensUnity Date: Sat, 7 Dec 2024 15:02:56 -0600 Subject: [PATCH 1/9] update Adding the initial scene and prefab override example --- .../Assets/DefaultNetworkPrefabs.asset | 41 + .../Assets/DefaultNetworkPrefabs.asset.meta | 8 + .../Assets/Materials.meta | 8 + .../Assets/Materials/ChildLocal.mat | 86 + .../Assets/Materials/ChildLocal.mat.meta | 8 + .../Materials/ChildLocalNoParentSync.mat | 86 + .../Materials/ChildLocalNoParentSync.mat.meta | 8 + .../Assets/Materials/ChildWorld.mat | 86 + .../Assets/Materials/ChildWorld.mat.meta | 8 + .../Materials/ChildWorldNoParentSync.mat | 86 + .../Materials/ChildWorldNoParentSync.mat.meta | 8 + .../Assets/Materials/Direction.mat | 84 + .../Assets/Materials/Direction.mat.meta | 8 + .../Assets/Materials/GridBlue.mat | 138 ++ .../Assets/Materials/GridBlue.mat.meta | 8 + .../Assets/Materials/GridOrange.mat | 138 ++ .../Assets/Materials/GridOrange.mat.meta | 8 + .../Assets/Materials/GridPattern.mat | 85 + .../Assets/Materials/GridPattern.mat.meta | 8 + .../Assets/Materials/GridWhite.mat | 138 ++ .../Assets/Materials/GridWhite.mat.meta | 8 + .../Assets/Materials/Ground.mat | 79 + .../Assets/Materials/Ground.mat.meta | 8 + .../Assets/Materials/PlayerMaterial.mat | 80 + .../Assets/Materials/PlayerMaterial.mat.meta | 8 + .../Materials/ShaderGraphGrid_01_Mat.mat | 134 ++ .../Materials/ShaderGraphGrid_01_Mat.mat.meta | 8 + .../Assets/Models.meta | 8 + .../Assets/Models/Ramp_100x100x200_Mesh.fbx | Bin 0 -> 15712 bytes .../Models/Ramp_100x100x200_Mesh.fbx.meta | 107 ++ .../Assets/Models/Ramp_Mesh.fbx | Bin 0 -> 42320 bytes .../Assets/Models/Ramp_Mesh.fbx.meta | 107 ++ .../Assets/Models/Tunnel_Mesh.fbx | Bin 0 -> 45056 bytes .../Assets/Models/Tunnel_Mesh.fbx.meta | 107 ++ .../Assets/Models/Wall_Mesh.fbx | Bin 0 -> 45440 bytes .../Assets/Models/Wall_Mesh.fbx.meta | 107 ++ .../Assets/Prefabs.meta | 8 + .../Assets/Prefabs/ClientPlayer.prefab | 985 +++++++++++ .../Assets/Prefabs/ClientPlayer.prefab.meta | 7 + .../Assets/Prefabs/Floor.physicMaterial | 15 + .../Assets/Prefabs/Floor.physicMaterial.meta | 8 + .../PlayerPrefabOverrideHandler.prefab | 75 + .../PlayerPrefabOverrideHandler.prefab.meta | 7 + .../Assets/Prefabs/Ramp_Prefab.prefab | 111 ++ .../Assets/Prefabs/Ramp_Prefab.prefab.meta | 7 + .../Prefabs/RotatingBody.physicMaterial | 15 + .../Prefabs/RotatingBody.physicMaterial.meta | 8 + .../Assets/Prefabs/RotatingBody.prefab | 1138 +++++++++++++ .../Assets/Prefabs/RotatingBody.prefab.meta | 7 + .../Assets/Prefabs/SceneLevelGeometry.prefab | 794 +++++++++ .../Prefabs/SceneLevelGeometry.prefab.meta | 7 + .../Assets/Prefabs/ServerPlayer.prefab | 655 ++++++++ .../Assets/Prefabs/ServerPlayer.prefab.meta | 7 + .../Assets/Prefabs/Tunnel_Prefab.prefab | 154 ++ .../Assets/Prefabs/Tunnel_Prefab.prefab.meta | 7 + .../Assets/Prefabs/Wall_Prefab.prefab | 132 ++ .../Assets/Prefabs/Wall_Prefab.prefab.meta | 7 + .../Assets/Resources.meta | 8 + .../Assets/Resources/BillingMode.json | 1 + .../Assets/Resources/BillingMode.json.meta | 7 + .../Assets/Scenes.meta | 8 + .../Assets/Scenes/BootstrapScene.unity | 265 +++ .../Assets/Scenes/BootstrapScene.unity.meta | 7 + .../Assets/Scenes/Camera.preset | 195 +++ .../Assets/Scenes/Camera.preset.meta | 8 + .../Assets/Scenes/CharacterController.unity | 1435 +++++++++++++++++ .../Scenes/CharacterController.unity.meta | 7 + .../Assets/Scenes/ClientScene.unity | 382 +++++ .../Assets/Scenes/ClientScene.unity.meta | 7 + .../Assets/Scenes/MainMenu.unity | 607 +++++++ .../Assets/Scenes/MainMenu.unity.meta | 7 + .../Assets/Scenes/ProjectPrefabs.asset | 26 + .../Assets/Scenes/ProjectPrefabs.asset.meta | 8 + .../Assets/Scenes/ServerScene.unity | 402 +++++ .../Assets/Scenes/ServerScene.unity.meta | 7 + .../Assets/Scenes/SharedScene.unity | 1409 ++++++++++++++++ .../Assets/Scenes/SharedScene.unity.meta | 7 + .../Assets/Scripts.meta | 8 + .../Scripts/InstanceTypeLocalBehavior.cs | 58 + .../Scripts/InstanceTypeLocalBehavior.cs.meta | 2 + .../Assets/Scripts/MoverScriptNoRigidbody.cs | 376 +++++ .../Scripts/MoverScriptNoRigidbody.cs.meta | 2 + .../Scripts/NetworkManagerBootstrapper.cs | 336 ++++ .../NetworkManagerBootstrapper.cs.meta | 11 + .../Scripts/NetworkPrefabOverrideHandler.cs | 58 + .../NetworkPrefabOverrideHandler.cs.meta | 2 + .../Assets/Scripts/PlayerBallMotion.cs | 126 ++ .../Assets/Scripts/PlayerBallMotion.cs.meta | 2 + .../Assets/Scripts/PlayerColor.cs | 47 + .../Assets/Scripts/PlayerColor.cs.meta | 11 + .../Assets/Scripts/RotatingBodyLogic.cs | 201 +++ .../Assets/Scripts/RotatingBodyLogic.cs.meta | 2 + .../Assets/Scripts/SceneBootstrapLoader.cs | 291 ++++ .../Scripts/SceneBootstrapLoader.cs.meta | 2 + .../Assets/Scripts/ServerHostClientText.cs | 79 + .../Scripts/ServerHostClientText.cs.meta | 11 + .../Assets/Scripts/ServerInfoDisplay.cs | 27 + .../Assets/Scripts/ServerInfoDisplay.cs.meta | 2 + .../Assets/Scripts/TriggerPush.cs | 63 + .../Assets/Scripts/TriggerPush.cs.meta | 2 + .../Assets/Textures.meta | 8 + .../Assets/Textures/GridPattern.png | Bin 0 -> 3152344 bytes .../Assets/Textures/GridPattern.png.meta | 153 ++ .../Assets/Textures/Grid_01_BaseMap.png | Bin 0 -> 8210 bytes .../Assets/Textures/Grid_01_BaseMap.png.meta | 130 ++ .../Assets/Textures/Grid_01_Emissive.png | Bin 0 -> 8225 bytes .../Assets/Textures/Grid_01_Emissive.png.meta | 130 ++ .../Assets/Textures/Grid_01_Normal.png | Bin 0 -> 21103 bytes .../Assets/Textures/Grid_01_Normal.png.meta | 130 ++ .../Assets/Textures/Grid_02_BaseMap.png | Bin 0 -> 9489 bytes .../Assets/Textures/Grid_02_BaseMap.png.meta | 130 ++ .../ProjectSettings/EditorBuildSettings.asset | 24 + .../ProjectSettings/ProjectSettings.asset | 782 +++++++++ .../ProjectSettings/TagManager.asset | 45 + 114 files changed, 14017 insertions(+) create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_100x100x200_Mesh.fbx create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_100x100x200_Mesh.fbx.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_Mesh.fbx create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_Mesh.fbx.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Tunnel_Mesh.fbx create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Tunnel_Mesh.fbx.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Wall_Mesh.fbx create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Models/Wall_Mesh.fbx.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Resources.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png.meta create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png create mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png.meta create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorBuildSettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/TagManager.asset diff --git a/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset b/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset new file mode 100644 index 0000000000..3250ac7264 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset @@ -0,0 +1,41 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e651dbb3fbac04af2b8f5abf007ddc23, type: 3} + m_Name: DefaultNetworkPrefabs + m_EditorClassIdentifier: + IsDefault: 1 + List: + - Override: 0 + Prefab: {fileID: 8921789205124766477, guid: a279f80620d4e6a4ab02c1a9c96ff460, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 7542415007908852951, guid: cab3850a18c969d4caa82a6049175695, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 3439633038736912633, guid: 398aad09d8b2a47eba664a076763cdcc, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset.meta b/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset.meta new file mode 100644 index 0000000000..fee27b3ade --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aa82390bfdde2564f828b8e5be375282 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials.meta new file mode 100644 index 0000000000..463de70d61 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d5b7ad71451c27e4291295cfffc10328 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat new file mode 100644 index 0000000000..b6fd2dd9a1 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildLocal + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.8980392, g: 0.039215658, b: 0.7682729, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat.meta new file mode 100644 index 0000000000..35e4d565be --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocal.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 45fc555bc05bfee4ab8b0d536799ecee +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat new file mode 100644 index 0000000000..c44172e7a7 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildLocalNoParentSync + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.039215658, g: 0.78592235, b: 0.8980392, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat.meta new file mode 100644 index 0000000000..3a26e43d98 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildLocalNoParentSync.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: affef70511a06dd46b8f52636020af4a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat new file mode 100644 index 0000000000..0c2bf4b187 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildWorld + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.3783494, g: 0.039215658, b: 0.8980392, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat.meta new file mode 100644 index 0000000000..9a00ded8c6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorld.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 15d0bda12a233964086aee5c0c357e24 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat new file mode 100644 index 0000000000..86b27eb5c9 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildWorldNoParentSync + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.039215658, g: 0.8980392, b: 0.09095798, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat.meta new file mode 100644 index 0000000000..5ab7ff2e72 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ChildWorldNoParentSync.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a5e199307b2e0894294d9c8bee99a691 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat new file mode 100644 index 0000000000..ed5ed117c3 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat @@ -0,0 +1,84 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Direction + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8962264, g: 0.52830994, b: 0.038047332, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat.meta new file mode 100644 index 0000000000..c93791fac0 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Direction.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5324c76c2bab7344badd5ea27a40bcb5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat new file mode 100644 index 0000000000..9009817e26 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2624353793879203111 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridBlue + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _EMISSION + - _GLOSSYREFLECTIONS_OFF + - _NORMALMAP + m_InvalidKeywords: [] + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: b94463ba36040ec4082132c54dd1bbad, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 1 + - _Glossiness: 0.477 + - _GlossyReflections: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _UVSec: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 0.5438323, g: 0.88474977, b: 0.9528302, a: 1} + - _EmissionColor: {r: 0, g: 0.6988592, b: 1, a: 1} + - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat.meta new file mode 100644 index 0000000000..b8caf3cbac --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridBlue.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1448a5da57523ce4bbc377143e02fe3c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat new file mode 100644 index 0000000000..38a4e9808b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2624353793879203111 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridOrange + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _EMISSION + - _GLOSSYREFLECTIONS_OFF + - _NORMALMAP + m_InvalidKeywords: [] + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: b94463ba36040ec4082132c54dd1bbad, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 1 + - _Glossiness: 0.477 + - _GlossyReflections: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _UVSec: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 0.49475378, b: 0, a: 1} + - _EmissionColor: {r: 0.990566, g: 0.48359674, b: 0.378471, a: 1} + - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat.meta new file mode 100644 index 0000000000..bf2873069e --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridOrange.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2e2c886f4af8e304eb9a1e2e50d023b3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat new file mode 100644 index 0000000000..f44981f387 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridPattern + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _GLOSSYREFLECTIONS_OFF + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 6, y: 6} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: a092c5fa8c60ed04aa1d72555f1740bc, type: 3} + m_Scale: {x: 6, y: 6} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0.785 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0.254717, g: 0.23188858, b: 0.23188858, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat.meta new file mode 100644 index 0000000000..cbca0f4485 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridPattern.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 42c4a0ad1f9d67a45b12f68697321aad +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat new file mode 100644 index 0000000000..7345253099 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2624353793879203111 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridWhite + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _EMISSION + - _GLOSSYREFLECTIONS_OFF + - _NORMALMAP + m_InvalidKeywords: [] + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: b94463ba36040ec4082132c54dd1bbad, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 1 + - _Glossiness: 0.477 + - _GlossyReflections: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _UVSec: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} + - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat.meta new file mode 100644 index 0000000000..4559482bba --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a53ba8919fa78c14caac473c7e7ce7d3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat new file mode 100644 index 0000000000..252ea1a0ed --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Ground + m_Shader: {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.14769986, g: 0.1509434, b: 0.1473834, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat.meta new file mode 100644 index 0000000000..6dbcac16d3 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/Ground.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9c73b921ea39f4344a19c2d1c7d6b314 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat new file mode 100644 index 0000000000..e7f5729956 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat @@ -0,0 +1,80 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PlayerMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat.meta new file mode 100644 index 0000000000..1ceca58536 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 44e292334941fe148b997ca2b01b5789 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat new file mode 100644 index 0000000000..5161ac9b8e --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat @@ -0,0 +1,134 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ShaderGraphGrid_01_Mat + m_Shader: {fileID: -6465566751694194690, guid: b8d7679189d4a5940af46004f3870920, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - Texture2D_C5E3E723: + m_Texture: {fileID: 2800000, guid: d4d6919451fe3e24388816386a6d15a4, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Grid_Normal_Map: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: d9c0dd5cdac07b145be73329e489869a, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0.004, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - Boolean_35A71344: 0 + - Boolean_7A5F3F39: 1 + - Boolean_7AC8D832: 1 + - Vector1_3402D67A: 1 + - Vector1_3655428E: 5 + - Vector1_5B05FA1F: 0.062 + - Vector1_6B67A8FF: -20 + - Vector1_7810F718: 1 + - Vector1_B6126E6E: 0.335 + - Vector1_CA7D5F3: 30 + - Vector1_D5FBE925: 0.3 + - Vector1_F2A922B4: 1.73 + - Vector1_F5FD9210: 33.9 + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.119 + - _GlossyReflections: 1 + - _Grid_Normal_Strength: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueControl: 0 + - _QueueOffset: 0 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - Color_2B671050: {r: 0.23202202, g: 0.6245157, b: 0.745283, a: 0} + - Color_30A0CA2F: {r: 0.02745098, g: 1, b: 0.7565653, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] +--- !u!114 &6450197988115792188 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta new file mode 100644 index 0000000000..efd03db61f --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7be68f3cac640fd40a7663ac97380a9c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Models.meta b/Examples/OverridingScenesAndPrefabs/Assets/Models.meta new file mode 100644 index 0000000000..21910d8d7a --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Models.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bd50c879f39d9d94b92706513b4f56ef +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_100x100x200_Mesh.fbx b/Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_100x100x200_Mesh.fbx new file mode 100644 index 0000000000000000000000000000000000000000..2fa479b052cab2b81a3182ab6919d00774145096 GIT binary patch literal 15712 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 literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_Mesh.fbx.meta b/Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_Mesh.fbx.meta new file mode 100644 index 0000000000..f9aabd0c03 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Models/Ramp_Mesh.fbx.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 5d8449220d5795b448a4cee5cbde4b56 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Models/Tunnel_Mesh.fbx b/Examples/OverridingScenesAndPrefabs/Assets/Models/Tunnel_Mesh.fbx new file mode 100644 index 0000000000000000000000000000000000000000..7ec9d4bb74a7b846a5ad5f702842793d40fe839d GIT binary patch literal 45056 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 z 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 literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Models/Wall_Mesh.fbx.meta b/Examples/OverridingScenesAndPrefabs/Assets/Models/Wall_Mesh.fbx.meta new file mode 100644 index 0000000000..15452589e0 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Models/Wall_Mesh.fbx.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 34560503bf9d61046b252db98a8cf770 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs.meta new file mode 100644 index 0000000000..c867cd3a70 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4b97118ef11ec3347bc72b8d681e094b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab new file mode 100644 index 0000000000..92d173907a --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab @@ -0,0 +1,985 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2819221948576051598 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8815849029736207364} + - component: {fileID: 3042900316038666559} + - component: {fileID: 1437858011576020080} + - component: {fileID: 8264281895793262867} + m_Layer: 0 + m_Name: PlayerBallChild1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8815849029736207364 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3042900316038666559 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1437858011576020080 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + 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_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &8264281895793262867 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 2 + RotationSpeed: 1.5 +--- !u!1 &3959781627078922459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 394823601370723229} + - component: {fileID: 1530657457870194733} + - component: {fileID: 8179170832269307327} + - component: {fileID: 8231288296501785146} + m_Layer: 0 + m_Name: PlayerBallPrime + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &394823601370723229 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.25, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8815849029736207364} + - {fileID: 7136463849438099188} + - {fileID: 5551906405844277949} + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1530657457870194733 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8179170832269307327 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a53ba8919fa78c14caac473c7e7ce7d3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &8231288296501785146 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 +--- !u!1 &3973637191948275635 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8797190989880117053} + - component: {fileID: 1956256172504790623} + - component: {fileID: 2171905566637076429} + m_Layer: 0 + m_Name: ParentedText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8797190989880117053 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1.91, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1956256172504790623 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!102 &2171905566637076429 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + m_Text: "Hello \nWorld" + m_OffsetZ: 0 + m_CharacterSize: 0.15 + m_LineSpacing: 1 + m_Anchor: 4 + m_Alignment: 1 + m_TabSize: 4 + m_FontSize: 20 + m_FontStyle: 1 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!1 &7133739606324490315 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5551906405844277949} + - component: {fileID: 1792842414970541714} + - component: {fileID: 6744917009213370100} + - component: {fileID: 6571689152541036907} + m_Layer: 0 + m_Name: PlayerBallChild3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5551906405844277949 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 1} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1792842414970541714 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6744917009213370100 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + 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_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &6571689152541036907 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 1 + RotationSpeed: 1.5 +--- !u!1 &7484009658662050968 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7136463849438099188} + - component: {fileID: 8767029715903736994} + - component: {fileID: 186997181429634371} + - component: {fileID: 4424954456620528769} + m_Layer: 0 + m_Name: PlayerBallChild2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7136463849438099188 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8767029715903736994 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &186997181429634371 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + 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_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &4424954456620528769 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 0 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 +--- !u!1 &8837707216906300506 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3256164543801378073} + - component: {fileID: 5138046720836505354} + - component: {fileID: 1048758437790369019} + - component: {fileID: 3232232006964461868} + m_Layer: 0 + m_Name: Direction + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3256164543801378073 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.529, z: 0.36} + m_LocalScale: {x: 0.5, y: 0.35, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5138046720836505354 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1048758437790369019 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 5324c76c2bab7344badd5ea27a40bcb5, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &3232232006964461868 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 0 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &8921789205124766477 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8921789205124766473} + - component: {fileID: 8921789205124766472} + - component: {fileID: 8921789205124766479} + - component: {fileID: 8921789205124766478} + - component: {fileID: 3121348088455848731} + - component: {fileID: 8921789205124766474} + - component: {fileID: 871737567343884637} + - component: {fileID: 571224925323069553} + - component: {fileID: 2509722539211228765} + - component: {fileID: -1193078498836806637} + m_Layer: 0 + m_Name: ClientPlayer + m_TagString: Player + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8921789205124766473 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3256164543801378073} + - {fileID: 8797190989880117053} + - {fileID: 394823601370723229} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8921789205124766472 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8921789205124766479 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 44e292334941fe148b997ca2b01b5789, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!136 &8921789205124766478 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Height: 2 + m_Direction: 1 + m_Center: {x: 0, y: 0, z: 0} +--- !u!143 &3121348088455848731 +CharacterController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Height: 2 + m_Radius: 0.5 + m_SlopeLimit: 45 + m_StepOffset: 0.3 + m_SkinWidth: 0.08 + m_MinMoveDistance: 0.001 + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &8921789205124766474 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 3994715305 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 0 + AllowOwnerToParent: 1 +--- !u!114 &871737567343884637 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e5128237997be649af0cc87dd0eb563, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + ApplyColorToChildren: 1 + IgnoreChildren: + - {fileID: 8837707216906300506} +--- !u!114 &571224925323069553 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5ce25b0b3f15e6446a88a85787c2f94a, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 1 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.01 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.1 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 0 + SwitchTransformSpaceWhenParented: 1 + Interpolate: 1 + SlerpPosition: 0 + MoverScriptNoRigidbodyExpanded: 0 + SpawnRadius: 10 + Increment: 1 + RotationSpeed: 1.26 + MovementSpeed: 15 + JumpSpeed: 10 + AirSpeedFactor: 0.35 + Gravity: -9.8 + ContinualChildMotion: 1 +--- !u!65 &2509722539211228765 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1.4, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &-1193078498836806637 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bb9a9987a689bbe43a05463cf3713b22, type: 3} + m_Name: + m_EditorClassIdentifier: + UniqueLocalInstanceContent: ' Local content specific to ClientPlayer' diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta new file mode 100644 index 0000000000..db511a5d81 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a279f80620d4e6a4ab02c1a9c96ff460 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial new file mode 100644 index 0000000000..5aeefdde15 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicsMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Floor + serializedVersion: 2 + m_DynamicFriction: 2.5 + m_StaticFriction: 2 + m_Bounciness: 0 + m_FrictionCombine: 3 + m_BounceCombine: 2 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial.meta new file mode 100644 index 0000000000..a55550d94a --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Floor.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2c574f6ade946d94f9ec0183e3bc4579 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 13400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab new file mode 100644 index 0000000000..3185834b23 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab @@ -0,0 +1,75 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7542415007908852951 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7399658756277439218} + - component: {fileID: 248153197284761457} + - component: {fileID: 5056115739317288276} + m_Layer: 0 + m_Name: PlayerPrefabOverrideHandler + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7399658756277439218 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7542415007908852951} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &248153197284761457 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7542415007908852951} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 3200484303 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 1 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 + AllowOwnerToParent: 0 +--- !u!114 &5056115739317288276 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7542415007908852951} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c472ff64b067344893ed2e632d0f9f1, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + ClientNetworkPrefab: {fileID: 8921789205124766477, guid: a279f80620d4e6a4ab02c1a9c96ff460, type: 3} + ServerNetworkPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta new file mode 100644 index 0000000000..2d80e51c7b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cab3850a18c969d4caa82a6049175695 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab new file mode 100644 index 0000000000..edcdf3071c --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab @@ -0,0 +1,111 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8924170145835402666 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8111781018561290000} + - component: {fileID: 5133274882688487605} + - component: {fileID: 6978882906433643647} + - component: {fileID: 894093325933845257} + m_Layer: 0 + m_Name: Ramp_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &8111781018561290000 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + serializedVersion: 2 + m_LocalRotation: {x: 0.000000021855694, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5133274882688487605 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!23 &6978882906433643647 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!64 &894093325933845257 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: -8512782951310809723, guid: 426a2785f8a940049aac2c246661cf09, type: 3} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab.meta new file mode 100644 index 0000000000..14e8009f6b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Ramp_Prefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7ab2ae375810b5641a36d327b9f022cf +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial new file mode 100644 index 0000000000..f76e8e1f5a --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicsMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: RotatingBody + serializedVersion: 2 + m_DynamicFriction: 2.5 + m_StaticFriction: 2 + m_Bounciness: 0 + m_FrictionCombine: 3 + m_BounceCombine: 2 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial.meta new file mode 100644 index 0000000000..4650ebf5b0 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c16e8d98094923449892b28a230ddb9c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 13400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab new file mode 100644 index 0000000000..73c04c02fa --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab @@ -0,0 +1,1138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &755183729697733696 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 522841341294848418} + - component: {fileID: 6376943934387906635} + - component: {fileID: 4793038284696412839} + m_Layer: 0 + m_Name: WallPusherA_Inner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &522841341294848418 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 755183729697733696} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.05, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &6376943934387906635 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 755183729697733696} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &4793038284696412839 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 755183729697733696} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 1 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} +--- !u!1 &1070469363212057228 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4967607898511807569} + - component: {fileID: 4081511419635538304} + - component: {fileID: 3264090684553753291} + - component: {fileID: 2074962368930179783} + - component: {fileID: 2659845886479429441} + - component: {fileID: 365707591732078506} + m_Layer: 0 + m_Name: Tunnel_Prefab (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &4967607898511807569 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + serializedVersion: 2 + m_LocalRotation: {x: 0.7071068, y: -0, z: -0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!33 &4081511419635538304 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Mesh: {fileID: 5060444177187149915, guid: 63fcabcd345d556498e09f748683088e, type: 3} +--- !u!23 &3264090684553753291 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &2074962368930179783 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Material: {fileID: 13400000, guid: c16e8d98094923449892b28a230ddb9c, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2.502674, y: 6.0000024, z: 0.25225586} + m_Center: {x: 0, y: -5.4553292e-15, z: 2.3838842} +--- !u!65 &2659845886479429441 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.19382703, y: 6.0000024, z: 2.2399507} + m_Center: {x: -1.1314733, y: -1.7786642e-15, z: 1.1251621} +--- !u!65 &365707591732078506 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.16720939, y: 6.0000024, z: 2.256102} + m_Center: {x: 1.1123942, y: -1.893427e-15, z: 1.1332378} +--- !u!1 &1227036625448805321 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6179387521291227856} + - component: {fileID: 6043205804484853104} + - component: {fileID: 7583159525709273484} + - component: {fileID: 8095289646395249164} + m_Layer: 0 + m_Name: Ramp_PrefabA + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &6179387521291227856 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + serializedVersion: 2 + m_LocalRotation: {x: 0.000000021855694, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.25, z: 7.993} + m_LocalScale: {x: 8, y: 0.5, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3394725634534525932} + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6043205804484853104 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!23 &7583159525709273484 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!64 &8095289646395249164 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + m_Material: {fileID: 13400000, guid: c16e8d98094923449892b28a230ddb9c, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 1 + m_CookingOptions: 30 + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!1 &1451894099667441545 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3394725634534525932} + - component: {fileID: 2385627259374300527} + m_Layer: 0 + m_Name: BridgeGap + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3394725634534525932 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1451894099667441545} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 1, z: -0.000000021855694, w: 0} + m_LocalPosition: {x: 0, y: 0.14, z: -1.0100002} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6179387521291227856} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &2385627259374300527 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1451894099667441545} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.1 + m_Height: 1.15 + m_Direction: 0 + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &2406660182425334495 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1877966211327071347} + - component: {fileID: 3334163744623252575} + - component: {fileID: 5776191766534439988} + - component: {fileID: 6535282611511474253} + - component: {fileID: 8963258823839906869} + - component: {fileID: 7304575238635320140} + m_Layer: 0 + m_Name: Tunnel_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &1877966211327071347 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + serializedVersion: 2 + m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 4.96, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!33 &3334163744623252575 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Mesh: {fileID: 5060444177187149915, guid: 63fcabcd345d556498e09f748683088e, type: 3} +--- !u!23 &5776191766534439988 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &6535282611511474253 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2.502674, y: 6.0000024, z: 0.258326} + m_Center: {x: 0, y: 5.4121983e-15, z: 2.3808491} +--- !u!65 &8963258823839906869 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2527809, y: 6.0000024, z: 2.2399507} + m_Center: {x: -1.1249466, y: 1.7786642e-15, z: 1.1251621} +--- !u!65 &7304575238635320140 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.26525307, y: 6.0000024, z: 2.256102} + m_Center: {x: 1.1187105, y: 1.893427e-15, z: 1.1332378} +--- !u!1 &2492174073242389836 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6182591213277846585} + - component: {fileID: 3395949877673187758} + m_Layer: 0 + m_Name: BridgeGap (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6182591213277846585 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2492174073242389836} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -1, z: 0.000000021855694, w: 0} + m_LocalPosition: {x: 0, y: 0.14, z: -1.01} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7826839884382864090} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &3395949877673187758 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2492174073242389836} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.1 + m_Height: 1.15 + m_Direction: 0 + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &3038314618705458857 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3570252208687936609} + - component: {fileID: 4156819582579138816} + - component: {fileID: 2806575150631930745} + m_Layer: 0 + m_Name: WallPusherB_Inner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &3570252208687936609 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3038314618705458857} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4.07, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &4156819582579138816 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3038314618705458857} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &2806575150631930745 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3038314618705458857} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 0 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} +--- !u!1 &4405129256840456534 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5628673131512617452} + - component: {fileID: 1065561891622964567} + - component: {fileID: 4468158207537748033} + m_Layer: 0 + m_Name: WallPusherA_Outer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &5628673131512617452 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4405129256840456534} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.89, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1065561891622964567 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4405129256840456534} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &4468158207537748033 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4405129256840456534} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 0 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} +--- !u!1 &5415449980466536476 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4291553105548296809} + - component: {fileID: 8134939553748259768} + - component: {fileID: 3307166493715739449} + - component: {fileID: 850162744905636139} + m_Layer: 0 + m_Name: RotatingBody + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4291553105548296809 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1877966211327071347} + - {fileID: 4967607898511807569} + - {fileID: 522841341294848418} + - {fileID: 5628673131512617452} + - {fileID: 3570252208687936609} + - {fileID: 5389614242607036533} + - {fileID: 6179387521291227856} + - {fileID: 7826839884382864090} + - {fileID: 2053800158975384476} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &8134939553748259768 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 8.023605, y: 8.144613, z: 20.106205} + m_Center: {x: -0.03800702, y: 4.1726913, z: -0.02903366} +--- !u!114 &3307166493715739449 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 1921503253 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 2 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 1 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 +--- !u!114 &850162744905636139 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 1 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.1 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.1 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 0 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 0 + RotationSpeed: 0.25 + RotateDirection: 0 + ZAxisMove: 0 +--- !u!1 &5463907175177238004 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2053800158975384476} + - component: {fileID: 2688281628964240045} + m_Layer: 0 + m_Name: Point Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2053800158975384476 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5463907175177238004} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 6.54, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!108 &2688281628964240045 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5463907175177238004} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 2 + m_Color: {r: 0.9622642, g: 0.9622642, b: 0.9622642, a: 1} + m_Intensity: 2 + m_Range: 20 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + 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_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!1 &6529740436184164063 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7826839884382864090} + - component: {fileID: 2797882924116045225} + - component: {fileID: 1097787484049525257} + - component: {fileID: 570708159460268413} + m_Layer: 0 + m_Name: Ramp_PrefabB + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &7826839884382864090 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 1, z: 0, w: 0} + m_LocalPosition: {x: 0, y: 0.25, z: -7.993} + m_LocalScale: {x: 8, y: 0.5, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6182591213277846585} + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} +--- !u!33 &2797882924116045225 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!23 &1097787484049525257 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!64 &570708159460268413 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + m_Material: {fileID: 13400000, guid: c16e8d98094923449892b28a230ddb9c, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 1 + m_CookingOptions: 30 + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!1 &8002386465640125644 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5389614242607036533} + - component: {fileID: 4101224782146625552} + - component: {fileID: 6895917012766152111} + m_Layer: 0 + m_Name: WallPusherB_Outer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &5389614242607036533 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8002386465640125644} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4.83, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &4101224782146625552 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8002386465640125644} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &6895917012766152111 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8002386465640125644} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 1 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab.meta new file mode 100644 index 0000000000..d22d47036e --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/RotatingBody.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0123d7125346c274da00b38e950a266b +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab new file mode 100644 index 0000000000..f636c60a54 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab @@ -0,0 +1,794 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &910007655143077103 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6283120762215196916} + - component: {fileID: 3739510624437302406} + m_Layer: 0 + m_Name: CornerBumper (1) + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6283120762215196916 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 910007655143077103} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.9244967, z: -0, w: -0.38119} + m_LocalPosition: {x: -29.72, y: 0.98, z: 29.82} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -224.815, z: 0} +--- !u!65 &3739510624437302406 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 910007655143077103} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &1854705290947220173 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2290144462706082272} + - component: {fileID: 4559046433245738380} + m_Layer: 0 + m_Name: CornerBumper (2) + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2290144462706082272 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1854705290947220173} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.3771283, z: -0, w: -0.92616105} + m_LocalPosition: {x: -29.53, y: 0.98, z: -29.71} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -315.688, z: 0} +--- !u!65 &4559046433245738380 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1854705290947220173} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &4012615691354089848 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615691354089844} + - component: {fileID: 4012615691354089845} + - component: {fileID: 4012615691354089850} + - component: {fileID: 4012615691354089851} + m_Layer: 0 + m_Name: Floor + m_TagString: Floor + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615691354089844 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: -0.50000006, z: 0} + m_LocalScale: {x: 60, y: 1, z: 60} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615691354089845 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615691354089850 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 42c4a0ad1f9d67a45b12f68697321aad, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615691354089851 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + m_Material: {fileID: 13400000, guid: 2c574f6ade946d94f9ec0183e3bc4579, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &4012615691503252843 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615691503252839} + - component: {fileID: 4012615691503252836} + - component: {fileID: 4012615691503252837} + - component: {fileID: 4012615691503252842} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615691503252839 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -30.5, y: 0.49999994, z: 0} + m_LocalScale: {x: 1, y: 3, z: 62} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615691503252836 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615691503252837 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615691503252842 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2, y: 1, z: 1} + m_Center: {x: -0.5, y: 0, z: 0} +--- !u!1 &4012615691965054905 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615691965054901} + - component: {fileID: 4012615691965054906} + - component: {fileID: 4012615691965054907} + - component: {fileID: 4012615691965054904} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615691965054901 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.49999994, z: 30.5} + m_LocalScale: {x: 60, y: 3, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615691965054906 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615691965054907 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615691965054904 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 2} + m_Center: {x: 0, y: 0, z: 0.5} +--- !u!1 &4012615692269653858 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615692269653854} + - component: {fileID: 4012615692269653855} + - component: {fileID: 4012615692269653852} + - component: {fileID: 4012615692269653853} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615692269653854 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.49999994, z: -30.5} + m_LocalScale: {x: 60, y: 3, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615692269653855 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615692269653852 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615692269653853 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 2} + m_Center: {x: 0, y: 0, z: -0.5} +--- !u!1 &4012615692778511854 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615692778511849} + m_Layer: 0 + m_Name: SceneLevelGeometry + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615692778511849 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692778511854} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.000000059604645, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4012615691354089844} + - {fileID: 4012615691965054901} + - {fileID: 4012615692269653854} + - {fileID: 4012615691503252839} + - {fileID: 4012615692791378778} + - {fileID: 3910294717376836327} + - {fileID: 6283120762215196916} + - {fileID: 2290144462706082272} + - {fileID: 6959258897999621209} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4012615692791378782 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615692791378778} + - component: {fileID: 4012615692791378779} + - component: {fileID: 4012615692791378776} + - component: {fileID: 4012615692791378777} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615692791378778 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 30.5, y: 0.49999994, z: 0} + m_LocalScale: {x: 1, y: 3, z: 62} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615692791378779 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615692791378776 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615692791378777 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2, y: 1, z: 1} + m_Center: {x: 0.5, y: 0, z: 0} +--- !u!1 &4674276234353933548 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3910294717376836327} + - component: {fileID: 3136259738973340924} + m_Layer: 0 + m_Name: CornerBumper + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3910294717376836327 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4674276234353933548} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0.38268343, z: 0, w: 0.92387956} + m_LocalPosition: {x: 29.7, y: 0.98, z: -29.61} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -45, z: 0} +--- !u!65 &3136259738973340924 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4674276234353933548} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &7080625901286762351 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6959258897999621209} + - component: {fileID: 7672408768716900064} + m_Layer: 0 + m_Name: CornerBumper (3) + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6959258897999621209 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7080625901286762351} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.93588465, z: -0, w: -0.35230666} + m_LocalPosition: {x: 29.26, y: 0.98, z: 29.45} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -498.74298, z: 0} +--- !u!65 &7672408768716900064 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7080625901286762351} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab.meta new file mode 100644 index 0000000000..154fd718e7 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/SceneLevelGeometry.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3ec484313a7a6754dac871e620df8db2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab new file mode 100644 index 0000000000..0f46f2d90b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab @@ -0,0 +1,655 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2819221948576051598 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8815849029736207364} + - component: {fileID: 8264281895793262867} + m_Layer: 0 + m_Name: PlayerBallChild1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8815849029736207364 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &8264281895793262867 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 2 + RotationSpeed: 1.5 +--- !u!1 &3959781627078922459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 394823601370723229} + - component: {fileID: 8231288296501785146} + m_Layer: 0 + m_Name: PlayerBallPrime + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &394823601370723229 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.25, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8815849029736207364} + - {fileID: 7136463849438099188} + - {fileID: 5551906405844277949} + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &8231288296501785146 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 +--- !u!1 &3973637191948275635 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8797190989880117053} + - component: {fileID: 1956256172504790623} + - component: {fileID: 2171905566637076429} + m_Layer: 0 + m_Name: ParentedText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8797190989880117053 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1.91, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1956256172504790623 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!102 &2171905566637076429 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + m_Text: "Hello \nWorld" + m_OffsetZ: 0 + m_CharacterSize: 0.15 + m_LineSpacing: 1 + m_Anchor: 4 + m_Alignment: 1 + m_TabSize: 4 + m_FontSize: 20 + m_FontStyle: 1 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!1 &7133739606324490315 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5551906405844277949} + - component: {fileID: 6571689152541036907} + m_Layer: 0 + m_Name: PlayerBallChild3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5551906405844277949 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 1} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &6571689152541036907 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 1 + RotationSpeed: 1.5 +--- !u!1 &7484009658662050968 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7136463849438099188} + - component: {fileID: 4424954456620528769} + m_Layer: 0 + m_Name: PlayerBallChild2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7136463849438099188 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4424954456620528769 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 0 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 +--- !u!1 &8837707216906300506 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3256164543801378073} + - component: {fileID: 3232232006964461868} + m_Layer: 0 + m_Name: Direction + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3256164543801378073 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.529, z: 0.36} + m_LocalScale: {x: 0.5, y: 0.35, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &3232232006964461868 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 0 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &8921789205124766477 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8921789205124766473} + - component: {fileID: 8921789205124766478} + - component: {fileID: 3121348088455848731} + - component: {fileID: 8921789205124766474} + - component: {fileID: 871737567343884637} + - component: {fileID: 571224925323069553} + - component: {fileID: 2509722539211228765} + - component: {fileID: 7705318807709855696} + m_Layer: 0 + m_Name: ServerPlayer + m_TagString: Player + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8921789205124766473 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3256164543801378073} + - {fileID: 8797190989880117053} + - {fileID: 394823601370723229} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &8921789205124766478 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Height: 2 + m_Direction: 1 + m_Center: {x: 0, y: 0, z: 0} +--- !u!143 &3121348088455848731 +CharacterController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Height: 2 + m_Radius: 0.5 + m_SlopeLimit: 45 + m_StepOffset: 0.3 + m_SkinWidth: 0.08 + m_MinMoveDistance: 0.001 + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &8921789205124766474 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 2257291590 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 0 + AllowOwnerToParent: 1 +--- !u!114 &871737567343884637 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e5128237997be649af0cc87dd0eb563, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + ApplyColorToChildren: 1 + IgnoreChildren: + - {fileID: 8837707216906300506} +--- !u!114 &571224925323069553 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5ce25b0b3f15e6446a88a85787c2f94a, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 1 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.01 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.1 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 0 + SwitchTransformSpaceWhenParented: 1 + Interpolate: 1 + SlerpPosition: 0 + MoverScriptNoRigidbodyExpanded: 0 + SpawnRadius: 10 + Increment: 1 + RotationSpeed: 1.26 + MovementSpeed: 15 + JumpSpeed: 10 + AirSpeedFactor: 0.35 + Gravity: -9.8 + ContinualChildMotion: 1 +--- !u!65 &2509722539211228765 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1.4, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &7705318807709855696 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bb9a9987a689bbe43a05463cf3713b22, type: 3} + m_Name: + m_EditorClassIdentifier: + UniqueLocalInstanceContent: ServerPlayer specific local content diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta new file mode 100644 index 0000000000..9199f72759 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8ae02ac62e2067144b8ff06d48aeb47a +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab new file mode 100644 index 0000000000..c596d7333d --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab @@ -0,0 +1,154 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1604908963751126680 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2093637950428003362} + - component: {fileID: 3071950872142852999} + - component: {fileID: 956227959320364877} + - component: {fileID: 4985949235297978144} + - component: {fileID: 8456313914433245678} + - component: {fileID: 1138964657491743937} + m_Layer: 0 + m_Name: Tunnel_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &2093637950428003362 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + serializedVersion: 2 + m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: -90.00001, y: 0, z: 0} +--- !u!33 &3071950872142852999 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Mesh: {fileID: 5060444177187149915, guid: 63fcabcd345d556498e09f748683088e, type: 3} +--- !u!23 &956227959320364877 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4985949235297978144 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2.502674, y: 6.0000024, z: 0.258326} + m_Center: {x: 0, y: 5.4121983e-15, z: 2.3808491} +--- !u!65 &8456313914433245678 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2527809, y: 6.0000024, z: 2.2399507} + m_Center: {x: -1.1249466, y: 1.7786642e-15, z: 1.1251621} +--- !u!65 &1138964657491743937 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.26525307, y: 6.0000024, z: 2.256102} + m_Center: {x: 1.1187105, y: 1.893427e-15, z: 1.1332378} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab.meta new file mode 100644 index 0000000000..58def4a902 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Tunnel_Prefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4b50ff3d475fc3f4fa77ac6aa6e679f2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab new file mode 100644 index 0000000000..f8dde4effc --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab @@ -0,0 +1,132 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7993119983977949264 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7324705577624711914} + - component: {fileID: 5911343394670230863} + - component: {fileID: 8497650616581704069} + - component: {fileID: 9105854698657379725} + - component: {fileID: 1277700310800588604} + m_Layer: 0 + m_Name: Wall_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &7324705577624711914 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + serializedVersion: 2 + m_LocalRotation: {x: 0.000000021855694, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5911343394670230863 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Mesh: {fileID: 6352809919239313146, guid: 34560503bf9d61046b252db98a8cf770, type: 3} +--- !u!23 &8497650616581704069 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + 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 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &9105854698657379725 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.25, y: 1.0095696, z: 2.9958286} + m_Center: {x: 0, y: 0.5047848, z: 1.5020857} +--- !u!65 &1277700310800588604 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.25, y: 2.0055175, z: 3.000146} + m_Center: {x: 0, y: 1.0027587, z: -1.499927} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab.meta new file mode 100644 index 0000000000..42ef5284f2 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/Wall_Prefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3b9516be83427084ca3fffca42e7b6da +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Resources.meta b/Examples/OverridingScenesAndPrefabs/Assets/Resources.meta new file mode 100644 index 0000000000..edebf21a13 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Resources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6a51a9fbd254e544eb3e85853865f80d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json b/Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json new file mode 100644 index 0000000000..6f4bfb7103 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json @@ -0,0 +1 @@ +{"androidStore":"GooglePlay"} \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json.meta b/Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json.meta new file mode 100644 index 0000000000..557e7d707c --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Resources/BillingMode.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a1890189503409a4bb24dd4f0eab1f0a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes.meta new file mode 100644 index 0000000000..b398c5b4ab --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9bb955f9d9ef9c34d897f353c8643a1d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity new file mode 100644 index 0000000000..d2a1261edc --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity @@ -0,0 +1,265 @@ +%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: 10 + 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_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + 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 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &455857869 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 455857870} + - component: {fileID: 455857873} + - component: {fileID: 455857872} + - component: {fileID: 455857871} + m_Layer: 0 + m_Name: NetworkManagerBootstrapper + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &455857870 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &455857871 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6960e84d07fb87f47956e7a81d71c4e6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ProtocolType: 0 + m_UseWebSockets: 0 + m_UseEncryption: 0 + m_MaxPacketQueueSize: 128 + m_MaxPayloadSize: 6144 + m_HeartbeatTimeoutMS: 500 + m_ConnectTimeoutMS: 1000 + m_MaxConnectAttempts: 60 + m_DisconnectTimeoutMS: 30000 + ConnectionData: + Address: 127.0.0.1 + Port: 7777 + ServerListenAddress: 127.0.0.1 + DebugSimulator: + PacketDelayMS: 0 + PacketJitterMS: 0 + PacketDropRate: 0 +--- !u!114 &455857872 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7db19e0e150e50d4ab23c69a086b8b6e, type: 3} + m_Name: + m_EditorClassIdentifier: + NetworkManagerExpanded: 1 + NetworkConfig: + ProtocolVersion: 0 + NetworkTransport: {fileID: 455857871} + PlayerPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + Prefabs: + NetworkPrefabsLists: + - {fileID: 11400000, guid: 3d25a2b1f6c12ee47bf7601c2edd7e70, type: 2} + TickRate: 30 + ClientConnectionBufferTimeout: 10 + ConnectionApproval: 0 + ConnectionData: + EnableTimeResync: 0 + TimeResyncInterval: 30 + EnsureNetworkVariableLengthSafety: 0 + EnableSceneManagement: 1 + ForceSamePrefabs: 1 + RecycleNetworkIds: 1 + NetworkIdRecycleDelay: 120 + RpcHashSize: 0 + LoadSceneTimeOut: 120 + SpawnTimeout: 10 + EnableNetworkLogs: 1 + NetworkTopology: 0 + UseCMBService: 0 + AutoSpawnPlayerPrefabClientSide: 1 + NetworkProfilingMetrics: 1 + OldPrefabList: [] + RunInBackground: 1 + LogLevel: 1 + NetworkManagerBootstrapperExpanded: 0 + TargetFrameRate: 100 + EnableVSync: 0 + m_OriginalVSyncCount: 1 +--- !u!114 &455857873 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c4251d3d650053a419a5c503babb13a6, type: 3} + m_Name: + m_EditorClassIdentifier: + MainMenuSceneAsset: {fileID: 102900000, guid: 1ec6afcedd7df124e91af7bfbcea59b2, type: 3} + ServerSceneDefines: + DefaultActiveScene: SharedScene + LocalScenes: + - ServerScene + DefaultActiveSceneAsset: {fileID: 102900000, guid: 9fc0d4010bbf28b4594072e72b8655ab, type: 3} + LocalSceneAssets: + - {fileID: 102900000, guid: ee7bfa213000a594bb8011364915602e, type: 3} + SharedScenes: [] + SharedSceneAssets: [] + ClientSceneDefines: + DefaultActiveScene: SharedScene + LocalScenes: + - ClientScene + DefaultActiveSceneAsset: {fileID: 102900000, guid: 9fc0d4010bbf28b4594072e72b8655ab, type: 3} + LocalSceneAssets: + - {fileID: 102900000, guid: d8ac305138d51a84dbbb734b81c4054e, type: 3} + m_MainMenuScene: MainMenu +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 455857870} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity.meta new file mode 100644 index 0000000000..e2c316c516 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8077653236d44fd4b92cd4a96193e8b6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset new file mode 100644 index 0000000000..b8bbae0a72 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset @@ -0,0 +1,195 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Camera + m_TargetType: + m_NativeTypeID: 20 + m_ManagedTypePPtr: {fileID: 0} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ClearFlags + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.r + value: 0.066037714 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.g + value: 0.066037714 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.b + value: 0.066037714 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.a + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_projectionMatrixMode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_GateFitMode + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_FOVAxisMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Iso + value: 200 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ShutterSpeed + value: 0.005 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Aperture + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_FocusDistance + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_FocalLength + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BladeCount + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Curvature.x + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Curvature.y + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BarrelClipping + value: 0.25 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Anamorphism + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SensorSize.x + value: 36 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SensorSize.y + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LensShift.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LensShift.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.width + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.height + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: near clip plane + value: 0.3 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: far clip plane + value: 1000 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: field of view + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: orthographic + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: orthographic size + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Depth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_CullingMask.m_Bits + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RenderingPath + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TargetTexture + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TargetDisplay + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TargetEye + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HDR + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_AllowMSAA + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_AllowDynamicResolution + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ForceIntoRT + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_OcclusionCulling + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_StereoConvergence + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_StereoSeparation + value: 0.022 + objectReference: {fileID: 0} + m_ExcludedProperties: [] diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset.meta new file mode 100644 index 0000000000..3e327ecf36 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/Camera.preset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1807b530602915743868e6c3bdc1a93c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2655988077585873504 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity new file mode 100644 index 0000000000..e14f646ab6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity @@ -0,0 +1,1435 @@ +%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: 10 + 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: 705507994} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + 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 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &28232985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 28232986} + - component: {fileID: 28232988} + - component: {fileID: 28232987} + - component: {fileID: 28232989} + - component: {fileID: 28232990} + m_Layer: 5 + m_Name: ServerHostClientDisplay + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &28232986 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 479361665} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 40} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &28232987 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, 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_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 1 + m_BestFit: 1 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: +--- !u!222 &28232988 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_CullTransparentMesh: 1 +--- !u!114 &28232989 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 2631381779 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 1 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 + AllowOwnerToParent: 0 +--- !u!114 &28232990 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6637cd674efb56a48a3d4d545d23a8d3, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 +--- !u!1001 &45185844 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: OnExitTransferParentOnStay + value: + objectReference: {fileID: 621748559} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: DontDeparentIfParentedByOtherBody + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 1264507088 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: -49.1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: StationaryBody-B + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Size.z + value: 19.891119 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.x + value: -0.038006783 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.z + value: -0.13657665 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1001 &66674670 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: OnExitTransferParentOnStay + value: + objectReference: {fileID: 520394643} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: DontDeparentIfParentedByOtherBody + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 1708114892 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: -33.32 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: StationaryBody-A + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Size.z + value: 19.906477 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.x + value: -0.038006783 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.z + value: 0.070830345 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &455857869 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 455857870} + - component: {fileID: 455857875} + - component: {fileID: 455857871} + m_Layer: 0 + m_Name: ExtendedNetworkManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &455857870 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &455857871 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6960e84d07fb87f47956e7a81d71c4e6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ProtocolType: 0 + m_UseWebSockets: 0 + m_UseEncryption: 0 + m_MaxPacketQueueSize: 128 + m_MaxPayloadSize: 6144 + m_HeartbeatTimeoutMS: 500 + m_ConnectTimeoutMS: 1000 + m_MaxConnectAttempts: 60 + m_DisconnectTimeoutMS: 30000 + ConnectionData: + Address: 127.0.0.1 + Port: 7777 + ServerListenAddress: 127.0.0.1 + DebugSimulator: + PacketDelayMS: 0 + PacketJitterMS: 0 + PacketDropRate: 0 +--- !u!114 &455857875 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e4d8d44c602b97b47ba488a40c66267c, type: 3} + m_Name: + m_EditorClassIdentifier: + NetworkManagerExpanded: 0 + NetworkConfig: + ProtocolVersion: 0 + NetworkTransport: {fileID: 455857871} + PlayerPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + Prefabs: + NetworkPrefabsLists: + - {fileID: 11400000, guid: aa82390bfdde2564f828b8e5be375282, type: 2} + TickRate: 30 + ClientConnectionBufferTimeout: 10 + ConnectionApproval: 0 + ConnectionData: + EnableTimeResync: 0 + TimeResyncInterval: 30 + EnsureNetworkVariableLengthSafety: 0 + EnableSceneManagement: 1 + ForceSamePrefabs: 1 + RecycleNetworkIds: 1 + NetworkIdRecycleDelay: 120 + RpcHashSize: 0 + LoadSceneTimeOut: 120 + SpawnTimeout: 10 + EnableNetworkLogs: 1 + NetworkTopology: 0 + UseCMBService: 0 + AutoSpawnPlayerPrefabClientSide: 1 + NetworkProfilingMetrics: 1 + OldPrefabList: [] + RunInBackground: 1 + LogLevel: 1 + ExtendedNetworkManagerExpanded: 1 + ConnectionType: 1 + TargetFrameRate: 100 + EnableVSync: 0 + m_OriginalVSyncCount: 1 +--- !u!1 &479361661 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 479361665} + - component: {fileID: 479361664} + - component: {fileID: 479361663} + - component: {fileID: 479361662} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &479361662 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &479361663 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, 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 + m_PresetInfoIsWorld: 0 +--- !u!223 &479361664 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + 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_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &479361665 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 28232986} + m_Father: {fileID: 0} + 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 &520394643 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + m_PrefabInstance: {fileID: 45185844} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &537610708 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 537610709} + m_Layer: 0 + m_Name: PointA + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &537610709 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 537610708} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: -0.34, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &621748559 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + m_PrefabInstance: {fileID: 66674670} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &705507993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705507995} + - component: {fileID: 705507994} + 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 &705507994 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &705507995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1001 &748186899 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.x + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.z + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.y + value: -0.25 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511854, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_Name + value: SceneLevelGeometry + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} +--- !u!1001 &857399335 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0.25 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotateDirection + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 3713951295 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60.7 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 56.8 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: RotatingBody + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &946793187 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 946793188} + m_Layer: 0 + m_Name: PointE + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &946793188 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 946793187} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 60.5, y: -0.34, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &963194225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 963194228} + - component: {fileID: 963194227} + - component: {fileID: 963194226} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &963194226 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 +--- !u!20 &963194227 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.066037714, g: 0.066037714, b: 0.066037714, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + 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: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + 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 &963194228 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + serializedVersion: 2 + m_LocalRotation: {x: 0.15212336, y: 0, z: 0, w: 0.98836154} + m_LocalPosition: {x: 0, y: 4.5, z: -5.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 17.5, y: 0, z: 0} +--- !u!1 &1049334975 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1049334976} + m_Layer: 0 + m_Name: PointF + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1049334976 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1049334975} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 60.5, y: -0.34, z: -68.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1055951929 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1055951930} + m_Layer: 0 + m_Name: PointD + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1055951930 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1055951929} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: -0.34, z: -70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1184702125 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1184702128} + - component: {fileID: 1184702127} + - component: {fileID: 1184702126} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1184702126 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1184702127 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1184702128 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1281267714 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1281267715} + m_Layer: 0 + m_Name: PointB + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1281267715 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1281267714} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: 40.6, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1591298748 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: ZAxisMove + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: PathMovement.Array.size + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[0]' + value: + objectReference: {fileID: 537610708} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[1]' + value: + objectReference: {fileID: 1281267714} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[2]' + value: + objectReference: {fileID: 1727671589} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[3]' + value: + objectReference: {fileID: 1055951929} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 3044060834 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: 10.9 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 70 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: 'ElevatorBody ' + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &1727671589 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1727671590} + m_Layer: 0 + m_Name: PointC + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1727671590 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1727671589} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: 40.6, z: -70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1968567121 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: ZAxisMove + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0.3 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: PathMovement.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotatingBodyLogicExpanded + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[0]' + value: + objectReference: {fileID: 946793187} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[1]' + value: + objectReference: {fileID: 1049334975} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 990014691 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 70 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: MovingRotatingBody + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 963194228} + - {fileID: 705507995} + - {fileID: 455857870} + - {fileID: 479361665} + - {fileID: 1184702128} + - {fileID: 748186899} + - {fileID: 857399335} + - {fileID: 66674670} + - {fileID: 45185844} + - {fileID: 1968567121} + - {fileID: 1591298748} + - {fileID: 537610709} + - {fileID: 1281267715} + - {fileID: 1727671590} + - {fileID: 1055951930} + - {fileID: 946793188} + - {fileID: 1049334976} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta new file mode 100644 index 0000000000..5c41b642b8 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 49c1d63c81755ca4db7ed1753c1428fa +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity new file mode 100644 index 0000000000..06eaad444d --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity @@ -0,0 +1,382 @@ +%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: 10 + 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_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + 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 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &27008424 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.x + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.z + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.y + value: -0.25 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511854, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_Name + value: SceneLevelGeometry (1) + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 4012615691354089851, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615692791378777, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691503252842, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615692269653853, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691965054904, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + m_RemovedGameObjects: + - {fileID: 7080625901286762351, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 1854705290947220173, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 910007655143077103, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4674276234353933548, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} +--- !u!1 &638077906 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 638077907} + - component: {fileID: 638077911} + - component: {fileID: 638077910} + m_Layer: 5 + m_Name: ClientContent + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &638077907 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638077906} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1082114250} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 1} + m_AnchorMax: {x: 0.5, y: 1} + m_AnchoredPosition: {x: 0, y: -32} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &638077910 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638077906} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.8396226, g: 0.48815125, b: 0.019802418, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 1 + m_BestFit: 1 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Client Canvas Content +--- !u!222 &638077911 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 638077906} + m_CullTransparentMesh: 1 +--- !u!1 &1082114246 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1082114250} + - component: {fileID: 1082114249} + - component: {fileID: 1082114248} + - component: {fileID: 1082114247} + m_Layer: 5 + m_Name: ClientCanvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1082114247 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1082114246} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1082114248 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1082114246} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, 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 + m_PresetInfoIsWorld: 0 +--- !u!223 &1082114249 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1082114246} + 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_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &1082114250 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1082114246} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 638077907} + m_Father: {fileID: 0} + 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!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1082114250} + - {fileID: 27008424} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity.meta new file mode 100644 index 0000000000..65393dbc64 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ClientScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d8ac305138d51a84dbbb734b81c4054e +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity new file mode 100644 index 0000000000..45e6ae776b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity @@ -0,0 +1,607 @@ +%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: 10 + 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_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + 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 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &559666861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 559666865} + - component: {fileID: 559666864} + - component: {fileID: 559666863} + - component: {fileID: 559666862} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &559666862 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 559666861} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &559666863 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 559666861} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, 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 + m_PresetInfoIsWorld: 0 +--- !u!223 &559666864 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 559666861} + 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_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &559666865 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 559666861} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1419645487} + m_Father: {fileID: 0} + 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!1 &1031380542 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1031380545} + - component: {fileID: 1031380544} + - component: {fileID: 1031380543} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1031380543 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1031380542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1031380544 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1031380542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1031380545 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1031380542} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1273064315 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1273064318} + - component: {fileID: 1273064317} + - component: {fileID: 1273064316} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1273064316 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273064315} + m_Enabled: 1 +--- !u!20 &1273064317 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273064315} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.16037738, g: 0.16037738, b: 0.16037738, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + 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: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + 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 &1273064318 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273064315} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1346095180 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1346095182} + - component: {fileID: 1346095181} + 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 &1346095181 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1346095180} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &1346095182 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1346095180} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &1419645486 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1419645487} + - component: {fileID: 1419645491} + - component: {fileID: 1419645490} + - component: {fileID: 1419645489} + - component: {fileID: 1419645488} + m_Layer: 5 + m_Name: MainMenu + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1419645487 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1419645486} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 559666865} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1419645488 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1419645486} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6637cd674efb56a48a3d4d545d23a8d3, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 +--- !u!114 &1419645489 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1419645486} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 622675322 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 1 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 + AllowOwnerToParent: 0 +--- !u!114 &1419645490 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1419645486} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.8396226, g: 0.48815125, b: 0.019802418, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 1 + m_BestFit: 1 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'Mock Main Menu ' +--- !u!222 &1419645491 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1419645486} + m_CullTransparentMesh: 1 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1273064318} + - {fileID: 1346095182} + - {fileID: 559666865} + - {fileID: 1031380545} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity.meta new file mode 100644 index 0000000000..f89877b055 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/MainMenu.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1ec6afcedd7df124e91af7bfbcea59b2 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset new file mode 100644 index 0000000000..59747719f3 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset @@ -0,0 +1,26 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e651dbb3fbac04af2b8f5abf007ddc23, type: 3} + m_Name: ProjectPrefabs + m_EditorClassIdentifier: + IsDefault: 0 + List: + - Override: 0 + Prefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 8921789205124766477, guid: a279f80620d4e6a4ab02c1a9c96ff460, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset.meta new file mode 100644 index 0000000000..402e4425d7 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3d25a2b1f6c12ee47bf7601c2edd7e70 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity new file mode 100644 index 0000000000..577973e816 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity @@ -0,0 +1,402 @@ +%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: 10 + 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_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + 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 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &405623521 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 405623522} + - component: {fileID: 405623526} + - component: {fileID: 405623525} + m_Layer: 5 + m_Name: ConnectedPlayers + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &405623522 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 405623521} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1605560297} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: -116, y: 27} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &405623525 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 405623521} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.8396226, g: 0.48815125, b: 0.019802418, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 3 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'Players: 0' +--- !u!222 &405623526 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 405623521} + m_CullTransparentMesh: 1 +--- !u!1 &1516152272 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1516152273} + - component: {fileID: 1516152277} + - component: {fileID: 1516152276} + m_Layer: 5 + m_Name: ServerRuntime + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1516152273 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1516152272} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1605560297} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: -116, y: 61} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1516152276 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1516152272} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.8396226, g: 0.48815125, b: 0.019802418, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 3 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'NetworkTick: 0' +--- !u!222 &1516152277 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1516152272} + m_CullTransparentMesh: 1 +--- !u!1 &1605560293 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1605560297} + - component: {fileID: 1605560296} + - component: {fileID: 1605560295} + - component: {fileID: 1605560294} + - component: {fileID: 1605560298} + m_Layer: 5 + m_Name: ServerCanvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1605560294 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605560293} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1605560295 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605560293} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, 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 + m_PresetInfoIsWorld: 0 +--- !u!223 &1605560296 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605560293} + 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_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &1605560297 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605560293} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1516152273} + - {fileID: 405623522} + m_Father: {fileID: 0} + 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 &1605560298 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605560293} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d370147e4c421014cb5dd4eee3b6a373, type: 3} + m_Name: + m_EditorClassIdentifier: + ServerTime: {fileID: 1516152276} + PlayerCount: {fileID: 405623525} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1605560297} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity.meta new file mode 100644 index 0000000000..21ce0ed652 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ServerScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ee7bfa213000a594bb8011364915602e +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity new file mode 100644 index 0000000000..503b47cf22 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity @@ -0,0 +1,1409 @@ +%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: 10 + 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: 705507994} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + 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 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &28232985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 28232986} + - component: {fileID: 28232988} + - component: {fileID: 28232987} + - component: {fileID: 28232989} + - component: {fileID: 28232990} + m_Layer: 5 + m_Name: ServerHostClientDisplay + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &28232986 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 479361665} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 40} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &28232987 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, 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_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 1 + m_BestFit: 1 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: +--- !u!222 &28232988 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_CullTransparentMesh: 1 +--- !u!114 &28232989 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 536662705 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 1 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 + AllowOwnerToParent: 0 +--- !u!114 &28232990 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6637cd674efb56a48a3d4d545d23a8d3, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 +--- !u!1001 &45185844 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: OnExitTransferParentOnStay + value: + objectReference: {fileID: 621748559} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: DontDeparentIfParentedByOtherBody + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 3246499739 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: -49.1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: StationaryBody-B + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Size.z + value: 19.891119 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.x + value: -0.038006783 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.z + value: -0.13657665 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1001 &66674670 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: OnExitTransferParentOnStay + value: + objectReference: {fileID: 520394643} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: DontDeparentIfParentedByOtherBody + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 4013775021 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: -33.32 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: StationaryBody-A + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Size.z + value: 19.906477 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.x + value: -0.038006783 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.z + value: 0.070830345 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &479361661 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 479361665} + - component: {fileID: 479361664} + - component: {fileID: 479361663} + - component: {fileID: 479361662} + m_Layer: 5 + m_Name: SharedCanvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &479361662 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &479361663 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, 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 + m_PresetInfoIsWorld: 0 +--- !u!223 &479361664 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + 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_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &479361665 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 28232986} + m_Father: {fileID: 0} + 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 &520394643 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + m_PrefabInstance: {fileID: 45185844} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &621748559 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + m_PrefabInstance: {fileID: 66674670} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &705507993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705507995} + - component: {fileID: 705507994} + 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 &705507994 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &705507995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &737227285 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 737227286} + m_Layer: 0 + m_Name: PointF + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &737227286 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 737227285} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 60.5, y: -0.34, z: -68.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &748186899 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.x + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.z + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.y + value: -0.25 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511854, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_Name + value: SceneLevelGeometry + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 4012615691354089850, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691354089845, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615692791378779, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691503252836, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615692269653855, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691965054906, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615692791378776, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691503252837, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615692269653852, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + - {fileID: 4012615691965054907, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} +--- !u!1001 &857399335 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0.25 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotateDirection + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 1449196534 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60.7 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 56.8 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: RotatingBody + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &963194225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 963194228} + - component: {fileID: 963194227} + - component: {fileID: 963194226} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &963194226 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 +--- !u!20 &963194227 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + 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: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + 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 &963194228 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + serializedVersion: 2 + m_LocalRotation: {x: 0.15212336, y: 0, z: 0, w: 0.98836154} + m_LocalPosition: {x: 0, y: 4.5, z: -5.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 17.5, y: 0, z: 0} +--- !u!1 &1184702125 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1184702128} + - component: {fileID: 1184702127} + - component: {fileID: 1184702126} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1184702126 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1184702127 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1184702128 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1364678139 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1364678140} + m_Layer: 0 + m_Name: PointC + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1364678140 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1364678139} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: 40.6, z: -70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1525255853 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1525255854} + m_Layer: 0 + m_Name: PointD + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1525255854 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1525255853} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: -0.34, z: -70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1591298748 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: ZAxisMove + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: PathMovement.Array.size + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: NetworkTransformExpanded + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotatingBodyLogicExpanded + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[0]' + value: + objectReference: {fileID: 1851254366} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[1]' + value: + objectReference: {fileID: 1939125342} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[2]' + value: + objectReference: {fileID: 1364678139} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[3]' + value: + objectReference: {fileID: 1525255853} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 4258258070 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: 10.9 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 70 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: 'ElevatorBody ' + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &1851254366 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1851254367} + m_Layer: 0 + m_Name: PointA + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1851254367 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1851254366} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: -0.34, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1900905072 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1900905073} + m_Layer: 0 + m_Name: PointE + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1900905073 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1900905072} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 60.5, y: -0.34, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1939125342 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1939125343} + m_Layer: 0 + m_Name: PointB + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1939125343 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1939125342} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: 40.6, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1968567121 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: ZAxisMove + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0.3 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: PathMovement.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotatingBodyLogicExpanded + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[0]' + value: + objectReference: {fileID: 1900905072} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[1]' + value: + objectReference: {fileID: 737227285} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 1259759422 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 70 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: MovingRotatingBody + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1001 &2821485933210227544 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 248153197284761457, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: GlobalObjectIdHash + value: 2304782851 + objectReference: {fileID: 0} + - target: {fileID: 248153197284761457, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 948245971 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7542415007908852951, guid: cab3850a18c969d4caa82a6049175695, type: 3} + propertyPath: m_Name + value: PlayerPrefabOverrideHandler + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: cab3850a18c969d4caa82a6049175695, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 963194228} + - {fileID: 705507995} + - {fileID: 479361665} + - {fileID: 1184702128} + - {fileID: 2821485933210227544} + - {fileID: 748186899} + - {fileID: 857399335} + - {fileID: 66674670} + - {fileID: 45185844} + - {fileID: 1968567121} + - {fileID: 1591298748} + - {fileID: 1851254367} + - {fileID: 1939125343} + - {fileID: 1364678140} + - {fileID: 1525255854} + - {fileID: 1900905073} + - {fileID: 737227286} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity.meta new file mode 100644 index 0000000000..952bd1e9e1 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9fc0d4010bbf28b4594072e72b8655ab +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts.meta new file mode 100644 index 0000000000..528b6db2ae --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8f0135d923712c4438b2facb3ce21fb6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs new file mode 100644 index 0000000000..aa509c3e79 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs @@ -0,0 +1,58 @@ +using Unity.Netcode; +using UnityEngine; + + +///

+/// An example of how to get server or client specific behaviors without +/// directly using a . +/// The comments below explain a bit further. +/// +public class InstanceTypeLocalBehavior : MonoBehaviour, INetworkUpdateSystem +{ + public string UniqueLocalInstanceContent; + private MoverScriptNoRigidbody m_MoverScriptNoRigidbody; + + private void Awake() + { + m_MoverScriptNoRigidbody = GetComponent(); + m_MoverScriptNoRigidbody.NotifySpawnStatusChanged += OnSpawnStatusChanged; + } + + /// + /// + /// Isolate the spawning status to the and just + /// use actions, ecents, or delegates to notify non-shared behaviors that are + /// only on a server or client version of a network prefab that has a . + /// + /// + private void OnSpawnStatusChanged(bool spawned) + { + if (spawned) + { + NetworkUpdateLoop.RegisterNetworkUpdate(this, NetworkUpdateStage.Update); + } + else + { + NetworkUpdateLoop.UnregisterAllNetworkUpdates(this); + } + } + + public void NetworkUpdate(NetworkUpdateStage updateStage) + { + if (updateStage == NetworkUpdateStage.Update) + { + OnUpdate(); + } + } + + private float m_NextTimeToLog; + private void OnUpdate() + { + if (m_NextTimeToLog < Time.realtimeSinceStartup) + { + var serverClient = m_MoverScriptNoRigidbody.IsServer ? "Server" : "Client"; + NetworkManagerBootstrapper.Instance.LogMessage($"[{Time.realtimeSinceStartup}][{serverClient}-{m_MoverScriptNoRigidbody.name}] {UniqueLocalInstanceContent}"); + m_NextTimeToLog = Time.realtimeSinceStartup + 5.0f; + } + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs.meta new file mode 100644 index 0000000000..e4a7e879ac --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: bb9a9987a689bbe43a05463cf3713b22 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs new file mode 100644 index 0000000000..8dfd2bc418 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs @@ -0,0 +1,376 @@ +using System; +using Unity.Netcode.Components; +using Unity.Netcode; +using UnityEngine; +using Random = UnityEngine.Random; +using Debug = UnityEngine.Debug; + +#region MoverScriptNoRigidbody Custom Editor +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(MoverScriptNoRigidbody), true)] +[CanEditMultipleObjects] +public class MoverScriptNoRigidbodyEditor : NetworkTransformEditor +{ + private SerializedProperty m_Radius; + private SerializedProperty m_Increment; + private SerializedProperty m_RotateSpeed; + private SerializedProperty m_MovementSpeed; + private SerializedProperty m_AirSpeedFactor; + private SerializedProperty m_Gravity; + private SerializedProperty m_ContinualChildMotion; + + + public override void OnEnable() + { + m_Radius = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.SpawnRadius)); + m_Increment = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.Increment)); + m_RotateSpeed = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.RotationSpeed)); + m_MovementSpeed = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.MovementSpeed)); + m_AirSpeedFactor = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.AirSpeedFactor)); + m_Gravity = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.Gravity)); + m_ContinualChildMotion = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.ContinualChildMotion)); + + base.OnEnable(); + } + + private void DisplayerMoverScriptNoRigidbodyProperties() + { + EditorGUILayout.PropertyField(m_Radius); + EditorGUILayout.PropertyField(m_Increment); + EditorGUILayout.PropertyField(m_RotateSpeed); + EditorGUILayout.PropertyField(m_MovementSpeed); + EditorGUILayout.PropertyField(m_AirSpeedFactor); + EditorGUILayout.PropertyField(m_Gravity); + EditorGUILayout.PropertyField(m_ContinualChildMotion); + } + + public override void OnInspectorGUI() + { + var moverScriptNoRigidbody = target as MoverScriptNoRigidbody; + void SetExpanded(bool expanded) { moverScriptNoRigidbody.MoverScriptNoRigidbodyExpanded = expanded; }; + DrawFoldOutGroup(moverScriptNoRigidbody.GetType(), DisplayerMoverScriptNoRigidbodyProperties, moverScriptNoRigidbody.MoverScriptNoRigidbodyExpanded, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif +#endregion + +/// +/// The player controller for the player prefab +/// +public class MoverScriptNoRigidbody : NetworkTransform +{ +#if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool MoverScriptNoRigidbodyExpanded; +#endif + + private static bool s_EnablePlayerParentingText = true; + + [Tooltip("Radius range a player will spawn within.")] + [Range(1.0f, 40.0f)] + public float SpawnRadius = 10.0f; + + [Range(0.001f, 10.0f)] + public float Increment = 1.0f; + + [Tooltip("The rotation speed multiplier.")] + [Range(0.01f, 2.0f)] + public float RotationSpeed = 1.0f; + + [Tooltip("The forward movement speed.")] + [Range(0.01f, 30.0f)] + public float MovementSpeed = 15.0f; + + [Tooltip("The jump launching speed.")] + [Range(1.0f, 20f)] + public float JumpSpeed = 10.0f; + + [Tooltip("Determines how much the player's motion is applied when in the air.")] + [Range(0.01f, 1.0f)] + public float AirSpeedFactor = 0.35f; + + [Range(-20.0f, 20.0f)] + public float Gravity = -9.8f; + + [Tooltip("When enabled, the child spheres will continually move. When disabled, the child spheres will only move when the player moves.")] + public bool ContinualChildMotion = true; + + + private TextMesh m_ParentedText; + private PlayerColor m_PlayerColor; + private float m_JumpDelay; + private Vector3 m_WorldMotion = Vector3.zero; + private Vector3 m_CameraOriginalPosition; + private Quaternion m_CameraOriginalRotation; + private CharacterController m_CharacterController; + private PlayerBallMotion m_PlayerBallMotion; + + public Action NotifySpawnStatusChanged; + + protected override void Awake() + { + m_ParentedText = GetComponentInChildren(); + m_ParentedText?.gameObject.SetActive(false); + m_PlayerColor = GetComponent(); + m_PlayerBallMotion = GetComponentInChildren(); + base.Awake(); + } + + /// + /// Invoked after being instantiated, we can do other pre-spawn related + /// initilization tasks here. + /// + /// + /// This provides you with a reference to the current + /// since that is not set on the until it is spawned. + /// + /// + protected override void OnNetworkPreSpawn(ref NetworkManager networkManager) + { + m_CharacterController = GetComponent(); + // By default, we always disable the CharacterController and only enable it on the + // owner/authority side. + m_CharacterController.enabled = false; + base.OnNetworkPreSpawn(ref networkManager); + } + + /// + /// We are using post spawn to handle any final spawn initializations. + /// At this point we know all NetworkBehaviours on this instance has + /// been spawned. + /// + protected override void OnNetworkPostSpawn() + { + // Notify any client or server specific componant that this instance has spawned. + NotifySpawnStatusChanged?.Invoke(true); + + m_CharacterController.enabled = CanCommitToTransform; + if (CanCommitToTransform) + { + m_PlayerBallMotion.SetContinualMotion(ContinualChildMotion); + Random.InitState((int)DateTime.Now.Ticks); + transform.position += new Vector3(Random.Range(-SpawnRadius, SpawnRadius), 1.25f, Random.Range(0, SpawnRadius)); + SetState(transform.position, null, null, false); + if (IsLocalPlayer) + { + NetworkObject.DontDestroyWithOwner = false; + m_CameraOriginalPosition = Camera.main.transform.position; + m_CameraOriginalRotation = Camera.main.transform.rotation; + Camera.main.transform.SetParent(transform, false); + } + } + + if (NetworkObject.IsPlayerObject) + { + gameObject.name = $"Player-{OwnerClientId}"; + } + + m_ParentedText?.gameObject.SetActive(true); + UpdateParentedText(); + base.OnNetworkPostSpawn(); + } + + public override void OnNetworkDespawn() + { + // Notify any client or server specific componant that this instance has despawned. + NotifySpawnStatusChanged?.Invoke(false); + if (IsLocalPlayer) + { + m_CharacterController.enabled = false; + Camera.main.transform.SetParent(null, false); + Camera.main.transform.position = m_CameraOriginalPosition; + Camera.main.transform.rotation = m_CameraOriginalRotation; + } + base.OnNetworkDespawn(); + } + + /// + /// Bypass NetworkTransform's OnNetworkObjectParentChanged + /// + public override void OnNetworkObjectParentChanged(NetworkObject parentNetworkObject) + { + if (parentNetworkObject != null) + { + Debug.Log($"Parented under {parentNetworkObject.name}"); + } + UpdateParentedText(); + base.OnNetworkObjectParentChanged(parentNetworkObject); + } + + /// + /// This method handles both client-server and distributed authority network topologies + /// client-server: If we are not the server, then we need to send an Rpc to the server to handle parenting since the Character controller is disabled on the server for all client CharacterControllers (i.e. won't trigger). + /// distributed authority: If we are the authority, then handle parenting locally. + /// + /// + public void SetParent(NetworkObject parent) + { + if ((!NetworkManager.DistributedAuthorityMode && (IsServer || (NetworkObject.AllowOwnerToParent && IsOwner))) || (NetworkManager.DistributedAuthorityMode && HasAuthority)) + { + if (parent != null) + { + NetworkObject.TrySetParent(parent); + } + else + { + NetworkObject.TryRemoveParent(); + } + } + else if (!NetworkManager.DistributedAuthorityMode && !IsServer) + { + SetParentRpc(new NetworkObjectReference(parent)); + } + } + + [Rpc(SendTo.Server)] + public void SetParentRpc(NetworkObjectReference parentReference, RpcParams rpcParams = default) + { + var parent = (NetworkObject)null; + parentReference.TryGet(out parent, NetworkManager); + if (parent != null) + { + NetworkObject.TrySetParent(parent); + } + else + { + NetworkObject.TryRemoveParent(); + } + } + + + private void Update() + { + if (!IsSpawned || !CanCommitToTransform) + { + return; + } + ApplyInput(); + } + + + private Vector3 m_PushMotion = Vector3.zero; + /// + /// Since has issues with collisions and rotating bodies, + /// we have to simulate the collision using triggers. + /// + /// + /// + /// + /// direction to push away from + public void PushAwayFrom(Vector3 normal) + { + m_PushMotion += normal * MovementSpeed * 0.10f * Time.deltaTime; + } + + /// + /// Handles player input + /// + private void ApplyInput() + { + // Simple rotation: + // Since the forward vector is perpendicular to the right vector of the player, we can just + // apply the +/- value to our forward direction and lerp our right vector towards that direction + // in order to get a reasonably smooth rotation. + var rotation = transform.forward; + m_WorldMotion = Vector3.Lerp(m_WorldMotion, m_CharacterController.isGrounded ? Vector3.zero : Vector3.up * Gravity, Time.deltaTime * 2f); + var motion = m_WorldMotion * Time.deltaTime + m_PushMotion; + var moveMotion = 0.0f; + + if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.UpArrow)) + { + motion += transform.forward * MovementSpeed * Time.deltaTime * (m_CharacterController.isGrounded ? 1.0f : AirSpeedFactor); + moveMotion = 1.0f; + m_CharacterController.Move(motion); + } + if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow)) + { + motion += (transform.forward * -MovementSpeed) * Time.deltaTime * (m_CharacterController.isGrounded ? 1.0f : AirSpeedFactor); + moveMotion = -1.0f; + m_CharacterController.Move(motion); + } + + if (!m_CharacterController.isGrounded || m_JumpDelay > Time.realtimeSinceStartup || m_PushMotion.magnitude > 0.01f) + { + m_CharacterController.Move(motion); + } + + if (Input.GetKeyDown(KeyCode.Space) && m_CharacterController.isGrounded) + { + m_JumpDelay = Time.realtimeSinceStartup + 0.5f; + m_WorldMotion = motion + Vector3.up * JumpSpeed; + } + + if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow)) + { + transform.right = Vector3.Lerp(transform.right, rotation * RotationSpeed, Time.deltaTime).normalized; + } + if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow)) + { + transform.right = Vector3.Lerp(transform.right, rotation * -RotationSpeed, Time.deltaTime).normalized; + } + + // Enabled/Disable player name, transform space, and parent TextMesh + if (Input.GetKeyDown(KeyCode.P)) + { + s_EnablePlayerParentingText = !s_EnablePlayerParentingText; + } + + if (Input.GetKeyDown(KeyCode.C)) + { + ContinualChildMotion = !ContinualChildMotion; + m_PlayerBallMotion.SetContinualMotion(ContinualChildMotion); + } + + m_PushMotion = Vector3.Lerp(m_PushMotion, Vector3.zero, 0.35f); + + m_PlayerBallMotion.HasMotion(moveMotion); + } + + /// + /// Updates player TextMesh relative to each client's camera view + /// + private void OnGUI() + { + if (m_ParentedText != null) + { + if (m_ParentedText.gameObject.activeInHierarchy != s_EnablePlayerParentingText) + { + m_ParentedText.gameObject.SetActive(s_EnablePlayerParentingText); + } + if (s_EnablePlayerParentingText) + { + var position = Camera.main.transform.position; + position.y = m_ParentedText.transform.position.y; + m_ParentedText.transform.LookAt(position, transform.up); + m_ParentedText.transform.forward = -m_ParentedText.transform.forward; + } + } + } + + /// + /// Updates the contents of the parented + /// + private void UpdateParentedText() + { + if (m_ParentedText) + { + m_ParentedText.color = m_PlayerColor.Color; + if (transform.parent) + { + m_ParentedText.text = $"{gameObject.name}\n Local Space\n Parent: {transform.parent.name}"; + } + else + { + m_ParentedText.text = $"{gameObject.name}\n WorldSpace\n Parent: None"; + } + } + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs.meta new file mode 100644 index 0000000000..d1b709a9fb --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 5ce25b0b3f15e6446a88a85787c2f94a diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs new file mode 100644 index 0000000000..5d9b13ef7d --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs @@ -0,0 +1,336 @@ +using System.Collections.Generic; +using Unity.Netcode; +using UnityEngine; + +#region NetworkManagerBootstrapperEditor +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(NetworkManagerBootstrapper), true)] +[CanEditMultipleObjects] +public class NetworkManagerBootstrapperEditor : NetworkManagerEditor +{ + private SerializedProperty m_TargetFrameRate; + private SerializedProperty m_EnableVSync; + + public override void OnEnable() + { + m_TargetFrameRate = serializedObject.FindProperty(nameof(NetworkManagerBootstrapper.TargetFrameRate)); + m_EnableVSync = serializedObject.FindProperty(nameof(NetworkManagerBootstrapper.EnableVSync)); + base.OnEnable(); + } + + private void DisplayNetworkManagerBootstrapperProperties() + { + EditorGUILayout.PropertyField(m_TargetFrameRate); + EditorGUILayout.PropertyField(m_EnableVSync); + } + + public override void OnInspectorGUI() + { + var extendedNetworkManager = target as NetworkManagerBootstrapper; + void SetExpanded(bool expanded) { extendedNetworkManager.NetworkManagerBootstrapperExpanded = expanded; }; + DrawFoldOutGroup(extendedNetworkManager.GetType(), DisplayNetworkManagerBootstrapperProperties, extendedNetworkManager.NetworkManagerBootstrapperExpanded, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif +#endregion + +/// +/// An extended NetworkManager to handle the bootstrap loading process specific to a client-server +/// topology where one might want to have local server-side scenes, local client-side scenes, and shared (synchronized) scenes. +/// +/// +public class NetworkManagerBootstrapper : NetworkManager +{ +#if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool NetworkManagerBootstrapperExpanded; + protected override void OnValidateComponent() + { + m_OriginalVSyncCount = QualitySettings.vSyncCount; + base.OnValidateComponent(); + } +#endif + + public static NetworkManagerBootstrapper Instance; + + public int TargetFrameRate = 100; + public bool EnableVSync = false; + + [HideInInspector] + [SerializeField] + private int m_OriginalVSyncCount; + + /// + /// Example of how to control scene loading server local, client local, or shared. + /// Server local: nothing is synchronized with clients. + /// Client local: nothing is synchronized with the server. + /// Shared: Is synchronized with clients. + /// + private SceneBootstrapLoader m_SceneBootstrapLoader; + + private enum ConnectionStates + { + None, + Connecting, + Connected, + } + + private ConnectionStates m_ConnectionState; + + public void SetFrameRate(int targetFrameRate, bool enableVsync) + { + Application.targetFrameRate = targetFrameRate; + QualitySettings.vSyncCount = enableVsync ? m_OriginalVSyncCount : 0; + } + + private void Awake() + { + Screen.SetResolution((int)(Screen.currentResolution.width * 0.40f), (int)(Screen.currentResolution.height * 0.40f), FullScreenMode.Windowed); + SetFrameRate(TargetFrameRate, EnableVSync); + SetSingleton(); + m_SceneBootstrapLoader = GetComponent(); + } + + private void Start() + { + OnClientConnectedCallback += OnClientConnected; + OnClientDisconnectCallback += OnClientDisconnect; + OnConnectionEvent += OnClientConnectionEvent; + m_SceneBootstrapLoader.LoadMainMenu(); + } + + private void OnDestroy() + { + OnClientConnectedCallback -= OnClientConnected; + OnClientDisconnectCallback -= OnClientDisconnect; + OnConnectionEvent -= OnClientConnectionEvent; + } + + private void SessionStarted() + { + OnClientStarted -= SessionStarted; + m_ConnectionState = ConnectionStates.Connected; + if (IsServer) + { + LogMessage($"Server started session."); + } + else + { + LogMessage($"Client connecting to session."); + } + } + + private void SessionStopped(bool isHost) + { + LogMessage($"NetworkManager has stopped."); + OnClientStopped -= SessionStopped; + m_ConnectionState = ConnectionStates.None; + if (IsServer) + { + ResetMainCamera(); + } + } + + private void OnUpdateGUIDisconnected() + { + GUILayout.BeginArea(new Rect(10, 10, 300, 800)); + if (GUILayout.Button("Start Server")) + { + OnServerStopped += SessionStopped; + OnServerStarted += SessionStarted; + m_SceneBootstrapLoader.StartSession(true); + } + + if (GUILayout.Button("Start Client")) + { + OnClientStopped += SessionStopped; + OnClientStarted += SessionStarted; + m_SceneBootstrapLoader.StartSession(false); + } + GUILayout.EndArea(); + } + + private void OnUpdateGUIConnected() + { + GUILayout.BeginArea(new Rect(10, 10, 800, 800)); + GUILayout.Label($"Client-Server Session"); + GUILayout.EndArea(); + + GUILayout.BeginArea(new Rect(Display.main.renderingWidth - 160, 10, 150, 80)); + var endSessionText = IsServer ? "Shutdown" : "Disconnect"; + if (GUILayout.Button(endSessionText)) + { + Shutdown(); + } + GUILayout.EndArea(); + } + + private void OnGUI() + { + var yAxisOffset = 10; + switch (m_ConnectionState) + { + case ConnectionStates.None: + { + yAxisOffset = 80; + OnUpdateGUIDisconnected(); + break; + } + case ConnectionStates.Connected: + { + yAxisOffset = 40; + OnUpdateGUIConnected(); + break; + } + } + + GUILayout.BeginArea(new Rect(10, yAxisOffset, 600, 800)); + if (m_MessageLogs.Count > 0) + { + GUILayout.Label("-----------(Log)-----------"); + // Display any messages logged to screen + foreach (var messageLog in m_MessageLogs) + { + GUILayout.Label(messageLog.Message); + } + GUILayout.Label("---------------------------"); + } + GUILayout.EndArea(); + } + + /// + /// General update for client-side + /// + private void ClientSideUpdate() + { + + } + + private Vector3 m_CameraOriginalPosition; + private Quaternion m_CameraOriginalRotation; + private int m_CurrentFollowPlayerIndex = -1; + + private void ResetMainCamera() + { + m_CurrentFollowPlayerIndex = -1; + if (Camera.main != null && Camera.main.transform.parent != null) + { + Camera.main.transform.SetParent(null, false); + Camera.main.transform.position = m_CameraOriginalPosition; + Camera.main.transform.rotation = m_CameraOriginalRotation; + } + } + + /// + /// General update for server-side + /// + private void ServerSideUpdate() + { + if (Input.GetKeyDown(KeyCode.P) && ConnectedClientsIds.Count > 0) + { + // Capture the main camera's original position and rotation the first time the server-side + // follows a player. + if (m_CurrentFollowPlayerIndex == -1) + { + m_CameraOriginalPosition = Camera.main.transform.position; + m_CameraOriginalRotation = Camera.main.transform.rotation; + } + m_CurrentFollowPlayerIndex++; + m_CurrentFollowPlayerIndex %= ConnectedClientsIds.Count; + + var playerId = ConnectedClientsIds[m_CurrentFollowPlayerIndex]; + var playerObject = ConnectedClients[playerId]; + Camera.main.transform.SetParent(playerObject.PlayerObject.transform, false); + } + else if (Input.GetKeyDown(KeyCode.Backspace)) + { + Camera.main.transform.SetParent(null, false); + Camera.main.transform.position = m_CameraOriginalPosition; + Camera.main.transform.rotation = m_CameraOriginalRotation; + } + } + + private void Update() + { + if (IsListening) + { + if (IsServer) + { + ServerSideUpdate(); + } + else + { + ClientSideUpdate(); + } + } + + if (m_MessageLogs.Count == 0) + { + return; + } + + for (int i = m_MessageLogs.Count - 1; i >= 0; i--) + { + if (m_MessageLogs[i].ExpirationTime < Time.realtimeSinceStartup) + { + m_MessageLogs.RemoveAt(i); + } + } + } + + private void OnClientConnectionEvent(NetworkManager networkManager, ConnectionEventData eventData) + { + LogMessage($"[{Time.realtimeSinceStartup}] Connection event {eventData.EventType} for Client-{eventData.ClientId}."); + } + + private void OnClientConnected(ulong clientId) + { + LogMessage($"[{Time.realtimeSinceStartup}] Connected event invoked for Client-{clientId}."); + } + + private void OnClientDisconnect(ulong clientId) + { + LogMessage($"[{Time.realtimeSinceStartup}] Disconnected event invoked for Client-{clientId}."); + } + + private List m_MessageLogs = new List(); + + private class MessageLog + { + public string Message { get; private set; } + public float ExpirationTime { get; private set; } + + public MessageLog(string msg, float timeToLive) + { + Message = msg; + ExpirationTime = Time.realtimeSinceStartup + timeToLive; + } + } + + public void LogMessage(string msg, float timeToLive = 10.0f) + { + if (m_MessageLogs.Count > 0) + { + m_MessageLogs.Insert(0, new MessageLog(msg, timeToLive)); + } + else + { + m_MessageLogs.Add(new MessageLog(msg, timeToLive)); + } + + Debug.Log(msg); + } + + public NetworkManagerBootstrapper() + { + Instance = this; + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs.meta new file mode 100644 index 0000000000..29e94329b2 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7db19e0e150e50d4ab23c69a086b8b6e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs new file mode 100644 index 0000000000..6d7a9034a6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs @@ -0,0 +1,58 @@ +using Unity.Netcode; +using UnityEngine; + +/// +/// Handles spawning different prefab versions based on whether it is a server or client. +/// !!! CAUTION !!! +/// Both network prefabs **MUST** have the same components +/// and any server or client specific components that are not netcode related but are +/// dependencies of a component on only the server or client +/// needs to have code within the component to account for +/// any missing dependencies. +/// +public class NetworkPrefabOverrideHandler : NetworkBehaviour, INetworkPrefabInstanceHandler +{ + public GameObject ClientNetworkPrefab; + + public GameObject ServerNetworkPrefab; + + public override void OnNetworkSpawn() + { + // Register the server network prefab since server is handling spawning + if (NetworkManager && NetworkManager.PrefabHandler != null) + { + NetworkManager.PrefabHandler.AddHandler(ServerNetworkPrefab, this); + } + } + + public override void OnNetworkDespawn() + { + NetworkManager.PrefabHandler.RemoveHandler(ServerNetworkPrefab); + base.OnNetworkDespawn(); + } + + /// + /// Invoked on both server and clients when the prefab is spawned. + /// Server-side will spawn the server version. + /// Client-side will spawn the client version. + /// + /// the client identifier that will own this network prefab instance + /// optional to use the position passed in + /// optional to use the rotation passed in + /// + public NetworkObject Instantiate(ulong ownerClientId, Vector3 position, Quaternion rotation) + { + var gameObject = IsServer ? Instantiate(ServerNetworkPrefab) : Instantiate(ClientNetworkPrefab); + // You could integrate spawn locations here and on the server side apply the spawn position at + // this stage of the spawn process. + gameObject.transform.position = position; + gameObject.transform.rotation = rotation; + return gameObject.GetComponent(); + } + + public void Destroy(NetworkObject networkObject) + { + Destroy(networkObject.gameObject); + } +} + diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs.meta new file mode 100644 index 0000000000..df7dd96d8e --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 5c472ff64b067344893ed2e632d0f9f1 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs new file mode 100644 index 0000000000..7e525d6c33 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs @@ -0,0 +1,126 @@ +using System.Collections.Generic; +using Unity.Netcode.Components; +using UnityEngine; +using System.Linq; + + +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(PlayerBallMotion), true)] +[CanEditMultipleObjects] +public class PlayerBallMotionEditor : NetworkTransformEditor +{ + private SerializedProperty m_RotationAxis; + private SerializedProperty m_RotationSpeed; + + + public override void OnEnable() + { + m_RotationAxis = serializedObject.FindProperty(nameof(PlayerBallMotion.RotationAxis)); + m_RotationSpeed = serializedObject.FindProperty(nameof(PlayerBallMotion.RotationSpeed)); + base.OnEnable(); + } + + private void DrawPlayerBallMotionProperties() + { + EditorGUILayout.PropertyField(m_RotationAxis); + EditorGUILayout.PropertyField(m_RotationSpeed); + } + + public override void OnInspectorGUI() + { + var playerBallMotion = target as PlayerBallMotion; + void SetExpanded(bool expanded) { playerBallMotion.ExpandPlayerBallMotion = expanded; }; + DrawFoldOutGroup< PlayerBallMotion>(playerBallMotion.GetType(), DrawPlayerBallMotionProperties, playerBallMotion.ExpandPlayerBallMotion, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif + +public class PlayerBallMotion : NetworkTransform +{ +#if UNITY_EDITOR + public bool ExpandPlayerBallMotion; + public bool ExpandNetworkTransform; +#endif + public enum RotateAroundAxis + { + Up, + Right, + Forward + } + + public RotateAroundAxis RotationAxis; + public float RotationSpeed = 1.5f; + + private Vector3 m_AxisRotation = Vector3.zero; + private List m_Children; + + private bool m_ContinualMotion; + private float m_CurrentRotionMotion = 1.0f; + public void SetContinualMotion(bool continualMotion) + { + m_ContinualMotion = continualMotion; + foreach (var child in m_Children) + { + child.SetContinualMotion(continualMotion); + } + } + + protected override void Awake() + { + m_Children = GetComponentsInChildren().Where((c)=> c != this).ToList(); + base.Awake(); + } + + private void SetRotationAixs() + { + switch (RotationAxis) + { + case RotateAroundAxis.Up: + { + m_AxisRotation = transform.parent.up; + break; + } + case RotateAroundAxis.Right: + { + m_AxisRotation = transform.parent.right; + break; + } + case RotateAroundAxis.Forward: + { + m_AxisRotation = transform.parent.forward; + break; + } + } + } + + public void HasMotion(float direction) + { + if (direction == 0.0f) + { + if(!m_ContinualMotion) + { + return; + } + } + else + { + m_CurrentRotionMotion = RotationSpeed * direction; + } + + + transform.LookAt(transform.parent); + SetRotationAixs(); + transform.RotateAround(transform.parent.position, m_AxisRotation, m_CurrentRotionMotion); + foreach(var child in m_Children) + { + child.HasMotion(direction); + } + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs.meta new file mode 100644 index 0000000000..407e0adf7b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerBallMotion.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 792d7ce524eb358469373fe12babef88 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs new file mode 100644 index 0000000000..91eb4cdfd2 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs @@ -0,0 +1,47 @@ +using System; +using System.Collections.Generic; +using Unity.Netcode; +using UnityEngine; + + +public class PlayerColor : NetworkBehaviour +{ + private static Color[] s_Colors = { Color.red, Color.green, Color.blue, Color.cyan, Color.magenta, Color.yellow}; + public bool ApplyColorToChildren; + public Color Color { get; private set; } + public List IgnoreChildren; + + public override void OnNetworkSpawn() + { + MeshRenderer meshRenderer = GetComponent(); + ulong myId = GetComponent().OwnerClientId - (ulong)(NetworkManager.DistributedAuthorityMode && NetworkManager.CMBServiceConnection ? 1 : 0); + Color = s_Colors[myId % Convert.ToUInt64(s_Colors.Length)]; + if (meshRenderer) + { + meshRenderer.material.color = Color; + if (ApplyColorToChildren) + { + var meshRenderers = GetComponentsInChildren(); + foreach (var childMeshRenderer in meshRenderers) + { + if (IgnoreChildren != null && IgnoreChildren.Contains(childMeshRenderer.gameObject)) + { + continue; + } + childMeshRenderer.material.color = Color; + } + } + } + + if (IsLocalPlayer) + { + var gameObject = GameObject.Find("ServerHostClientDisplay"); + if (gameObject != null) + { + var serverHost = gameObject.GetComponent(); + serverHost?.SetColor(Color); + } + } + base.OnNetworkSpawn(); + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs.meta new file mode 100644 index 0000000000..90b6ca4628 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8e5128237997be649af0cc87dd0eb563 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs new file mode 100644 index 0000000000..eaa32a77d6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs @@ -0,0 +1,201 @@ +using System.Collections.Generic; +using Unity.Netcode; +using Unity.Netcode.Components; +using UnityEngine; +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(RotatingBodyLogic), true)] +[CanEditMultipleObjects] +public class RotatingBodyLogicEditor : NetworkTransformEditor +{ + private SerializedProperty m_RotationSpeed; + private SerializedProperty m_RotateDirection; + private SerializedProperty m_OnExitTransferParentOnStay; + private SerializedProperty m_PathMotion; + + + public override void OnEnable() + { + m_RotationSpeed = serializedObject.FindProperty(nameof(RotatingBodyLogic.RotationSpeed)); + m_RotateDirection = serializedObject.FindProperty(nameof(RotatingBodyLogic.RotateDirection)); + m_OnExitTransferParentOnStay = serializedObject.FindProperty(nameof(RotatingBodyLogic.OnExitTransferParentOnStay)); + m_PathMotion = serializedObject.FindProperty(nameof(RotatingBodyLogic.PathMovement)); + base.OnEnable(); + } + + private void DisplayRotatingBodyLogicProperties() + { + EditorGUILayout.PropertyField(m_RotationSpeed); + EditorGUILayout.PropertyField(m_RotateDirection); + EditorGUILayout.PropertyField(m_OnExitTransferParentOnStay); + EditorGUILayout.PropertyField(m_PathMotion); + } + + public override void OnInspectorGUI() + { + var rotatingBodyLogic = target as RotatingBodyLogic; + void SetExpanded(bool expanded) { rotatingBodyLogic.RotatingBodyLogicExpanded = expanded; }; + DrawFoldOutGroup(rotatingBodyLogic.GetType(), DisplayRotatingBodyLogicProperties, rotatingBodyLogic.RotatingBodyLogicExpanded, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif + +/// +/// Handles rotating the large in-scene placed platform/tunnels and parenting/deparenting players +/// +public class RotatingBodyLogic : NetworkTransform +{ +#if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool RotatingBodyLogicExpanded; +#endif + + public enum RotationDirections + { + Clockwise, + CounterClockwise + } + + [Range(0.0f, 2.0f)] + public float RotationSpeed = 1.0f; + public RotationDirections RotateDirection; + public RotatingBodyLogic OnExitTransferParentOnStay; + public List PathMovement; + + private TagHandle m_TagHandle; + private float m_RotationDirection; + + private int m_CurrentPathObject = -1; + private GameObject m_CurrentNavPoint; + + protected override void OnNetworkPreSpawn(ref NetworkManager networkManager) + { + m_TagHandle = TagHandle.GetExistingTag("Player"); + m_RotationDirection = RotateDirection == RotationDirections.Clockwise ? 1.0f : -1.0f; + SetNextPoint(); + base.OnNetworkPreSpawn(ref networkManager); + } + + private void SetNextPoint() + { + if (PathMovement == null || PathMovement.Count == 0) + { + return; + } + m_CurrentPathObject++; + m_CurrentPathObject %= PathMovement.Count; + m_CurrentNavPoint = PathMovement[m_CurrentPathObject]; + } + + + /// + /// When triggered, the player is parented under the rotating body. + /// + /// + /// This is only triggered on the owner side since we disable the CharacterController + /// on all non-owner instances. + /// + private void OnTriggerEnter(Collider other) + { + if (!IsSpawned || !other.CompareTag(m_TagHandle)) + { + return; + } + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null) + { + nonRigidPlayerMover.SetParent(NetworkObject); + } + } + + // This is used to handle NetworkObject to NetworkObject parenting detection + private List m_TriggerStayBodies = new List(); + + private void OnTriggerStay(Collider other) + { + if (!IsSpawned || !other.CompareTag(m_TagHandle)) + { + return; + } + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null) + { + if (!m_TriggerStayBodies.Contains(nonRigidPlayerMover)) + { + m_TriggerStayBodies.Add(nonRigidPlayerMover); + } + } + } + + internal bool HandleParentingForTriggerStayBodies(MoverScriptNoRigidbody moverScriptNoRigidbody) + { + if (m_TriggerStayBodies.Contains(moverScriptNoRigidbody)) + { + moverScriptNoRigidbody.SetParent(NetworkObject); + return true; + } + return false; + } + + /// + /// When triggered, the player is deparented from the rotating body. + /// + /// + /// This is only triggered on the owner side since we disable the CharacterController + /// on all non-owner instances. + /// + private void OnTriggerExit(Collider other) + { + if (!IsSpawned || !other.CompareTag(m_TagHandle)) + { + return; + } + + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null) + { + m_TriggerStayBodies.Remove(nonRigidPlayerMover); + if (OnExitTransferParentOnStay && OnExitTransferParentOnStay.HandleParentingForTriggerStayBodies(nonRigidPlayerMover)) + { + return; + } + // Otherwise, set parent back to root + nonRigidPlayerMover.SetParent(null); + } + } + + /// + /// We rotate the body during late update to avoid fighting between the host/owner (depending upon network topology) + /// motion and the body's motion/rotation. + /// + private void LateUpdate() + { + if (!IsSpawned || !CanCommitToTransform) + { + return; + } + + if (m_CurrentNavPoint != null) + { + if (Vector3.Distance(m_CurrentNavPoint.transform.position, transform.position) <= 0.05f) + { + SetNextPoint(); + } + + var direction = (m_CurrentNavPoint.transform.position - transform.position).normalized; + transform.position = Vector3.Lerp(transform.position, transform.position + direction * 10, Time.deltaTime); + } + + if (RotationSpeed > 0.0f) + { + transform.right = Vector3.Lerp(transform.right, transform.forward * m_RotationDirection, Time.deltaTime * RotationSpeed); + } + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs.meta new file mode 100644 index 0000000000..ce0ea09165 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/RotatingBodyLogic.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 374ac199eb18f0f468bc018a722775c2 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs new file mode 100644 index 0000000000..6dcca78cb7 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs @@ -0,0 +1,291 @@ + +using System; +using System.Collections; +using System.Collections.Generic; +using Unity.Netcode; +#if UNITY_EDITOR +using UnityEditor; +#endif +using UnityEngine; +using UnityEngine.SceneManagement; + + +/// +/// Example of how to control scene loading using a additive client +/// synchronization mode and server-side scene validation approach. +/// +/// +/// This component should be added to the same GameObject that the component +/// is attached to (for this example we extended to ). +/// +public class SceneBootstrapLoader : MonoBehaviour +{ +#if UNITY_EDITOR + [Tooltip("The main menu or out of session scene to load.")] + public SceneAsset MainMenuSceneAsset; + + /// + /// Converts SceneAssets to scene names + /// + private void OnValidate() + { + if (MainMenuSceneAsset != null) + { + m_MainMenuScene = MainMenuSceneAsset.name; + } + ServerSceneDefines.Validate(); + ClientSceneDefines.Validate(); + } +#endif + + [Tooltip("Defines how to handle scenes for the server instance.")] + public ServerSceneDefine ServerSceneDefines; + [Tooltip("Defines how to handle scenes for the client instance.")] + public SceneDefine ClientSceneDefines; + + private NetworkManagerBootstrapper m_NetworkManager; + private string m_SceneCurrentlyLoading; + private string m_SceneJustLoaded; + + [HideInInspector] + [SerializeField] + private string m_MainMenuScene; + + private void Awake() + { + m_NetworkManager = GetComponent(); + } + + /// + /// Should be invoked by bootstrap when first starting the applicaiton and should be loaded upon exiting + /// a session and shutting down the . + /// + public void LoadMainMenu() + { + if (!m_NetworkManager.IsListening) + { + SceneManager.LoadScene(m_MainMenuScene, LoadSceneMode.Single); + } + else + { + Debug.LogWarning($"Trying to load main scene {m_MainMenuScene} while {nameof(NetworkManagerBootstrapper)} is still running!"); + } + } + + /// + /// Invoked by the when + /// starting a client or server. + /// + /// + public void StartSession(bool startAsServer) + { + StartCoroutine(PreSceneLoading(startAsServer)); + } + + /// + /// Both clients and the server invoke this when they shutdown. + /// + private void OnNetworkManagerShutdown(bool wasHost) + { + LoadMainMenu(); + } + + #region SCENE PRE & POST START LOADING METHODS + private IEnumerator PreSceneLoading(bool isServer) + { + var sceneDefines = !isServer ? ClientSceneDefines : ServerSceneDefines; + SceneManager.sceneLoaded += SceneLoaded; + + // Unloads any currently loaded scenes and becomes the default active scene. + // The default active scene ** has to be shared ** because it is where GameObjects are + // instantiated (which includes where network prefabs are instantiated when spawned dynamically) + yield return HandleSceneLoading(sceneDefines.DefaultActiveScene, LoadSceneMode.Single); + + // Now load our local server or clien scenes additively + foreach (var sceneName in sceneDefines.LocalScenes) + { + yield return HandleSceneLoading(sceneName, LoadSceneMode.Additive); + } + SceneManager.sceneLoaded -= SceneLoaded; + + // Now start the NetworkManager (server or client) + if (isServer) + { + // Server needs to do some additional congiruations to ignore the local scene loaded and + // will load any additional shared and synchronized scenes via the NetworkSceneManager. + m_NetworkManager.OnServerStarted += OnServerStarted; + m_NetworkManager.OnServerStopped += OnNetworkManagerShutdown; + m_NetworkManager.StartServer(); + } + else + { + m_NetworkManager.OnClientStopped += OnNetworkManagerShutdown; + m_NetworkManager.StartClient(); + } + } + + /// + /// Handles scene loading via or depending upon + /// whether the is started or not. + /// + private IEnumerator HandleSceneLoading(string sceneName, LoadSceneMode loadSceneMode) + { + m_SceneJustLoaded = string.Empty; + m_SceneCurrentlyLoading = sceneName; + + // Server will be the only NetworkManager instance where this is true + if (m_NetworkManager.IsListening) + { + + var loadingStatus = m_NetworkManager.SceneManager.LoadScene(sceneName, loadSceneMode); + if (loadingStatus != SceneEventProgressStatus.Started) + { + Debug.LogError($"{nameof(NetworkSceneManager)} attempted to load scene {sceneName} but returned a status of {loadingStatus}!"); + yield break; + } + } + else // Client and Server will both use this to preload their local scenes + { + SceneManager.LoadScene(m_SceneCurrentlyLoading, loadSceneMode); + } + while (m_SceneJustLoaded != m_SceneCurrentlyLoading) + { + yield return null; + } + } + + private void SceneLoaded(Scene scene, LoadSceneMode loadSceneMode) + { + m_SceneJustLoaded = scene.name; + } + #endregion + + #region SERVER POST START CONFIGURATION AND ADDITIONAL SHARED SCENE LOADING + /// + /// Starts the as a server. + /// + private void OnServerStarted() + { + m_NetworkManager.OnServerStarted -= OnServerStarted; + // When we set the client synchronization mode to additive, the server will include this setting + // when synchronizing a client and the client will use any already loaded scenes that the server + // wants to synchronize. If a scene that is being synchronized is not yet loaded, then the client + // will load that scene. + m_NetworkManager.SceneManager.SetClientSynchronizationMode(LoadSceneMode.Additive); + + // Add a callback to control which scene the server synchronizes with clients + m_NetworkManager.SceneManager.VerifySceneBeforeLoading = ServerVerifySceneShouldBeSynchronized; + + // If we have any additional shared scenes we want to load, then load them via NetworkSceneManager + if (ServerSceneDefines.SharedScenes.Count > 0) + { + StartCoroutine(ServerLoadAdditionalSharedScenes()); + } + } + + /// + /// When a client is first synchronized, the server will determine what scenes it should synchronize with the + /// client. This callback is invoked for every scene currently loaded and if it returns false then it will not + /// attempt to synchronize the scene with the client being synchronized. + /// + private bool ServerVerifySceneShouldBeSynchronized(int sceneIndex, string sceneName, LoadSceneMode loadSceneMode) + { + return !ServerSceneDefines.LocalScenes.Contains(sceneName); + } + + + private IEnumerator ServerLoadAdditionalSharedScenes() + { + m_NetworkManager.SceneManager.OnLoadEventCompleted += Server_OnLoadEventCompleted; + + foreach (var sharedScene in ServerSceneDefines.SharedScenes) + { + yield return HandleSceneLoading(sharedScene, LoadSceneMode.Additive); + } + } + + private void Server_OnLoadEventCompleted(string sceneName, LoadSceneMode loadSceneMode, List clientsCompleted, List clientsTimedOut) + { + m_SceneJustLoaded = sceneName; + } + #endregion +} + +/// +/// The server scene defines included in (i.e. ) and this provides +/// you with the ability to have additional additively loaded scenes that the server will +/// synchronize with clients. +/// +[Serializable] +public class ServerSceneDefine : SceneDefine +{ + [HideInInspector] + public List SharedScenes; + +#if UNITY_EDITOR + [Tooltip("These scenes will be loaded additively upon starting a session and will be synchronized.")] + public List SharedSceneAssets; + protected override void OnValidate() + { + SharedScenes = new List(); + foreach (var sharedSceneAsset in SharedSceneAssets) + { + if (sharedSceneAsset != null) + { + SharedScenes.Add(sharedSceneAsset.name); + } + } + base.OnValidate(); + } +#endif +} + +/// +/// The base client and server scenes loaded prior to starting: +/// : Must be synchonized/shared and is the default active scene. +/// : Any client or server specific scenes you don't want synchronized, but +/// want either the clients or server to load prior to starting a session. +/// +[Serializable] +public class SceneDefine +{ + [HideInInspector] + public string DefaultActiveScene; + [HideInInspector] + public List LocalScenes; + +#if UNITY_EDITOR + [Tooltip("This scene is synchronized and the default active scene loaded as LoadSceneMode.Single")] + public SceneAsset DefaultActiveSceneAsset; + [Tooltip("These scenes will be loaded additively and will not be synchronized.")] + public List LocalSceneAssets; + + /// + /// Invoked by . + /// + /// + /// This is not the same as the Unity MonoBehaviour's OnValidate + /// + protected virtual void OnValidate() + { + DefaultActiveScene = string.Empty; + if (DefaultActiveSceneAsset) + { + DefaultActiveScene = DefaultActiveSceneAsset.name; + } + LocalScenes = new List(); + foreach (var localSceneAsset in LocalSceneAssets) + { + if (localSceneAsset != null) + { + LocalScenes.Add(localSceneAsset.name); + } + } + } + + public void Validate() + { + OnValidate(); + } +#endif +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs.meta new file mode 100644 index 0000000000..adfb1bb99a --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: c4251d3d650053a419a5c503babb13a6 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs new file mode 100644 index 0000000000..e2ff41dfa6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs @@ -0,0 +1,79 @@ +using Unity.Netcode; +using UnityEngine; +using UnityEngine.UI; + +public class ServerHostClientText : NetworkBehaviour +{ + private Text m_DisplayText; + + private Color m_Color; + private Color m_ColorAlpha; + private Vector3 m_LocalPosition; + + public void SetColor(Color color) + { + m_Color = color; + m_ColorAlpha = color; + m_ColorAlpha.a = 0.35f; + } + + private void Awake() + { + m_LocalPosition = transform.localPosition; + m_DisplayText = GetComponent(); + } + + private void Start() + { + if (m_DisplayText != null) + { + m_DisplayText.text = string.Empty; + SetColor(m_DisplayText.color); + } + } + + public override void OnNetworkSpawn() + { + if (m_DisplayText != null) + { + if (NetworkManager.IsServer) + { + m_DisplayText.text = NetworkManager.IsHost ? "Host" : "Server"; + } + else if (NetworkManager.IsClient) + { + m_DisplayText.text = $"Client-{NetworkManager.LocalClientId}"; + } + } + transform.localPosition = m_LocalPosition; + } + + public override void OnNetworkDespawn() + { + if (m_DisplayText != null) + { + m_DisplayText.text = string.Empty; + } + base.OnNetworkDespawn(); + } + + private bool m_LastFocusedValue; + private void OnGUI() + { + if (!IsSpawned || m_LastFocusedValue == Application.isFocused) + { + return; + } + + m_LastFocusedValue = Application.isFocused; + + if (m_LastFocusedValue) + { + m_DisplayText.color = m_Color; + } + else + { + m_DisplayText.color = m_ColorAlpha; + } + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs.meta new file mode 100644 index 0000000000..081f5a96a8 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6637cd674efb56a48a3d4d545d23a8d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs new file mode 100644 index 0000000000..ebc84d8d98 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs @@ -0,0 +1,27 @@ +using Unity.Netcode; +using UnityEngine; +using UnityEngine.UI; + +public class ServerInfoDisplay : MonoBehaviour +{ + public Text ServerTime; + public Text PlayerCount; + + private void OnGUI() + { + if (!NetworkManager.Singleton || !NetworkManager.Singleton.IsListening) + { + return; + } + + if (ServerTime) + { + ServerTime.text = $"NetworkTick: {NetworkManager.Singleton.ServerTime.Tick}"; + } + + if (PlayerCount) + { + PlayerCount.text = $"Player Count: {NetworkManager.Singleton.ConnectedClients.Count}"; + } + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs.meta new file mode 100644 index 0000000000..8fcedfa9ff --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerInfoDisplay.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: d370147e4c421014cb5dd4eee3b6a373 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs new file mode 100644 index 0000000000..ade22f3ed6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs @@ -0,0 +1,63 @@ +using UnityEngine; + +/// +/// This helper class is used to push a player away from a rotating body. +/// s without a don't +/// handle collision with rotating bodies. This simulates a "collision". +/// +public class TriggerPush : MonoBehaviour +{ + public enum RightOrLeft + { + Right, + Left + } + + [Tooltip("Determines if this trigger will push the player to the left or right of the root transform")] + public RightOrLeft PushDirection; + + private TagHandle m_TagHandle; + + private void Awake() + { + m_TagHandle = TagHandle.GetExistingTag("Player"); + } + + private void PushObject(Collider other, bool isInside = false) + { + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null && nonRigidPlayerMover.CanCommitToTransform) + { + // We determine the direction to push and if within a trigger we push a little more to prevent from + // completely clipping through the object. + var direction = (PushDirection == RightOrLeft.Right ? 1.0f : -1.0f) * (isInside ? 1.75f : 1.0f); + nonRigidPlayerMover.PushAwayFrom(transform.parent.right * direction); + } + } + + /// + /// Pushes the player away from the object + /// + private void OnTriggerEnter(Collider other) + { + if (!other.CompareTag(m_TagHandle)) + { + return; + } + PushObject(other); + } + + /// + /// When the trigger is in a "stay" state, we need to signal that + /// the amount to "push away" should be increased. + /// + /// + private void OnTriggerStay(Collider other) + { + if (!other.CompareTag(m_TagHandle)) + { + return; + } + PushObject(other, true); + } +} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs.meta new file mode 100644 index 0000000000..7c07b1ebfc --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/TriggerPush.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 2c40721ca0fd31645a742e5ad0e0cdc5 \ No newline at end of file diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures.meta b/Examples/OverridingScenesAndPrefabs/Assets/Textures.meta new file mode 100644 index 0000000000..84caff0700 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Textures.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 22c34a08d52a0644fae5e90dbcc0ba52 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png b/Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png new file mode 100644 index 0000000000000000000000000000000000000000..e2f648aacc6ce68697cb397decbeb4207aecbd0a GIT binary patch literal 3152344 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 literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png.meta b/Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png.meta new file mode 100644 index 0000000000..305bd2392c --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Textures/GridPattern.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: a092c5fa8c60ed04aa1d72555f1740bc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Windows Store Apps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png new file mode 100644 index 0000000000000000000000000000000000000000..3f311d2225e026025a38ecae433481f37b4ba2e1 GIT binary patch literal 8210 zcmeHLeM}qY8GoUqkaQ@Cx~=IF!OiK`P0jf}{C&fiuY|CLj|HTBjE0==&ftN4j%~o0 z#*lVux=n>mU6rk4Gt;DwuA;O-30)YqyJ%$-S;#~O%VXQaUdZU{!G^W{(bnf(X{uF z1%O8$75-zuD^1$~h|kj(9kd?I-A6IJK}@r}mJ{0yCP)oHipFN5nR3pGXt`3oQ7xM2 zbcql>s}>!Q<>I-fOs-77*KXzt?RiCvy_`|8B26liVxu4f181cXo1wyJp=@eVh%W{2 zg=I{Hgh;IAYEil%5ILAzfMoJ!4v~v-l)-U1qELwmxl|#O>_SMKBru%B2pLKcl#HYZ z2@?4eL1|`INA1tr6Ojd<)S@!0)kI-fb#=A4S|aAnr5K@7sRSM*i9!n0Qe(8zHq>a@ zxyT`lvoL18$*Sj#h`^E7@|9M#2x=OJU@%458Z8ksL4#p7+Jq5eT!0iJWSJkK-1>tMrGVq7lR=x!eZTB1z|)Ca$9Ok zQH_bi_H!1#(#&wXtDu@Y1vDlq)6CIU-dx1<6^o84SX3DyNil(Z?SS6M^3|5FFWbOn z(N<0^61;}uB#KLma3v)rDN^F_L+vEX*K;y63(UMuUjbiO_Gf1xIlD9E zgi0<)A;yrpxw%x1(PE{I440Fo7D3~P^?H_)Nk|bEa;}0_Eaa$@$ygR=RH%Z(wWvfTm7}zlCQ&7WOKGWuRNzWZ2>T_;i(Jwn zJ`41?C6ZPdbZO+SLZ7DfHzhW(BsI@)o-4&Z;vsE9Z1NC8}c-Qk2w6q5n7*=7^l&NRq)h z9SLJNtkX)>39^WgQ&K4#K^ln*GSd3)YX@uKoi-Ql*CdnD0oy@QW`iJHU0ND23oUHUBThsVI z-gB`d?WAtl2oBR>uNU(gDpHcF?B-3B&g^gn5FFZNAt6 zgYXCI(y8yao_RGJfDcn(4!crQoW1XU8z}oeHme#uK}Y`PSodpl4+|;x&iwS8EoINO zqnF03+Wor*vCg51lWjq~+jYU$W9<0(5G1-!^7L-PAYzt_p6k#!02b%j zkm~azGtXT7%R}zh#HV_W?U?Y_+P8o_ueW=++e47?h5d(5_5AT_eCrv<#N?t`(>#^eRa?di6Gi3xs?pKUr`7h5zO*RZ|##CYQm+uWn2&UwY> z3Vil1UHqHDbZ7EAFk#ky55F57qa`yIocpNc^1#5r&4hjC&=AvpJlyn85NAt#6Rw54 zM)wn;3Yj|i7{ni*hwh`1W_5E^mbZ>jGrRW7qo+ zM}VC=eij2uI75%?1?rMNXWsJ9d;jUIn}2-A1^}i@rnWam(>#i}2Z$sLZQ7;^biQ0)3 z%W%uuJB;0fe>}CDGuJhN7GxZ5%%w|U_1x@^={02&eV&e`HlDp zue5uHG>6*TG!Acfhh}u@{DM#m@_UCZ#w3sjlfJ=Ya}D)92TZ?h)1+#W8h@<%>FNG+ z#bRG-S*y49q;sxp&?$R6=u!ULA0TGWXachyT}j>Cw7|{Y<*2J0bo3361s-jto-}>% z;iihZ;%7D-(FAU~==#$Gqq1+*k8hrxn}lU&eMD5GVu0bT;L=wXke(Y@d+>CxkVrz| zc<=A2tZJTvlfvcoGaQ8vOApSMkm{}@zsWv&K`0tWpZAnpyN(5#;1KAycfAUi1vf8S zhH-trpBcmc{p_Uie<@HaP8!Ke#Uk`E!o6+qytK{o$s04tmu^0+>38F{+on@7~pksxPxUe+5KN1y#KM4*e` literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png.meta b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png.meta new file mode 100644 index 0000000000..3a05497054 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_BaseMap.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: e71f43865e91e6b418bd0d67be2445dc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png new file mode 100644 index 0000000000000000000000000000000000000000..df81ac1268d54bf0f6eb188573559529a04414c9 GIT binary patch literal 8225 zcmeGgdr%YU{X?;!Ry}Jw$DE$5VcOo+ZuUXmC5Z?WnK43<7O~X0>~0_jWJ40x|3|r|5XXAp*{&o{z{xMj%2+(r@!3SoOU7OR$;A zx8HvI`+o1&_x&+zQ~HucZ!7`;EXmlAnhiiSoJND#dGPVj`mfL7W1(?Fo*96}EBJpD z*nc1nfS67CoGq3unvDvYD-}`J3VP^Gt^T(KAXx zu2_R>j45o9enYj1-CVsXhpsNB<%~eBLXs*K5J4$xp^(bb5`$S$sTBC}D&U-7#sr8T z#8RvjB=ZE3Et)JOg)^~;M2Mp_j!O`!Tu4Yn5|Qku2#J#fh7%Y;qJ&r>CKaR{3H}6- znu*aVvQvK^qy^uUf+CB>sKBs_iV9&xqL4EcVuV~S$8ZuONfbh$<|>1QszeRugb;>Q z)=Zo9MvI;^AUsB@fGf8s1(4H#2&Kj_T7x;LCa5s1k}_h15a&hm12S|N&RA|L@e^lg zj4feHS%bw4VTmxTv52#9<|6JHsKcLU5P+)HXu>p}%1dc!n1tDqwgZY0RLE1I%{f&@ z7RzSMT)By6({?~M6L@KiiWCz|SvXS;$CZQ(l@($cAxR;Dyp^jrFkFTC?T8I*DrI4n z0^VvUPNKLd2bU>C&}!nfIHADt0H}sz^t!5TI1?lcxl4>(&qzthGI2V63H)HrPG65?q@_p*xkQ3O z8U5^PG>Qy^*+Lm;HX~IjfXWf-^^77>L^3itl#@<`l8PCT45cKL4AmvlGWe4+GMo)VoJ?k>^9t-KqZ_7h9Od%x=0^UF*GmmR79!Tc$gs4@E&Z~kRt zt;KhG$Qc8`m50suq5x=k6blP->~c7~CV&I-pF6(#N>y`HC;iU%Tk>tWHQmQN$NGnN ztm?FBJ6d9>-`TY~H{0vD&hgNxa9H;TI5fNlk%2XQQ?Q;A57XXkwCyjd0a8#^>F?MI7tYgS(g>ky`AHdjRv)Syj_KuF$n5bJh_4A?T)~J1B z6C;(oKRbWWG4_r#@1%CenSrHRH`Qp}H@x>Zw%iUr_GeqnKHDV@{kmAw1i*pL>u}@+ z%R1%yV09FbH64zhWr^t(7cywQp8YedchKNeLdQ3*&Q;Hz67y_J2868mB)=scdhR7v zwXtEOwdv91wST!Y-$Uz7r)$VJTC2MA6^w7KR@+%tYqe%B zn|JQRdavV=eI#z*&bNz?c6Vpi#DCm#qb5^%W4v&Q!6$2kb$fUHaCf`+bYE}0+6&RO zlAfN|AOE`c-QI4MCo}HggR$yMOSijs4ytSCTHKtgiUyWX zJC1dDCt>CPk=)Ck)Q%6fgG2o_nN8>7`Z4#NW@}6O_CNbO9Ov+2XupWYXqFeqSELKz zEmmH9G}zvB4fekdrn?>gYpBtkJNBG{9esy-%HtY>-2ebSF4O|JF1TDS`^ewkcyD~>s9YsDfP94wpl=<8F`{RSx5@2spHU`Jp+}cOv-Dy_{cDi#> zNWVwl7w+vEjoqEc_d(FAUHKl?c^m`xx7m8(avw}_k;`+%z5&sDw$60i&xg;prUP)< zejkpr^n4oO#1Zy|{@jUt-gix|9WuT2cya&@!iktX|AFc3DHut7dc-e|ujv}Wj(d)|#^EXR<-g{5VIE(l`;e~N zq;ekZ&l-uVd}OY*&;4L=LtC!{9 zD-J4tY`l4EQHeFbcEL8adsIy|9D^$VS;O!$c*vPE(G?)?UBwOW$hW0{5k__NZc;%iu?l Nk+v!IqxIW=`(MOlo)iE8 literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png.meta b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png.meta new file mode 100644 index 0000000000..bcfe13d8d7 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Emissive.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: 8bf2cf149563066489e749ea032dbca7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png new file mode 100644 index 0000000000000000000000000000000000000000..1d060fba6157919ffa347e9d580c5303191c7f67 GIT binary patch literal 21103 zcmeIa3s{orx<5>ZX-<`E)-*X;X*FtD9wrSJndd1_38E#Up&~Zz(KTab zp=pA`lm|pb%VUbl%(&9XP!og{l}g0`MN^Rkf$v3|wP)?U*P5Aqef#>p{lETQm-vS7 z`@9d__j}*>@BaOs=erYLM>l+6@&O10+5kKD7jF<~EpWIN^xit)7jgT(DC|4vi{Ee(OP@9A83b^AQ>j9Vh;pV~*3GuQwwkCFIhF3-l11S?FdY6<+A#L+37r;d0r@ZBIl|`FhgW)VXYS za&1(@X|r}J#46)RWUXqa`K9M;z`Vk1GuG%JV6;cCzq`#dJSizX}RDKD9Bhz6l)D zv)PYsDUBmLca?kfM`+zmUB<9x`*8d~1QU|$MmXNw=E;UGiWP{}n?-(5 zANs=lXS9?3(u-_bLu6(Okvi7mx!9v`((M+l2CQS&s9S20$WVFj1r-WYk{vB4un_1z z=MZ?pUo8u&jh#KYjaG|};K-A-GUOYfKsq4=`$}i`a(uSUJw<%Mj9cHS3&cr#AZA!x zy=G&Yyr*;N#YAjPN@^j37E5xV1(j^jD*aB+6eDWHzP*pYE{YI!yw40ukr95#{rm(zFefnu#hNimu)8;pgyB4K6L&KNt6}qWDmj`Cw zCZLrHSI@$}n47sSxi!_j<@CF>Z?@dZYCT=cE@Ip1zq}RDvF9MD7sdz>I`m6CG1!E2ZdbVAu zPg(u>^p$VaJDk$kx)%Rw$mJS@uL{b5`6H)$Y81MF!oFu~@7Zy^6NV3fImIhqQl}WH zH!@oV0zvM!6A3f7+WPmmNhb*n)EhVlO64ALy;85UNK-=t^8Q`QeyTKEac{-~OJc6BBEB%ucy zg}U2ldUnHPuzvV6n8(SrWk~HNhrI`Skt#x6wGXlc(}m;Kh@6B`-9tT`$8Ej0$vKl- zqv77N)E}$7R%ey1Yc>arq6wI6ng9ExiO}5n^pDBHyyAVZS(lPyr=xh<@$#n;+wdFA zLrFiS|KO!WJ}K)xBSz3{RjRZvG9g_Gd-pivz|Y4HqjmFJeL7C%&@;DN<}>C%dJ0I#5b_5J>*NAU3S6~EK0 z|H?CVEDy9CN7CLNHW+^Y>Yd-bJT0`3o?HCvJy2R!5CaVJR%Mx6J>2o0zWieb#y*Ua z6BdLVVxh;1Q=n!3P|~U* zr9KY57bvu5X|K9)^EJ+X1IB}LjYYQaNfd}5H=+CGuIP?CqsBZ0dxDN7q zc<{S@2)w!4yz4k@R&6;4srqI?t!w-CI;*+=L{u9qcO`s0P$O8wIF+lUH_UV0R_wol z?;ZLvX(|e-y7x6&G;N{H5x6bRy}Rms?esK)*%zM3SnaPIxMJcK7`zqp;WbBLoRhCn zVr~70tB>N-l!Ls4Ldc%(rl(*T-8CKb^@wo%uBFHvE&8&^tzOqP`axYuHLG)1h=O*< zO{MB@_P|YoPuRP*^qBb1K0mZKJ)-Lrbo}Ns%Yn&tJUaxhJO!QqYU_P(p?`)n1r&#Zx7>M61A3(@yl(56$H zn*GP3lXK&cSe>@uVZV=ewzn#>4q8Gk*4d%=l(hadey@A+CmQZrb^U9%!YU`cDvVO| zs^(0HWB{L+`7kFic#!uQ9??&k3VL^M299bw=s&^DQ6U@`@8pijFc4=uytgAq(>TRc z-k)T+Xm`k4T5iW_Q*Nm!*{(3|!OFPT5ni@p5ij(W)(I&~J#Le6(Fdq}Z3NO(=J>s8 zdg~TtC~=xn0zHptO-dy%hUKR^K;Dew;EmMUOHSc$l&qXY3ITM2^6Yug{fJ7Iew)Xj zO*-jn6XKin1mS>=nt=1_2&;Xz#9L4YsVS8EZ2Y0IsRmAVTBi>^E0mdu@4n#@Om7(} zZaY(K9uz?PS|)KG&n9taCH+(58tV>aMQZJ(lc~1@s(C_Ka2ap3jK>etRQ5!STp#7$ zhG28)B5O9D(jq$0C}{KYvmEuYsqXB1MTOM3OeNsRxW^UymF{#}Id7f3PEedn=Fjde zN%cdeAGq|+0~*~rX5#AbJi{(}2sH`j8hRej>B+s>QA96HL zhO6V8g?aK>X;)LAxqLxZ7cdpWsDzdB^ROOQ@!|d_rNu76*3VSAaFAnDqhu^Wj1SeJnf=7&1b-6KgvglpY;N zp-tG&37w*_UlG<%YmYj6=Djsd! zGX04PX;ASO;vd_7WNVkskGJB$184yh1f8#k#j#Kr_LUUikA5 zfZs>RM1?w*Bka6uEZsvy#CF0*ti;^l0)Z=2JkE28bm7ZN zpZWtn3%KML$+E?iY-h^6HljQ91bXplLbSj3UM7_q_w8nK!TAHzb?GhL_*YU@KMHZ@~lXjuFXZ5JNt*PSO$>z z>l0gjvfQdnEr8{+TfH)e(@C-yERg!t`yh-c zCVM}D6n5(z=m+kIf0xz?Rnb?(ygbwoS{b{pANjGd6<~qqdzP!2!v<^opXL_-lL$WH zAG{)-*o3Ov0)TSP?XY`0-+slt-YiWUZKM&v<~=p6<2Q#w8b1GXFBv*j5?Y@9<7d^E zHOZA<6w2tgPu{sq9ef{jJ~$*X%e`#~dL-Fn<45xU4B6&*}YB=Y8xH23()^*^Xrw`6Ey4;pHoS zvs(Ud#hU*%vNN&m`$r^~>n#u3$7C?R8%YAtQ?fP@fPC&By#=<15yPsdZKvV48f=8% zt{8D3-5Cqry-)LHD9XDg_8u6<(5zy)yzhF~%*p0oZQpAgD;b+@b#qG}Av%;OI{9&*`YMsQ!E=QQq5nor(jes|bV1eT zr@pelub80cBXXrqqgO(Lh4FId%tT~*2-_3iIPfm0{<{q$pP)OMH9dEVhtKWd+}4<% zKc84QH67(U5q8`$lMBUEi%Zx|TQro$BO@^s*Y__4;?xHP&9^7kGe&Wb<#1W1yGLKW z^8L~nDiUHfU>zGg9NgA(E|4vA$}}F&Xi~Zm3dg>6al7sUhd1=7qa{-ZN3Kd8BJs`K zSxO^^1;?VNH?!TqyI*4KclyMh@&q)j(-?&kGGlF<>^;-m<)sh+|iL z(=_YWR72juIUp1@9Tafo~}1sz$+ID){SnHg?O zjobFVmsCjA2>aNuFe-2VTvzx!V9gPKmJd86K^yN8oB*qdiOn^&pV%c1e`MLXh_`hh z60#j5`JFQ(#GKlA{Dtm3$DYNFZn#Gn5`>^V=aEWy4}{uWVUzaZGCzQfSk7L^YYnWrD*S zNBAze-Zf>oS0+P1i{q>SKiAOnhI?>?TE#ZCk9@F2|6<-(Y>9AUDx_yT@WYb;+#Z4A zupL1sl&HS~#k#1H*F>p>!#%bb*KZ6On2riXZ)aKMiF>w4q-<(s1H0`(imG1<6OLU~ ze>$Sc!sS8==1QJo+m0Z%6O%Ql=|$B^YB!tBrI7wj#3VEO(`Ru5o# zO-5i4^vOTJm_2t4o<|z0Q#REv#(NOhoH*8{lfJaJp}^P-Z)n%ur!K>}WG(;$;NE=c zNq&?^Ux=4q8{TPs*G>^Xx&!CPs~x-B`fq;zV)lBW@^=c%F8D#&6|vq{DjU$XL{FXoOA7sbQ=o<#(9o48o7Q@bYy zge*ithll~gYSd#~Rdyq%f0}jN89|!QV81{#|D^vpMzAjS-9;>#U@ecnz$~f8lcwij zrN_rzr)4=^Q8$5!5eSpGL79IZv~9aJtj3DVd<_G_k_$b-7=K9bRanjgS_=HYG5bhd z;qGzk>Fhuu&Xy>)!1oRLciBTnc!SS@uvIio2PoJ`>BA^4PaOndVoQ%OV@#O+fY18U z&FbjX9;f_Tm^fDAx~@LgjL>lRK%2nzOof}aallX{qZWMkA{XQ~KwK9z59Dl%@q(Z) zU32m)wgmE^C|oW(Rp`i~W!TxF7VFvDr$aPYpxAaCMD$BvclS9tad7D=WD;FUu6ldJ z2D&9I&ngJWMQK^oKa#Wz>8`_Q{-krCoquo)U|=!cBpj1bV)>zF zHNcLM%^8}bq@0(aOqX|_)2B2RO@}6?8!4pqj_K;G)I-D zKPlffO*OUkzGdzNW|TMvRLJK4+EdaoRu`RZn_qj3hFJ@$W7@%dNn<#Vi%Oa!hLl4l zH&ZH&PgWdtx<8^l;7AN(2HWBWF96lH>)lYIji%Jax88$N${K+R%n98aRv%E*PTC^P zRe3gFiQ)>@ptocXN`6dg2sjVJE6;naUhI;Y{`B2K7D9J|juA*h<@BrD!pRL^J zX;ZC&)*I$@sZgw)Z#I_>dBA@u(egvLt@R*zXRv4i>p`c%IG>QQU7WpBRkw@+=^NM! zS!b`6UG5Yh%-Z)qzNo+Q4oG=`6Q#9}1Uuu`YeNc63u}Xz5&6crW9sP1_c5YMPe*As zxzZ!AO5M5d{QVP&M}^*9+6=U_t+LZ;Uwzx@cADXdRw7NG-e+&?uJXL-3&u2P_cN?G zEfvBx@vHJ*s2m_^9HzuYU#l2lOPFnHpwj@~%+R<@^-ZlwPy#X0Ka_A`SD8ycBQ})s{JsC>@bU2SQ!0)Cjj%*s96E!X7Hu)Iz0@C&KBVV>WPn8R7c-$apjux&nCw@ z{`O0=0Q;W+Lgv$k-rI^VvTb0fbk<0Dr>XA-*RlGeD`4_Yo49FBnna0Hof+%WI@C?* z)>Kq^Z%^Kkv))Ly>hJ8{f23rLR`(h3fzPnMASZ{sDf04BpI@=T``nZ>K_CDcrZr$1 zIkzFOn!j^0TkHQ1=41?Ru?jSEe_y>NOs2bOUh?VMRS-#A2#JN&rLwFzUx%LeW&fkk zME^@J@cS+O`@d&j9lu?Wi|Mn#ZkEa&SAzx{V6wA+zFmv1Tn#cYtwO4lvIig3CH(n< zm<&*X_2Z{Y3_T`dvRG_s1(rGp$n(y;lTkx5#RL6dMDP5m)?`zae*af3Nd@2=_Llu< z1f@CSod6~BU@mYs*`-2gC68nq*XrCZAs13nd_m6yF+ z7wWcy;$h86`r6bF%=A}fpW^td4!e2Uk98IB=fly6^FtBhqK%EK9#@|C^C|kV=={ke za}yu~W%s7Bu@93#^T|&nu&15&-uk^kGOx#POKEY4+L#587Vffjs#A9C7z5&{3hvjQTpU!2kgvsmnO?52df) z2_1JVhk!qpc)$J-xajcmg})6s6M^881D&Jzdz1LAqj0N-*Ix_m{z(^tLz`x%@WD6U z?c|zsw>wSC>RbcEyemdq0Pt;)Be@kRH0OzgreoAeT_~>p(ZGWBc&X$iH|ODaIEpm; z^|3T|gNqjc@*dv{EDi{nkowUwU3TY9V>WL11QmzhKR#T8h>4kdD7z_jxKp6B{;mK-RH7T200Y!=huKH2?c2(oz zWTUv4?N2Yg9>lzopGJF}GbYOPiP_APk6*fF=hfkAR!x%EbMG+n)!c!-!*PcqTAr}C zcDRaLkaR!=p$Q$oUCbGk-0>o6x?I|tTD!&OepLSJ#aKOl56Wld=0$}k4S(H8D=h9= zyi&dD;IuuL&@m>Tl2|Lptm_pqt>s2Bo!_ua+vKxj+3sE}EBWgKzI0#xgC+>ft2=rl zcMmLm_Yp76eq7+VButw{xp=~Gb0errUR~l@Zi1}k2UGE857S!%NA{A_Y+_JqBJ_Y1?p$Pn@52I*{Zu)YPWY?m{Up* z>e}N5DtMn&TyD3*MZFQoUWeTh!MAs2r?{CrH??X}Zw3x-sxJpBfzOL(pLUluQd~Bc zqzu!DiTW;itmnwm#q3!MiM_}*UK~rgnNyq-_F@(az4`F-@i|o}HMWX9RGGRkD-;qR z!SK|Oz&F0uQAe#fb6r;K!Iteh8jm(Xi`Ct5*MH~YR%7yP>&AD7ya5;$(zZBp*12Fj z5!SY~^F=IiZhAH|(;X`xe;{90AQ1;bi7}n?k$JpfJE1SK3R~C$uSyk%KgN@a#ai~D zTPpeP6q-7wajif~;&KyllrBc5#wV)c1ll$(pFUve%w;r^-n6%^3;JmGoE6un_+ zJKF4vLP*Q~Sd|a7{Pc>yg;Gyu|4nOXi(go~96WX`KjFVKj{J5YSPo%_m&g3o;cs5| z-;@*l--_n{Ry6-HtLbZ7HGVOl9hzRZbm-bwnLDhmMOb?69ZxyLJQY&)lWKoOp#N#? z$A0*V4|_c-s$IiblUw9Qu(S>FwAfW?W9Hp^i=JGbakbs#oMU`6maTm`U%hoxK{lk` z+XL6?tPX$ZRpj(|*tTspep9 zl3hp-m;gJhl72~(@c`P@%yE_SUiaP7$P$H_zJT<^+4Y0LGcW{(D&x&DrB+iXmC{B3 z>m2t1iy-^Rn-CU2>?K#%Fc_I+e^PX|HM-`Mu}Ll58-%>u({`?jt!5m&ZYJ1}!W%-X@TRJlHYstgdmR z_C=e%cM_b2|K4ryQXH0e9OYp@9hoYQh5HOP445ZwnZCg`d1Sm zS3W5d_@uu`KpQ=mC7|DL0AacX{-(sD23t3g>7ye?X)E(>h(NuxG_XPi?<~ih-%M)1 zCSv|rGW-MP-T^vc82b-7M>mWuO5oIJzs>bWlKAFxFVHY=kEpmph6dL?U{^O@-w@2p zgva?ASfPu*utKOL%L)EH_-0s4_K?LEkD9=S`tIe>){OTmCFA!;^56rdj*S8&g8|WA zoj#dyS1_u&);2BY^*B`IW+aV-v)_rvQFBR^6U{_%NS&sw8UaNZt;dD*h$iKStfx-0 z=dt2o^;|bUo>SniW~qW^DO$6t7~`g)pwehmRVummK`R{PEqn3(g78!}Utb3>M4|`V zgwD{#WrnC)8sEt6oM7d+=RH(gh6Lf7f{$~!*T__kvyT%ibto)h@M7# zh-aK;r(LxNH4if@J(7%eyG54qdTP2Ua;rpf)ohf;x(Dg7u_91^aJLhUKff(PAK~E^ zjqJL}8kD(Cv7V?Jo0|7FJuY}5am2z(n`AufD_*;Q*ZnHvRySE*szT&R6yzsqrrafw zUGt*X9J7&r18J0nOgDp+rVN>`P82gd`Jm&=YJr|F!M-u%lAB%R)M+UW;_Ot)JPs_y7~bBox*h?-2Qq zTq}7>rkksDQrVe0cd^VYL8EVXmGkUc5GzblEK*kC z?NI#Fp&zxb;TNHilcnNV!F25z@ii@hlFUaQR3YZccFKE#14-P(0tTxlnZ+{c%M(Lj zsj0|i?cTJLUS(!K@p9+T8)ZeX8KB*p$NyVLdEkQFdU(_yJERvbRIT>9Q>v|X_EpjY z1)69U@iEtxz#h<90@}S`zrw%JsL!11kJ)c~S+`%wt;v-LnvQXOAY$<(jwcpUg8;Zyyc4IoGr{|_(Jx@dV5?MI{+VxIXd8wTS?_v?# zZ0^_CmLEi3Jx)8l^p8kzs^#{CN^d|X=fwf zs{Go*3WAG+Z59kFKN+C%BW@~#1fDSKyVdbQATf0)V>HUgA2axInKb6MJ<((?I#GqH zS4+5xm_w6~eK|@4<+K(BtR3Jh&OL^FWLuqK5c!oddzf5fq>PTqWj&NPtJU0v7^fUH zeDk#hX%#=(s8hEK_LLs^lx_thI)pEdcAh=6aiApPP*rVVn@5%C!+isjI>ZmHCUr^9q2CHYf^rixTlR}M>=cq*_RF!0>pGi1&cIvx)2P-$t?|PD=J+bH%suA7~_(ojJBv2`mFc?hBCCi7#YO3a10wqWitGSy? zW106*0?>Yv2{3bm;1n%YfFH#9HWi{{=(eF%3uj9p^?5OWdwEylu0^+1VM|Ao^$kx| zI^eliN+SyyzH^q?2B~JM014;-2Uc`|+4bd8{garyt5PKP0Wv@COzcUXgP%MhATH(L zV$BP1OwBQPjR&l;N1y~swgzfvNHBl)KHJPJOM45*!dnXs6`QJ$0*}kv8A2a(Z!S$% zZt5lw)cDAMmjS-~|CbE#&p>)kGi3DNo1`yz8Cvz<{_w(b*y2b63?`^A%_Up&zir6z zH~T6I4u?MxI80vFz813q7y^G=ove#MIWJ5#m|yw1w`#mOVqkl^{6M5)BCN#LpaINS z6_A~i^z3V2bPK%OK(>XT7z zVY&+1X}ae+Fu6*J^a#8HD>nUvydESAC+)1Btt_=W1ipj$RfVU&^v;Iz0phuOQ&nn0 z+QhRph}gB4S4y@JLa~CxCq3EXL245xtxjv0N?2*^!|s3d!^0Q;UD+WZAL>vTuX=*N z=IC`7z_}z0;CB6{w{kI^Vc7S|n~zJ8hMEsFQ{tRnew4Z_6m!^Nc;^pEI}a~k@jFY# zKUB=E1$h|8{v!qEkIqu0r}w6B(kbzI>jx~}E(tub!UbI{5b(!l%B>#WaLY4&)P51V z^yL0g8kzpA=*u+@%1d0a&}0<|9#DnO9X|WOYnk+v8MI>F+5W0S{c+FU``cAFy6Li3 zY@6wQ?Br9r#A>0e_vhnqZ)D%r;se#oH0E2k@^dlOB_HSf@Oh+Y4PbD->qEfQ6b7N$ z6=D#JS!zU^IHQ=%lYZxqtHK`TE-fwkJ1n#$J-7NhRN-p7KL#DBuGR>5Rc{Qr<2L>R zyhN`qi2bE%cZ`s|U{tpq^Nt!y2&#e8_+dWH@%_-?FRsXRSRcmt*}=`M{#yBEy3;p@ zS3cz-2b}&Fjp-E0pfL^q_;5vSeeP}qBX_scy?ME_^029`@83^X9$OZRMXuQRj~F7& zV7cEL7IrM3{JXJej^Xs*dG^ZC%cy3?U79Ge_1nAlKesc;-ruh-yzGr86`Kab$cGlX zFkJW2978=n&HEPOmJv$yK-<)pn!^U{YE0RQOG*a59Klp(jucV*UQf(DS*h!zKLh;` zg+n5Z!S&{vRAy4{LUcAjW|NP@HfI@dIbxB&UF>-Mwt+)!du2*741zxfX0mS>m@p`~~0 zc0G0)kbdwPTqGf>0qw?clUZ#iLfVhRNi8<8=0L{#mu21M9iy3KgMnM?wb#- zNJ)2Ml8O(cOxk5vqGaW5-8hoZytHYX2I((vH$fCb5#w)Y-n0bb1lsz_A_(+nQ-c;D z9B6Q$4Gj)@{L*50&~}Newxzs>1OXz}YpuAnm{0P~o+Lf7+`M5>ArA7i$?6e&Sy9dv zFSaotDNak3W>1j!j*fR7*e+QrxMMEWFagH0fos{+b)y2*il7|svv4k0_k zvUM|uzAl|-0G^tLeZC9yd`Y6??bCU|0Ec$}<*xk;WZyQZxo~(D~a(6vIP6Ud&UY(8aTT+7!u3;2rRd&LC`cL z2n_RZ>fxMnu#-eLTZ#A*LDF7uKb`j4O?HBxwAA)gWhgu%`e#q{uqGSRY|9iqL0Nh}>-x^QejCTvH>k=O z8HX(@jg0f^=PJ&wzBTG%w;5O-=P=Hj!;AfSvDcB;v;nRXMsK^rtsBZHcXEE?;!vbRlT=8#1r5 z{Ako8G@vlOj%$7O3tF%3=8IzO?4bdr;_C?AOjT(>k6%iG{nE_-@zI4pf%ujmw8RRo z;`Fp5Fc$X&X@3^1w^!jJs$SMbHe^msCnlQlVjV--i=U6RS8+1acrqUEjQkwcq4;{D z)pP@++Sm#v6zskYbQ$n|H9;{WBjS|DfGl#VF;h6M9ZI6LdCvONs7Gm~maJ-Z^u+MN zn2!1U+LmYGiy20oPRv_bCI{%`6!kt#}H72C-d23-L&!2_+6H38RR9j^Js z^F)f6Ih0OxfFI@65MU_SqnI!oFk>9!LGUpwQhV31NKIi_q^9Aj37h4t`|Mb3R?-I( zy6=MLN=yahuK;kD%nur99S+(c?TV$DL)ljOHIH&0swjGmQ9kzdpJJBOKGjD1%J6E} zFGGE7HMm^GMW(Ytk52YoML)sQ4HQ(Uk+yO|!!UF_g4!mICT54-+FV`fbr*q{Ebuqq zvhm{JZFPj7CsrO0H zzsN^$YWVUZHN8d>lI2j(tT#pb8-cg?or5FL3wGW{gu(D9OA!NK!&yGu@{zH)H#hK$ z_9~GP^eW3(8n;+l6(B-Lc|HAW2m?JlD?HBvhV6uG`AxK&%-^YkspplA$l3P&pfbP8 zQtRO3;-IC4YH2VaL;+T>Q9*k&%d6Kqu`&Ag4#&&RuEE)1Y{4B@-50>>wboKr%ww*Y zgdc3%ZcBF((jcjcuPfItqUZ+Chlc~G9{E^w$5c`E1XChFI!!DPIG;1c2|^`z4l&JU z1uD`N6;N=aAV-^ol%Mh7+!fqG-vb_oxk~KZot`%t7hBk8h|sX^dt3BVFGF;smS+wA zy!$z`RRd(|vq@UB^C+Y&=}-=l7-L>Gk?W(d- zvuUv+#yD0z-UC^E!agfVM&KN5J=W?!so!X^*sr$?*Y7z&c<=+Hc;B^89_W@H7 z>jvv~pWqFD9y$%ef~VZn=$+_hp;O!*oYzZCM~aR zvn%BzMAnI!LYz`bnHrASqoi1yO!0yk1E$xt?xeejp1TMnNf+^WwlmAHw#}295Eyxg za4WFU`1GW0LT9Kx=~!R?I&{*xT4LMn>&C0N3jnrFatQwvx)G_e7b&OiecJZ;A;Lml zW!?o_{#tH@K~Fja9%#uM35szbH1~YYBqrWZTGYlL+Q?#XfuvlZp+CrjEX}er>T|!E zNY&QC^}J!ZqODD8Cx+^F-BM2Fu!bzmNFr!re%vi{X%?|Pr2a=e9E`q_b!Dlwp8D8j zYam*RrcTgXp5!nB$3qL_9BfE|jlM$UH1D*qd1-O$M~ELxv_Z6$$@~g@wzFtno6v1lR=+e^`$@^`dI`tB zf1Vg&=rc2%hZx75D;vwC`IR`9jWc8hKQLqRizG8rZeULWdPWVB%xB`PtWKQ=jT%HV zCBEx}FGD{C?hGG@Cb8Bpx>(rtfwgb%+LFvSm)e&YbQ?1dKQ?6XG{ejPPD{J1_9d^907g4ylnwMa9}{4#W{q-K8axIJ3f(gg;@o~z|WoY9Sqv1uImSI zrE|R-3Rvvv6dpWS)Tb~78>&*Y_uJi0Y)hW4Ef^n5a`{=-J7!{+&aSD2a)?_G*m@4 zpC!zu_YZD=QnAgHQB_^@h+^Nrlk%1D@x*IYYK0d@8R)^9__KPRFOgcc9DR*fm5rax za&etJSpg|w=98_eQM098UhwmQ`k6Q4eOaseDx>s!S-@^ExCtySlJ44)o-rK|&Z8p& z6v(-pk3~fS+iDLppeHa=6w!S`Qas(5unG`X+76T=P&Iplnq_9y2c7D3X;VRzN#6c} zVg#JC7nWyRV)-!k%%P&Mw2SQ?Osc1nlZ2xKUs%tm+xI=KM{V$qx$*VG!Tt2eA$mrB zvwr*MNcE{zz)HRqly&RnH{VO_D&wV#3u)X>R8${>>_d!IJ>+U10Dx{Y0Y*(T$|eH4B9K9UXX4@}MHtw+Z|?*dHsU$7 zeq|#bkD&9%;T{{;G+0_G@BLI|ySk_B-Q|sVGLBAeOIqpBERhK=md4?E%WO(>CMd08 zWs&DHDK~$Kg*tT==+A`BcYAbUlFs+vw>*NGQHu=-JoTrW&7R(n&lHCd zDZB73n6sY1{ycKSs;!{4RJ@TZBytZ3H#U69hAbHf*ZnwM8d2KM4< z4x{{f>y}CAegCZFQ-}JolLnCf!&67M5tSLawbaqTIEKWmba*sPVpRYF*ve*PYL?DA(v3v)kC6I|K53@OK>|DnMXc~NUuw)!BeNk9L+7;BK| zU0An_o_84B?q7ztUv+hUb@iRctQz zM|#3H%f1ZoU>X(Gm6lpY$hR!~sCzRV0`vaf@@+c<=<$4hRO7z^;MENqy0l*?lswTE zRPw*=;1`d5{xzE9ZM1b#wrl2U(hr{Y7Wvpqf9t;U_x2D@kAcNv-zt7bN(?*wB((&A z_jcr~4%=I9*|c`WtFLjj^U~Qj>p!h~^tHSZ~$lsipzt3-4I+J-k;1kdTv>@xn|jBf3QCXSS-z8w%?J6|452F4En*~ zpgRmB|6c!mD`YwU0G7zP5%kM)2b}ZnUt}#gfI1~>Upc@8lbPze^Q*y_uDF2O<8g_X zY_hHM07-}s&yJ7KjErGClimL}@##ev-vcyQo+(};nE7_pD7niwLm z9&-~O;YgZs0G&DxR_ylXW!L0y%;Q^(&w!0HCD%2u06dBsKJvN(F|FYmI zN3_y3QFITs7NCtXh1nv(*=bT{=BCWu_0w zZUy=QZWePd2w;xLeYP1rALvqIXty+$0_~Q5`UC;8eMHmwf)cr?UsnmKzxz1roWWKw Ncdx%xefjk_{|^NY)U*Hq literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png.meta b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png.meta new file mode 100644 index 0000000000..4a5b2ad61c --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_01_Normal.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: b94463ba36040ec4082132c54dd1bbad +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 1 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png new file mode 100644 index 0000000000000000000000000000000000000000..b3069b03d14bb6dd04f8050c0378123250ce6c76 GIT binary patch literal 9489 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 G%6|c^ch-ae literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png.meta b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png.meta new file mode 100644 index 0000000000..7fbedef673 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Assets/Textures/Grid_02_BaseMap.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: 844faea9c35b2464c8ecb09f66e2e2f8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorBuildSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorBuildSettings.asset new file mode 100644 index 0000000000..5494efdd30 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorBuildSettings.asset @@ -0,0 +1,24 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1045 &1 +EditorBuildSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Scenes: + - enabled: 1 + path: Assets/Scenes/BootstrapScene.unity + guid: 8077653236d44fd4b92cd4a96193e8b6 + - enabled: 1 + path: Assets/Scenes/MainMenu.unity + guid: 1ec6afcedd7df124e91af7bfbcea59b2 + - enabled: 1 + path: Assets/Scenes/SharedScene.unity + guid: 9fc0d4010bbf28b4594072e72b8655ab + - enabled: 1 + path: Assets/Scenes/ServerScene.unity + guid: ee7bfa213000a594bb8011364915602e + - enabled: 1 + path: Assets/Scenes/ClientScene.unity + guid: d8ac305138d51a84dbbb734b81c4054e + m_configObjects: {} + m_UseUCBPForAssetBundles: 0 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset new file mode 100644 index 0000000000..9910243ac7 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset @@ -0,0 +1,782 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!129 &1 +PlayerSettings: + m_ObjectHideFlags: 0 + serializedVersion: 28 + productGUID: 6859c206e4885eb4d9a885722be3daa1 + AndroidProfiler: 0 + AndroidFilterTouchesWhenObscured: 0 + AndroidEnableSustainedPerformanceMode: 0 + defaultScreenOrientation: 4 + targetDevice: 2 + useOnDemandResources: 0 + accelerometerFrequency: 60 + companyName: Unity Software + productName: SceneAndAssetManagement + defaultCursor: {fileID: 0} + cursorHotspot: {x: 0, y: 0} + m_SplashScreenBackgroundColor: {r: 0.12156863, g: 0.12156863, b: 0.1254902, a: 1} + m_ShowUnitySplashScreen: 1 + m_ShowUnitySplashLogo: 1 + m_SplashScreenOverlayOpacity: 1 + m_SplashScreenAnimation: 1 + m_SplashScreenLogoStyle: 1 + m_SplashScreenDrawMode: 0 + m_SplashScreenBackgroundAnimationZoom: 1 + m_SplashScreenLogoAnimationZoom: 1 + m_SplashScreenBackgroundLandscapeAspect: 1 + m_SplashScreenBackgroundPortraitAspect: 1 + m_SplashScreenBackgroundLandscapeUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenBackgroundPortraitUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenLogos: [] + m_VirtualRealitySplashScreen: {fileID: 0} + m_HolographicTrackingLossScreen: {fileID: 0} + defaultScreenWidth: 1920 + defaultScreenHeight: 1080 + defaultScreenWidthWeb: 960 + defaultScreenHeightWeb: 600 + m_StereoRenderingPath: 0 + m_ActiveColorSpace: 0 + unsupportedMSAAFallback: 0 + m_SpriteBatchMaxVertexCount: 65535 + m_SpriteBatchVertexThreshold: 300 + m_MTRendering: 1 + mipStripping: 0 + numberOfMipsStripped: 0 + numberOfMipsStrippedPerMipmapLimitGroup: {} + m_StackTraceTypes: 010000000100000001000000010000000100000001000000 + iosShowActivityIndicatorOnLoading: -1 + androidShowActivityIndicatorOnLoading: -1 + iosUseCustomAppBackgroundBehavior: 0 + allowedAutorotateToPortrait: 1 + allowedAutorotateToPortraitUpsideDown: 1 + allowedAutorotateToLandscapeRight: 1 + allowedAutorotateToLandscapeLeft: 1 + useOSAutorotation: 1 + use32BitDisplayBuffer: 1 + preserveFramebufferAlpha: 0 + disableDepthAndStencilBuffers: 0 + androidStartInFullscreen: 1 + androidRenderOutsideSafeArea: 1 + androidUseSwappy: 1 + androidBlitType: 0 + androidResizeableActivity: 1 + androidDefaultWindowWidth: 1920 + androidDefaultWindowHeight: 1080 + androidMinimumWindowWidth: 400 + androidMinimumWindowHeight: 300 + androidFullscreenMode: 1 + androidAutoRotationBehavior: 1 + androidPredictiveBackSupport: 0 + androidApplicationEntry: 2 + defaultIsNativeResolution: 1 + macRetinaSupport: 1 + runInBackground: 1 + muteOtherAudioSources: 0 + Prepare IOS For Recording: 0 + Force IOS Speakers When Recording: 0 + deferSystemGesturesMode: 0 + hideHomeButton: 0 + submitAnalytics: 1 + usePlayerLog: 1 + dedicatedServerOptimizations: 1 + bakeCollisionMeshes: 0 + forceSingleInstance: 0 + useFlipModelSwapchain: 1 + resizableWindow: 1 + useMacAppStoreValidation: 0 + macAppStoreCategory: public.app-category.games + gpuSkinning: 1 + meshDeformation: 1 + xboxPIXTextureCapture: 0 + xboxEnableAvatar: 0 + xboxEnableKinect: 0 + xboxEnableKinectAutoTracking: 0 + xboxEnableFitness: 0 + visibleInBackground: 1 + allowFullscreenSwitch: 1 + fullscreenMode: 3 + xboxSpeechDB: 0 + xboxEnableHeadOrientation: 0 + xboxEnableGuest: 0 + xboxEnablePIXSampling: 0 + metalFramebufferOnly: 0 + xboxOneResolution: 0 + xboxOneSResolution: 0 + xboxOneXResolution: 3 + xboxOneMonoLoggingLevel: 0 + xboxOneLoggingLevel: 1 + xboxOneDisableEsram: 0 + xboxOneEnableTypeOptimization: 0 + xboxOnePresentImmediateThreshold: 0 + switchQueueCommandMemory: 1048576 + switchQueueControlMemory: 16384 + switchQueueComputeMemory: 262144 + switchNVNShaderPoolsGranularity: 33554432 + switchNVNDefaultPoolsGranularity: 16777216 + switchNVNOtherPoolsGranularity: 16777216 + switchGpuScratchPoolGranularity: 2097152 + switchAllowGpuScratchShrinking: 0 + switchNVNMaxPublicTextureIDCount: 0 + switchNVNMaxPublicSamplerIDCount: 0 + switchMaxWorkerMultiple: 8 + switchNVNGraphicsFirmwareMemory: 32 + vulkanNumSwapchainBuffers: 3 + vulkanEnableSetSRGBWrite: 0 + vulkanEnablePreTransform: 0 + vulkanEnableLateAcquireNextImage: 0 + vulkanEnableCommandBufferRecycling: 1 + loadStoreDebugModeEnabled: 0 + visionOSBundleVersion: 1.0 + tvOSBundleVersion: 1.0 + bundleVersion: 1.0 + preloadedAssets: [] + metroInputSource: 0 + wsaTransparentSwapchain: 0 + m_HolographicPauseOnTrackingLoss: 1 + xboxOneDisableKinectGpuReservation: 1 + xboxOneEnable7thCore: 1 + vrSettings: + enable360StereoCapture: 0 + isWsaHolographicRemotingEnabled: 0 + enableFrameTimingStats: 0 + enableOpenGLProfilerGPURecorders: 1 + allowHDRDisplaySupport: 0 + useHDRDisplay: 0 + hdrBitDepth: 0 + m_ColorGamuts: 00000000 + targetPixelDensity: 30 + resolutionScalingMode: 0 + resetResolutionOnWindowResize: 0 + androidSupportedAspectRatio: 1 + androidMaxAspectRatio: 2.1 + androidMinAspectRatio: 1 + applicationIdentifier: + Standalone: com.DefaultCompany.CharacterControllerMovingBodies + buildNumber: + Standalone: 0 + VisionOS: 0 + iPhone: 0 + tvOS: 0 + overrideDefaultApplicationIdentifier: 0 + AndroidBundleVersionCode: 1 + AndroidMinSdkVersion: 23 + AndroidTargetSdkVersion: 0 + AndroidPreferredInstallLocation: 1 + aotOptions: + stripEngineCode: 1 + iPhoneStrippingLevel: 0 + iPhoneScriptCallOptimization: 0 + ForceInternetPermission: 0 + ForceSDCardPermission: 0 + CreateWallpaper: 0 + androidSplitApplicationBinary: 0 + keepLoadedShadersAlive: 0 + StripUnusedMeshComponents: 0 + strictShaderVariantMatching: 0 + VertexChannelCompressionMask: 4054 + iPhoneSdkVersion: 988 + iOSSimulatorArchitecture: 0 + iOSTargetOSVersionString: 13.0 + tvOSSdkVersion: 0 + tvOSSimulatorArchitecture: 0 + tvOSRequireExtendedGameController: 0 + tvOSTargetOSVersionString: 13.0 + VisionOSSdkVersion: 0 + VisionOSTargetOSVersionString: 1.0 + uIPrerenderedIcon: 0 + uIRequiresPersistentWiFi: 0 + uIRequiresFullScreen: 1 + uIStatusBarHidden: 1 + uIExitOnSuspend: 0 + uIStatusBarStyle: 0 + appleTVSplashScreen: {fileID: 0} + appleTVSplashScreen2x: {fileID: 0} + tvOSSmallIconLayers: [] + tvOSSmallIconLayers2x: [] + tvOSLargeIconLayers: [] + tvOSLargeIconLayers2x: [] + tvOSTopShelfImageLayers: [] + tvOSTopShelfImageLayers2x: [] + tvOSTopShelfImageWideLayers: [] + tvOSTopShelfImageWideLayers2x: [] + iOSLaunchScreenType: 0 + iOSLaunchScreenPortrait: {fileID: 0} + iOSLaunchScreenLandscape: {fileID: 0} + iOSLaunchScreenBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreenFillPct: 100 + iOSLaunchScreenSize: 100 + iOSLaunchScreeniPadType: 0 + iOSLaunchScreeniPadImage: {fileID: 0} + iOSLaunchScreeniPadBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreeniPadFillPct: 100 + iOSLaunchScreeniPadSize: 100 + iOSLaunchScreenCustomStoryboardPath: + iOSLaunchScreeniPadCustomStoryboardPath: + iOSDeviceRequirements: [] + iOSURLSchemes: [] + macOSURLSchemes: [] + iOSBackgroundModes: 0 + iOSMetalForceHardShadows: 0 + metalEditorSupport: 1 + metalAPIValidation: 1 + metalCompileShaderBinary: 0 + iOSRenderExtraFrameOnPause: 0 + iosCopyPluginsCodeInsteadOfSymlink: 0 + appleDeveloperTeamID: + iOSManualSigningProvisioningProfileID: + tvOSManualSigningProvisioningProfileID: + VisionOSManualSigningProvisioningProfileID: + iOSManualSigningProvisioningProfileType: 0 + tvOSManualSigningProvisioningProfileType: 0 + VisionOSManualSigningProvisioningProfileType: 0 + appleEnableAutomaticSigning: 0 + iOSRequireARKit: 0 + iOSAutomaticallyDetectAndAddCapabilities: 1 + appleEnableProMotion: 0 + shaderPrecisionModel: 0 + clonedFromGUID: 00000000000000000000000000000000 + templatePackageId: + templateDefaultScene: + useCustomMainManifest: 0 + useCustomLauncherManifest: 0 + useCustomMainGradleTemplate: 0 + useCustomLauncherGradleManifest: 0 + useCustomBaseGradleTemplate: 0 + useCustomGradlePropertiesTemplate: 0 + useCustomGradleSettingsTemplate: 0 + useCustomProguardFile: 0 + AndroidTargetArchitectures: 2 + AndroidSplashScreenScale: 0 + androidSplashScreen: {fileID: 0} + AndroidKeystoreName: + AndroidKeyaliasName: + AndroidEnableArmv9SecurityFeatures: 0 + AndroidEnableArm64MTE: 0 + AndroidBuildApkPerCpuArchitecture: 0 + AndroidTVCompatibility: 0 + AndroidIsGame: 1 + AndroidEnableTango: 0 + androidEnableBanner: 1 + androidUseLowAccuracyLocation: 0 + androidUseCustomKeystore: 0 + m_AndroidBanners: + - width: 320 + height: 180 + banner: {fileID: 0} + androidGamepadSupportLevel: 0 + AndroidMinifyRelease: 0 + AndroidMinifyDebug: 0 + AndroidValidateAppBundleSize: 1 + AndroidAppBundleSizeToValidate: 200 + AndroidReportGooglePlayAppDependencies: 1 + androidSymbolsSizeThreshold: 800 + m_BuildTargetIcons: [] + m_BuildTargetPlatformIcons: + - m_BuildTarget: Android + m_Icons: + - m_Textures: [] + m_Width: 432 + m_Height: 432 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 324 + m_Height: 324 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 216 + m_Height: 216 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 162 + m_Height: 162 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 108 + m_Height: 108 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 81 + m_Height: 81 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 0 + m_SubKind: + m_BuildTargetBatching: [] + m_BuildTargetShaderSettings: [] + m_BuildTargetGraphicsJobs: [] + m_BuildTargetGraphicsJobMode: [] + m_BuildTargetGraphicsAPIs: [] + m_BuildTargetVRSettings: [] + m_DefaultShaderChunkSizeInMB: 16 + m_DefaultShaderChunkCount: 0 + openGLRequireES31: 0 + openGLRequireES31AEP: 0 + openGLRequireES32: 0 + m_TemplateCustomTags: {} + mobileMTRendering: + Android: 1 + VisionOS: 1 + iPhone: 1 + tvOS: 1 + m_BuildTargetGroupLightmapEncodingQuality: [] + m_BuildTargetGroupLightmapSettings: [] + m_BuildTargetGroupLoadStoreDebugModeSettings: [] + m_BuildTargetNormalMapEncoding: [] + m_BuildTargetDefaultTextureCompressionFormat: [] + playModeTestRunnerEnabled: 0 + runPlayModeTestAsEditModeTest: 0 + actionOnDotNetUnhandledException: 1 + editorGfxJobOverride: 1 + enableInternalProfiler: 0 + logObjCUncaughtExceptions: 1 + enableCrashReportAPI: 0 + cameraUsageDescription: + locationUsageDescription: + microphoneUsageDescription: + bluetoothUsageDescription: + macOSTargetOSVersion: 11.0 + switchNMETAOverride: + switchNetLibKey: + switchSocketMemoryPoolSize: 6144 + switchSocketAllocatorPoolSize: 128 + switchSocketConcurrencyLimit: 14 + switchScreenResolutionBehavior: 2 + switchUseCPUProfiler: 0 + switchEnableFileSystemTrace: 0 + switchLTOSetting: 0 + switchApplicationID: 0x01004b9000490000 + switchNSODependencies: + switchCompilerFlags: + switchTitleNames_0: + switchTitleNames_1: + switchTitleNames_2: + switchTitleNames_3: + switchTitleNames_4: + switchTitleNames_5: + switchTitleNames_6: + switchTitleNames_7: + switchTitleNames_8: + switchTitleNames_9: + switchTitleNames_10: + switchTitleNames_11: + switchTitleNames_12: + switchTitleNames_13: + switchTitleNames_14: + switchTitleNames_15: + switchPublisherNames_0: + switchPublisherNames_1: + switchPublisherNames_2: + switchPublisherNames_3: + switchPublisherNames_4: + switchPublisherNames_5: + switchPublisherNames_6: + switchPublisherNames_7: + switchPublisherNames_8: + switchPublisherNames_9: + switchPublisherNames_10: + switchPublisherNames_11: + switchPublisherNames_12: + switchPublisherNames_13: + switchPublisherNames_14: + switchPublisherNames_15: + switchIcons_0: {fileID: 0} + switchIcons_1: {fileID: 0} + switchIcons_2: {fileID: 0} + switchIcons_3: {fileID: 0} + switchIcons_4: {fileID: 0} + switchIcons_5: {fileID: 0} + switchIcons_6: {fileID: 0} + switchIcons_7: {fileID: 0} + switchIcons_8: {fileID: 0} + switchIcons_9: {fileID: 0} + switchIcons_10: {fileID: 0} + switchIcons_11: {fileID: 0} + switchIcons_12: {fileID: 0} + switchIcons_13: {fileID: 0} + switchIcons_14: {fileID: 0} + switchIcons_15: {fileID: 0} + switchSmallIcons_0: {fileID: 0} + switchSmallIcons_1: {fileID: 0} + switchSmallIcons_2: {fileID: 0} + switchSmallIcons_3: {fileID: 0} + switchSmallIcons_4: {fileID: 0} + switchSmallIcons_5: {fileID: 0} + switchSmallIcons_6: {fileID: 0} + switchSmallIcons_7: {fileID: 0} + switchSmallIcons_8: {fileID: 0} + switchSmallIcons_9: {fileID: 0} + switchSmallIcons_10: {fileID: 0} + switchSmallIcons_11: {fileID: 0} + switchSmallIcons_12: {fileID: 0} + switchSmallIcons_13: {fileID: 0} + switchSmallIcons_14: {fileID: 0} + switchSmallIcons_15: {fileID: 0} + switchManualHTML: + switchAccessibleURLs: + switchLegalInformation: + switchMainThreadStackSize: 1048576 + switchPresenceGroupId: + switchLogoHandling: 0 + switchReleaseVersion: 0 + switchDisplayVersion: 1.0.0 + switchStartupUserAccount: 0 + switchSupportedLanguagesMask: 0 + switchLogoType: 0 + switchApplicationErrorCodeCategory: + switchUserAccountSaveDataSize: 0 + switchUserAccountSaveDataJournalSize: 0 + switchApplicationAttribute: 0 + switchCardSpecSize: -1 + switchCardSpecClock: -1 + switchRatingsMask: 0 + switchRatingsInt_0: 0 + switchRatingsInt_1: 0 + switchRatingsInt_2: 0 + switchRatingsInt_3: 0 + switchRatingsInt_4: 0 + switchRatingsInt_5: 0 + switchRatingsInt_6: 0 + switchRatingsInt_7: 0 + switchRatingsInt_8: 0 + switchRatingsInt_9: 0 + switchRatingsInt_10: 0 + switchRatingsInt_11: 0 + switchRatingsInt_12: 0 + switchLocalCommunicationIds_0: + switchLocalCommunicationIds_1: + switchLocalCommunicationIds_2: + switchLocalCommunicationIds_3: + switchLocalCommunicationIds_4: + switchLocalCommunicationIds_5: + switchLocalCommunicationIds_6: + switchLocalCommunicationIds_7: + switchParentalControl: 0 + switchAllowsScreenshot: 1 + switchAllowsVideoCapturing: 1 + switchAllowsRuntimeAddOnContentInstall: 0 + switchDataLossConfirmation: 0 + switchUserAccountLockEnabled: 0 + switchSystemResourceMemory: 16777216 + switchSupportedNpadStyles: 22 + switchNativeFsCacheSize: 32 + switchIsHoldTypeHorizontal: 1 + switchSupportedNpadCount: 8 + switchEnableTouchScreen: 1 + switchSocketConfigEnabled: 0 + switchTcpInitialSendBufferSize: 32 + switchTcpInitialReceiveBufferSize: 64 + switchTcpAutoSendBufferSizeMax: 256 + switchTcpAutoReceiveBufferSizeMax: 256 + switchUdpSendBufferSize: 9 + switchUdpReceiveBufferSize: 42 + switchSocketBufferEfficiency: 4 + switchSocketInitializeEnabled: 1 + switchNetworkInterfaceManagerInitializeEnabled: 1 + switchDisableHTCSPlayerConnection: 0 + switchUseNewStyleFilepaths: 1 + switchUseLegacyFmodPriorities: 0 + switchUseMicroSleepForYield: 1 + switchEnableRamDiskSupport: 0 + switchMicroSleepForYieldTime: 25 + switchRamDiskSpaceSize: 12 + switchUpgradedPlayerSettingsToNMETA: 0 + ps4NPAgeRating: 12 + ps4NPTitleSecret: + ps4NPTrophyPackPath: + ps4ParentalLevel: 11 + ps4ContentID: ED1633-NPXX51362_00-0000000000000000 + ps4Category: 0 + ps4MasterVersion: 01.00 + ps4AppVersion: 01.00 + ps4AppType: 0 + ps4ParamSfxPath: + ps4VideoOutPixelFormat: 0 + ps4VideoOutInitialWidth: 1920 + ps4VideoOutBaseModeInitialWidth: 1920 + ps4VideoOutReprojectionRate: 60 + ps4PronunciationXMLPath: + ps4PronunciationSIGPath: + ps4BackgroundImagePath: + ps4StartupImagePath: + ps4StartupImagesFolder: + ps4IconImagesFolder: + ps4SaveDataImagePath: + ps4SdkOverride: + ps4BGMPath: + ps4ShareFilePath: + ps4ShareOverlayImagePath: + ps4PrivacyGuardImagePath: + ps4ExtraSceSysFile: + ps4NPtitleDatPath: + ps4RemotePlayKeyAssignment: -1 + ps4RemotePlayKeyMappingDir: + ps4PlayTogetherPlayerCount: 0 + ps4EnterButtonAssignment: 2 + ps4ApplicationParam1: 0 + ps4ApplicationParam2: 0 + ps4ApplicationParam3: 0 + ps4ApplicationParam4: 0 + ps4DownloadDataSize: 0 + ps4GarlicHeapSize: 2048 + ps4ProGarlicHeapSize: 2560 + playerPrefsMaxSize: 32768 + ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ + ps4pnSessions: 1 + ps4pnPresence: 1 + ps4pnFriends: 1 + ps4pnGameCustomData: 1 + playerPrefsSupport: 0 + enableApplicationExit: 0 + resetTempFolder: 1 + restrictedAudioUsageRights: 0 + ps4UseResolutionFallback: 0 + ps4ReprojectionSupport: 0 + ps4UseAudio3dBackend: 0 + ps4UseLowGarlicFragmentationMode: 1 + ps4SocialScreenEnabled: 0 + ps4ScriptOptimizationLevel: 2 + ps4Audio3dVirtualSpeakerCount: 14 + ps4attribCpuUsage: 0 + ps4PatchPkgPath: + ps4PatchLatestPkgPath: + ps4PatchChangeinfoPath: + ps4PatchDayOne: 0 + ps4attribUserManagement: 0 + ps4attribMoveSupport: 0 + ps4attrib3DSupport: 0 + ps4attribShareSupport: 0 + ps4attribExclusiveVR: 0 + ps4disableAutoHideSplash: 0 + ps4videoRecordingFeaturesUsed: 0 + ps4contentSearchFeaturesUsed: 0 + ps4CompatibilityPS5: 0 + ps4AllowPS5Detection: 0 + ps4GPU800MHz: 1 + ps4attribEyeToEyeDistanceSettingVR: 0 + ps4IncludedModules: [] + ps4attribVROutputEnabled: 0 + monoEnv: + splashScreenBackgroundSourceLandscape: {fileID: 0} + splashScreenBackgroundSourcePortrait: {fileID: 0} + blurSplashScreenBackground: 1 + spritePackerPolicy: + webGLMemorySize: 32 + webGLExceptionSupport: 1 + webGLNameFilesAsHashes: 0 + webGLShowDiagnostics: 0 + webGLDataCaching: 1 + webGLDebugSymbols: 0 + webGLEmscriptenArgs: + webGLModulesDirectory: + webGLTemplate: APPLICATION:Default + webGLAnalyzeBuildSize: 0 + webGLUseEmbeddedResources: 0 + webGLCompressionFormat: 1 + webGLWasmArithmeticExceptions: 0 + webGLLinkerTarget: 1 + webGLThreadsSupport: 0 + webGLDecompressionFallback: 0 + webGLInitialMemorySize: 32 + webGLMaximumMemorySize: 2048 + webGLMemoryGrowthMode: 2 + webGLMemoryLinearGrowthStep: 16 + webGLMemoryGeometricGrowthStep: 0.2 + webGLMemoryGeometricGrowthCap: 96 + webGLEnableWebGPU: 0 + webGLPowerPreference: 2 + webGLWebAssemblyTable: 0 + webGLWebAssemblyBigInt: 0 + webGLCloseOnQuit: 0 + webWasm2023: 0 + scriptingDefineSymbols: {} + additionalCompilerArguments: {} + platformArchitecture: {} + scriptingBackend: {} + il2cppCompilerConfiguration: {} + il2cppCodeGeneration: {} + il2cppStacktraceInformation: {} + managedStrippingLevel: {} + incrementalIl2cppBuild: {} + suppressCommonWarnings: 1 + allowUnsafeCode: 0 + useDeterministicCompilation: 1 + additionalIl2CppArgs: + scriptingRuntimeVersion: 1 + gcIncremental: 1 + gcWBarrierValidation: 0 + apiCompatibilityLevelPerPlatform: {} + editorAssembliesCompatibilityLevel: 1 + m_RenderingPath: 1 + m_MobileRenderingPath: 1 + metroPackageName: CharacterControllerMovingBodies + metroPackageVersion: 1.0.0.0 + metroCertificatePath: + metroCertificatePassword: + metroCertificateSubject: + metroCertificateIssuer: + metroCertificateNotAfter: 0000000000000000 + metroApplicationDescription: CharacterControllerMovingBodies + wsaImages: {} + metroTileShortName: CharacterControllerMovingBodies + metroTileShowName: 0 + metroMediumTileShowName: 0 + metroLargeTileShowName: 0 + metroWideTileShowName: 0 + metroSupportStreamingInstall: 0 + metroLastRequiredScene: 0 + metroDefaultTileSize: 1 + metroTileForegroundText: 2 + metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} + metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} + metroSplashScreenUseBackgroundColor: 0 + syncCapabilities: 0 + platformCapabilities: {} + metroTargetDeviceFamilies: {} + metroFTAName: + metroFTAFileTypes: [] + metroProtocolName: + vcxProjDefaultLanguage: + XboxOneProductId: + XboxOneUpdateKey: + XboxOneSandboxId: + XboxOneContentId: + XboxOneTitleId: + XboxOneSCId: + XboxOneGameOsOverridePath: + XboxOnePackagingOverridePath: + XboxOneAppManifestOverridePath: + XboxOneVersion: 1.0.0.0 + XboxOnePackageEncryption: 0 + XboxOnePackageUpdateGranularity: 2 + XboxOneDescription: + XboxOneLanguage: + - enus + XboxOneCapability: [] + XboxOneGameRating: {} + XboxOneIsContentPackage: 0 + XboxOneEnhancedXboxCompatibilityMode: 0 + XboxOneEnableGPUVariability: 1 + XboxOneSockets: {} + XboxOneSplashScreen: {fileID: 0} + XboxOneAllowedProductIds: [] + XboxOnePersistentLocalStorageSize: 0 + XboxOneXTitleMemory: 8 + XboxOneOverrideIdentityName: + XboxOneOverrideIdentityPublisher: + vrEditorSettings: {} + cloudServicesEnabled: + Purchasing: 0 + Unity Ads: 0 + luminIcon: + m_Name: + m_ModelFolderPath: + m_PortalFolderPath: + luminCert: + m_CertPath: + m_SignPackage: 1 + luminIsChannelApp: 0 + luminVersion: + m_VersionCode: 1 + m_VersionName: + hmiPlayerDataPath: + hmiForceSRGBBlit: 0 + embeddedLinuxEnableGamepadInput: 0 + hmiCpuConfiguration: + hmiLogStartupTiming: 0 + qnxGraphicConfPath: + apiCompatibilityLevel: 6 + captureStartupLogs: {} + activeInputHandler: 0 + windowsGamepadBackendHint: 0 + cloudProjectId: + framebufferDepthMemorylessMode: 0 + qualitySettingsNames: [] + projectName: + organizationId: + cloudEnabled: 0 + legacyClampBlendShapeWeights: 0 + hmiLoadingImage: {fileID: 0} + platformRequiresReadableAssets: 0 + virtualTexturingSupportEnabled: 0 + insecureHttpOption: 0 + androidVulkanDenyFilterList: [] + androidVulkanAllowFilterList: [] diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/TagManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/TagManager.asset new file mode 100644 index 0000000000..eb5d9aedd6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/TagManager.asset @@ -0,0 +1,45 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!78 &1 +TagManager: + serializedVersion: 3 + tags: [] + layers: + - Default + - TransparentFX + - Ignore Raycast + - + - Water + - UI + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + m_SortingLayers: + - name: Default + uniqueID: 0 + locked: 0 + m_RenderingLayers: + - Default From b04471be0e292002ddb9c9204a10c79a72c9c05d Mon Sep 17 00:00:00 2001 From: NoelStephensUnity Date: Sat, 7 Dec 2024 21:13:08 -0600 Subject: [PATCH 2/9] update Several modifications to handle distributed authority integration with this example. --- .../OverridingScenesAndPrefabs/.gitignore | 83 + .../Assets/DefaultNetworkPrefabs.asset | 13 +- .../Assets/Materials/GridWhite.mat | 10 +- .../Assets/Materials/PlayerMaterial.mat | 6 +- .../Assets/Prefabs/ClientPlayer.prefab | 839 ++-------- .../Assets/Prefabs/ClientPlayer.prefab.meta | 2 +- .../PlayerPrefabOverrideHandler.prefab | 75 - .../PlayerPrefabOverrideHandler.prefab.meta | 7 - .../Assets/Prefabs/ServerPlayer.prefab | 437 ++--- .../Assets/Prefabs/ServerPlayer.prefab.meta | 2 +- .../Assets/Scenes/BootstrapScene.unity | 20 +- .../Assets/Scenes/CharacterController.unity | 1435 ----------------- .../Scenes/CharacterController.unity.meta | 7 - .../Assets/Scenes/ProjectPrefabs.asset | 4 +- .../Assets/Scenes/SharedScene.unity | 76 +- .../Scripts/InstanceTypeLocalBehavior.cs | 24 +- .../Assets/Scripts/MoverScriptNoRigidbody.cs | 7 +- .../Scripts/NetworkManagerBootstrapper.cs | 212 ++- .../Scripts/NetworkPrefabOverrideHandler.cs | 23 +- .../Assets/Scripts/PlayerColor.cs | 2 +- .../Assets/Scripts/SceneBootstrapLoader.cs | 148 +- .../Assets/Scripts/ServerHostClientText.cs | 7 +- .../ProjectSettings/ClusterInputManager.asset | 6 + .../ProjectSettings/DynamicsManager.asset | 37 + .../ProjectSettings/EditorSettings.asset | 48 + .../ProjectSettings/GraphicsSettings.asset | 66 + .../ProjectSettings/InputManager.asset | 296 ++++ .../ProjectSettings/MemorySettings.asset | 35 + .../ProjectSettings/MultiplayerManager.asset | 7 + .../ProjectSettings/NavMeshAreas.asset | 93 ++ .../ProjectSettings/Physics2DSettings.asset | 56 + .../ProjectSettings/PresetManager.asset | 7 + .../ProjectSettings/ProjectSettings.asset | 2 +- .../ProjectSettings/QualitySettings.asset | 340 ++++ .../ProjectSettings/TimeManager.asset | 13 + .../UnityConnectSettings.asset | 36 + .../ProjectSettings/VFXManager.asset | 19 + .../VersionControlSettings.asset | 7 + 38 files changed, 1931 insertions(+), 2576 deletions(-) create mode 100644 Examples/OverridingScenesAndPrefabs/.gitignore delete mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab delete mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta delete mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity delete mode 100644 Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/ClusterInputManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/DynamicsManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorSettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/GraphicsSettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/InputManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/MemorySettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/MultiplayerManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/NavMeshAreas.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/Physics2DSettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/PresetManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/QualitySettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/TimeManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/UnityConnectSettings.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/VFXManager.asset create mode 100644 Examples/OverridingScenesAndPrefabs/ProjectSettings/VersionControlSettings.asset diff --git a/Examples/OverridingScenesAndPrefabs/.gitignore b/Examples/OverridingScenesAndPrefabs/.gitignore new file mode 100644 index 0000000000..2800399634 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/.gitignore @@ -0,0 +1,83 @@ +# This .gitignore file should be placed at the root of your Unity project directory +# +# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore +# +/[Ll]ibrary/ +/[Tt]emp/ +/[Oo]bj/ +/[Bb]uild/ +/[Bb]uilds/ +/[Ll]ogs/ +/[Uu]ser[Ss]ettings/ + +# MemoryCaptures can get excessive in size. +# They also could contain extremely sensitive data +/[Mm]emoryCaptures/ + +# Asset meta data should only be ignored when the corresponding asset is also ignored +!/[Aa]ssets/**/*.meta + +# Uncomment this line if you wish to ignore the asset store tools plugin +# /[Aa]ssets/AssetStoreTools* + +# Autogenerated Jetbrains Rider plugin +/[Aa]ssets/Plugins/Editor/JetBrains* + +# Visual Studio cache directory +.vs/ + +# Gradle cache directory +.gradle/ + +# Autogenerated VS/MD/Consulo solution and project files +ExportedObj/ +.consulo/ +*.csproj +*.unityproj +*.sln +*.suo +*.tmp +*.user +*.userprefs +*.pidb +*.booproj +*.svd +*.pdb +*.mdb +*.opendb +*.VC.db + +# Unity3D generated meta files +*.pidb.meta +*.pdb.meta +*.mdb.meta + +# Unity3D generated file on crash reports +sysinfo.txt + +# Builds +*.apk +*.aab +*.unitypackage + +# Crashlytics generated file +crashlytics-build.properties + +# Packed Addressables +/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin* + +# Temporary auto-generated Android Assets +/[Aa]ssets/[Ss]treamingAssets/aa.meta +/[Aa]ssets/[Ss]treamingAssets/aa/* +/[Aa]ssets/[Ss]treamingAssets/BuildInfo.json +/[Aa]ssets/[Ss]treamingAssets/BuildInfo.json.meta + +# Secrets +*.pem +*.pem.meta + +InitTestScene* + +boot.config +SceneTemplateSettings.json +*BurstAotSettings*.json diff --git a/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset b/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset index 3250ac7264..56426e31b7 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset +++ b/Examples/OverridingScenesAndPrefabs/Assets/DefaultNetworkPrefabs.asset @@ -20,22 +20,27 @@ MonoBehaviour: SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} - Override: 0 - Prefab: {fileID: 7542415007908852951, guid: cab3850a18c969d4caa82a6049175695, type: 3} + Prefab: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} SourcePrefabToOverride: {fileID: 0} SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} - Override: 0 - Prefab: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + Prefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} SourcePrefabToOverride: {fileID: 0} SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} - Override: 0 - Prefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + Prefab: {fileID: 3439633038736912633, guid: 398aad09d8b2a47eba664a076763cdcc, type: 3} SourcePrefabToOverride: {fileID: 0} SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} - Override: 0 - Prefab: {fileID: 3439633038736912633, guid: 398aad09d8b2a47eba664a076763cdcc, type: 3} + Prefab: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 6472733969592893139, guid: 3e5167b6e6bcb5645abb2dbc0078091e, type: 3} SourcePrefabToOverride: {fileID: 0} SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat index 7345253099..6e1b52a2c0 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/GridWhite.mat @@ -62,11 +62,11 @@ Material: - _EmissionMap: m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} + m_Offset: {x: 0, y: 0.03} - _MainTex: - m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Texture: {fileID: 2800000, guid: 844faea9c35b2464c8ecb09f66e2e2f8, type: 3} m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} + m_Offset: {x: 0, y: 0.03} - _MetallicGlossMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -111,8 +111,8 @@ Material: - _DstBlend: 0 - _DstBlendAlpha: 0 - _EnvironmentReflections: 1 - - _GlossMapScale: 1 - - _Glossiness: 0.477 + - _GlossMapScale: 0.24 + - _Glossiness: 0.846 - _GlossyReflections: 0 - _Metallic: 0 - _Mode: 0 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat b/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat index e7f5729956..bc67e92539 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat +++ b/Examples/OverridingScenesAndPrefabs/Assets/Materials/PlayerMaterial.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: PlayerMaterial m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: [] m_InvalidKeywords: [] m_LightmapFlags: 4 @@ -17,6 +19,7 @@ Material: m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -63,7 +66,7 @@ Material: - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 1 - - _Glossiness: 0.5 + - _Glossiness: 0 - _GlossyReflections: 1 - _Metallic: 0 - _Mode: 0 @@ -78,3 +81,4 @@ Material: - _Color: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab index 92d173907a..78723f0b08 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab @@ -1,54 +1,129 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &2819221948576051598 -GameObject: +--- !u!1001 &1768978093373392434 +PrefabInstance: m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8815849029736207364} - - component: {fileID: 3042900316038666559} - - component: {fileID: 1437858011576020080} - - component: {fileID: 8264281895793262867} - m_Layer: 0 - m_Name: PlayerBallChild1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8815849029736207364 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2819221948576051598} serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 1, y: 0, z: 0} - m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 394823601370723229} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &3042900316038666559 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_Name + value: ClientPlayer + objectReference: {fileID: 0} + - target: {fileID: 5488962521685982563, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: GlobalObjectIdHash + value: 3304021165 + objectReference: {fileID: 0} + - target: {fileID: 6582615468703263770, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: GlobalObjectIdHash + value: 3304021165 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7209693128479548322, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: -1 + addedObject: {fileID: 916832828106534790} + - targetCorrespondingSourceObject: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: -1 + addedObject: {fileID: 4315296084954952915} + - targetCorrespondingSourceObject: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: -1 + addedObject: {fileID: 8226639525103180092} + - targetCorrespondingSourceObject: {fileID: 3385537716926926172, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 1 + addedObject: {fileID: 1499413778802221178} + - targetCorrespondingSourceObject: {fileID: 3385537716926926172, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 2 + addedObject: {fileID: 3977729948622378772} + - targetCorrespondingSourceObject: {fileID: 9153294333356437960, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 1 + addedObject: {fileID: 1444122194983607567} + - targetCorrespondingSourceObject: {fileID: 9153294333356437960, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 2 + addedObject: {fileID: 2160506865115608745} + - targetCorrespondingSourceObject: {fileID: 324680519892629439, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 1 + addedObject: {fileID: 204575060996785653} + - targetCorrespondingSourceObject: {fileID: 324680519892629439, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 2 + addedObject: {fileID: 544477718306327008} + - targetCorrespondingSourceObject: {fileID: 1574061277261592297, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 1 + addedObject: {fileID: 8023734133310089212} + - targetCorrespondingSourceObject: {fileID: 1574061277261592297, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 2 + addedObject: {fileID: 5358980426924378504} + - targetCorrespondingSourceObject: {fileID: 7170742296219383225, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 1 + addedObject: {fileID: 8116266233139283823} + - targetCorrespondingSourceObject: {fileID: 7170742296219383225, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + insertIndex: 2 + addedObject: {fileID: 6061467578651748175} + m_SourcePrefab: {fileID: 100100000, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} +--- !u!1 &960564489074766043 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1574061277261592297, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + m_PrefabInstance: {fileID: 1768978093373392434} + m_PrefabAsset: {fileID: 0} +--- !u!33 &8023734133310089212 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2819221948576051598} + m_GameObject: {fileID: 960564489074766043} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1437858011576020080 +--- !u!23 &5358980426924378504 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2819221948576051598} + m_GameObject: {fileID: 960564489074766043} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -65,7 +140,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: a53ba8919fa78c14caac473c7e7ce7d3, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -87,98 +162,26 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!114 &8264281895793262867 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2819221948576051598} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 0 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 1 - SwitchTransformSpaceWhenParented: 0 - Interpolate: 1 - SlerpPosition: 1 - ExpandPlayerBallMotion: 1 - ExpandNetworkTransform: 1 - RotationAxis: 2 - RotationSpeed: 1.5 ---- !u!1 &3959781627078922459 +--- !u!1 &2021503815370961293 stripped GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 394823601370723229} - - component: {fileID: 1530657457870194733} - - component: {fileID: 8179170832269307327} - - component: {fileID: 8231288296501785146} - m_Layer: 0 - m_Name: PlayerBallPrime - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &394823601370723229 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 324680519892629439, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + m_PrefabInstance: {fileID: 1768978093373392434} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3959781627078922459} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 1.25, y: 0, z: 0} - m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8815849029736207364} - - {fileID: 7136463849438099188} - - {fileID: 5551906405844277949} - m_Father: {fileID: 8921789205124766473} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &1530657457870194733 +--- !u!33 &204575060996785653 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3959781627078922459} + m_GameObject: {fileID: 2021503815370961293} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8179170832269307327 +--- !u!23 &544477718306327008 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3959781627078922459} + m_GameObject: {fileID: 2021503815370961293} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -217,86 +220,26 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!114 &8231288296501785146 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3959781627078922459} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 0 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 1 - SwitchTransformSpaceWhenParented: 0 - Interpolate: 1 - SlerpPosition: 1 - ExpandPlayerBallMotion: 1 - ExpandNetworkTransform: 1 - RotationAxis: 0 - RotationSpeed: 1.5 ---- !u!1 &3973637191948275635 +--- !u!1 &3924733872325380974 stripped GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 3385537716926926172, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + m_PrefabInstance: {fileID: 1768978093373392434} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8797190989880117053} - - component: {fileID: 1956256172504790623} - - component: {fileID: 2171905566637076429} - m_Layer: 0 - m_Name: ParentedText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8797190989880117053 -Transform: +--- !u!33 &1499413778802221178 +MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3973637191948275635} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.91, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8921789205124766473} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!23 &1956256172504790623 + m_GameObject: {fileID: 3924733872325380974} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &3977729948622378772 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3973637191948275635} + m_GameObject: {fileID: 3924733872325380974} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -313,7 +256,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + - {fileID: 2100000, guid: 5324c76c2bab7344badd5ea27a40bcb5, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -335,204 +278,40 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!102 &2171905566637076429 -TextMesh: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3973637191948275635} - m_Text: "Hello \nWorld" - m_OffsetZ: 0 - m_CharacterSize: 0.15 - m_LineSpacing: 1 - m_Anchor: 4 - m_Alignment: 1 - m_TabSize: 4 - m_FontSize: 20 - m_FontStyle: 1 - m_RichText: 1 - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_Color: - serializedVersion: 2 - rgba: 4294967295 ---- !u!1 &7133739606324490315 +--- !u!1 &6472733969592893139 stripped GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + m_PrefabInstance: {fileID: 1768978093373392434} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5551906405844277949} - - component: {fileID: 1792842414970541714} - - component: {fileID: 6744917009213370100} - - component: {fileID: 6571689152541036907} - m_Layer: 0 - m_Name: PlayerBallChild3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5551906405844277949 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7133739606324490315} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 1} - m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 394823601370723229} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &1792842414970541714 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7133739606324490315} - m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &6744917009213370100 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7133739606324490315} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - 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_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - 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 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!114 &6571689152541036907 +--- !u!114 &916832828106534790 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7133739606324490315} + m_GameObject: {fileID: 6472733969592893139} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Script: {fileID: 11500000, guid: bb9a9987a689bbe43a05463cf3713b22, type: 3} m_Name: m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 0 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 1 - SwitchTransformSpaceWhenParented: 0 - Interpolate: 1 - SlerpPosition: 1 - ExpandPlayerBallMotion: 1 - ExpandNetworkTransform: 1 - RotationAxis: 1 - RotationSpeed: 1.5 ---- !u!1 &7484009658662050968 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7136463849438099188} - - component: {fileID: 8767029715903736994} - - component: {fileID: 186997181429634371} - - component: {fileID: 4424954456620528769} - m_Layer: 0 - m_Name: PlayerBallChild2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7136463849438099188 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7484009658662050968} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -1, y: 0, z: 0} - m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 394823601370723229} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &8767029715903736994 + ServerOnly: 0 + UniqueLocalInstanceContent: ' Local content specific to ClientPlayer' +--- !u!33 &4315296084954952915 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7484009658662050968} - m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &186997181429634371 + m_GameObject: {fileID: 6472733969592893139} + m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8226639525103180092 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7484009658662050968} + m_GameObject: {fileID: 6472733969592893139} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -549,7 +328,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: a53ba8919fa78c14caac473c7e7ce7d3, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -571,95 +350,26 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!114 &4424954456620528769 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7484009658662050968} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 0 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 1 - SwitchTransformSpaceWhenParented: 0 - Interpolate: 1 - SlerpPosition: 1 - ExpandPlayerBallMotion: 0 - ExpandNetworkTransform: 1 - RotationAxis: 0 - RotationSpeed: 1.5 ---- !u!1 &8837707216906300506 +--- !u!1 &7461238108046391290 stripped GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 9153294333356437960, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + m_PrefabInstance: {fileID: 1768978093373392434} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3256164543801378073} - - component: {fileID: 5138046720836505354} - - component: {fileID: 1048758437790369019} - - component: {fileID: 3232232006964461868} - m_Layer: 0 - m_Name: Direction - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &3256164543801378073 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8837707216906300506} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0.529, z: 0.36} - m_LocalScale: {x: 0.5, y: 0.35, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8921789205124766473} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &5138046720836505354 +--- !u!33 &1444122194983607567 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8837707216906300506} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1048758437790369019 + m_GameObject: {fileID: 7461238108046391290} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &2160506865115608745 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8837707216906300506} + m_GameObject: {fileID: 7461238108046391290} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -676,7 +386,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 2100000, guid: 5324c76c2bab7344badd5ea27a40bcb5, type: 2} + - {fileID: 2100000, guid: a53ba8919fa78c14caac473c7e7ce7d3, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -698,85 +408,26 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!65 &3232232006964461868 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8837707216906300506} - m_Material: {fileID: 0} - m_IncludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_ExcludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_LayerOverridePriority: 0 - m_IsTrigger: 0 - m_ProvidesContacts: 0 - m_Enabled: 0 - serializedVersion: 3 - m_Size: {x: 1, y: 1, z: 1} - m_Center: {x: 0, y: 0, z: 0} ---- !u!1 &8921789205124766477 +--- !u!1 &8867363453312856971 stripped GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8921789205124766473} - - component: {fileID: 8921789205124766472} - - component: {fileID: 8921789205124766479} - - component: {fileID: 8921789205124766478} - - component: {fileID: 3121348088455848731} - - component: {fileID: 8921789205124766474} - - component: {fileID: 871737567343884637} - - component: {fileID: 571224925323069553} - - component: {fileID: 2509722539211228765} - - component: {fileID: -1193078498836806637} - m_Layer: 0 - m_Name: ClientPlayer - m_TagString: Player - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8921789205124766473 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 7170742296219383225, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + m_PrefabInstance: {fileID: 1768978093373392434} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 3256164543801378073} - - {fileID: 8797190989880117053} - - {fileID: 394823601370723229} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &8921789205124766472 +--- !u!33 &8116266233139283823 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8921789205124766479 + m_GameObject: {fileID: 8867363453312856971} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6061467578651748175 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 8867363453312856971} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -793,7 +444,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 2100000, guid: 44e292334941fe148b997ca2b01b5789, type: 2} + - {fileID: 2100000, guid: a53ba8919fa78c14caac473c7e7ce7d3, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -815,171 +466,3 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!136 &8921789205124766478 -CapsuleCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Material: {fileID: 0} - m_IncludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_ExcludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_LayerOverridePriority: 0 - m_IsTrigger: 0 - m_ProvidesContacts: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 0.5 - m_Height: 2 - m_Direction: 1 - m_Center: {x: 0, y: 0, z: 0} ---- !u!143 &3121348088455848731 -CharacterController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Material: {fileID: 0} - m_IncludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_ExcludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_LayerOverridePriority: 0 - m_ProvidesContacts: 0 - m_Enabled: 1 - serializedVersion: 3 - m_Height: 2 - m_Radius: 0.5 - m_SlopeLimit: 45 - m_StepOffset: 0.3 - m_SkinWidth: 0.08 - m_MinMoveDistance: 0.001 - m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &8921789205124766474 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 3994715305 - InScenePlacedSourceGlobalObjectIdHash: 0 - DeferredDespawnTick: 0 - Ownership: 0 - AlwaysReplicateAsRoot: 0 - SynchronizeTransform: 1 - ActiveSceneSynchronization: 0 - SceneMigrationSynchronization: 1 - SpawnWithObservers: 1 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 - SyncOwnerTransformWhenParented: 0 - AllowOwnerToParent: 1 ---- !u!114 &871737567343884637 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 8e5128237997be649af0cc87dd0eb563, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - ApplyColorToChildren: 1 - IgnoreChildren: - - {fileID: 8837707216906300506} ---- !u!114 &571224925323069553 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5ce25b0b3f15e6446a88a85787c2f94a, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 1 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.01 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.1 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 0 - SwitchTransformSpaceWhenParented: 1 - Interpolate: 1 - SlerpPosition: 0 - MoverScriptNoRigidbodyExpanded: 0 - SpawnRadius: 10 - Increment: 1 - RotationSpeed: 1.26 - MovementSpeed: 15 - JumpSpeed: 10 - AirSpeedFactor: 0.35 - Gravity: -9.8 - ContinualChildMotion: 1 ---- !u!65 &2509722539211228765 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Material: {fileID: 0} - m_IncludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_ExcludeLayers: - serializedVersion: 2 - m_Bits: 0 - m_LayerOverridePriority: 0 - m_IsTrigger: 0 - m_ProvidesContacts: 0 - m_Enabled: 1 - serializedVersion: 3 - m_Size: {x: 1, y: 1.4, z: 1} - m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &-1193078498836806637 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: bb9a9987a689bbe43a05463cf3713b22, type: 3} - m_Name: - m_EditorClassIdentifier: - UniqueLocalInstanceContent: ' Local content specific to ClientPlayer' diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta index db511a5d81..75b0f6a314 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ClientPlayer.prefab.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: a279f80620d4e6a4ab02c1a9c96ff460 +guid: 3e5167b6e6bcb5645abb2dbc0078091e PrefabImporter: externalObjects: {} userData: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab deleted file mode 100644 index 3185834b23..0000000000 --- a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab +++ /dev/null @@ -1,75 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &7542415007908852951 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7399658756277439218} - - component: {fileID: 248153197284761457} - - component: {fileID: 5056115739317288276} - m_Layer: 0 - m_Name: PlayerPrefabOverrideHandler - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7399658756277439218 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7542415007908852951} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &248153197284761457 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7542415007908852951} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 3200484303 - InScenePlacedSourceGlobalObjectIdHash: 0 - DeferredDespawnTick: 0 - Ownership: 1 - AlwaysReplicateAsRoot: 0 - SynchronizeTransform: 1 - ActiveSceneSynchronization: 0 - SceneMigrationSynchronization: 1 - SpawnWithObservers: 1 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 - SyncOwnerTransformWhenParented: 1 - AllowOwnerToParent: 0 ---- !u!114 &5056115739317288276 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7542415007908852951} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5c472ff64b067344893ed2e632d0f9f1, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - ClientNetworkPrefab: {fileID: 8921789205124766477, guid: a279f80620d4e6a4ab02c1a9c96ff460, type: 3} - ServerNetworkPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta deleted file mode 100644 index 2d80e51c7b..0000000000 --- a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/PlayerPrefabOverrideHandler.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: cab3850a18c969d4caa82a6049175695 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab index 0f46f2d90b..8e6ca8383c 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab @@ -1,6 +1,6 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &2819221948576051598 +--- !u!1 &324680519892629439 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -8,8 +8,8 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 8815849029736207364} - - component: {fileID: 8264281895793262867} + - component: {fileID: 7909757205025274661} + - component: {fileID: 4497278534226153218} m_Layer: 0 m_Name: PlayerBallChild1 m_TagString: Untagged @@ -17,28 +17,28 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &8815849029736207364 +--- !u!4 &7909757205025274661 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2819221948576051598} + m_GameObject: {fileID: 324680519892629439} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1, y: 0, z: 0} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 394823601370723229} + m_Father: {fileID: 8978127728034846793} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &8264281895793262867 +--- !u!114 &4497278534226153218 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2819221948576051598} + m_GameObject: {fileID: 324680519892629439} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} @@ -72,7 +72,7 @@ MonoBehaviour: ExpandNetworkTransform: 1 RotationAxis: 2 RotationSpeed: 1.5 ---- !u!1 &3959781627078922459 +--- !u!1 &1574061277261592297 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -80,40 +80,37 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 394823601370723229} - - component: {fileID: 8231288296501785146} + - component: {fileID: 2851817463696415024} + - component: {fileID: 8353621747658706578} m_Layer: 0 - m_Name: PlayerBallPrime + m_Name: PlayerBallChild2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &394823601370723229 +--- !u!4 &2851817463696415024 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3959781627078922459} + m_GameObject: {fileID: 1574061277261592297} serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 1.25, y: 0, z: 0} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8815849029736207364} - - {fileID: 7136463849438099188} - - {fileID: 5551906405844277949} - m_Father: {fileID: 8921789205124766473} + m_Children: [] + m_Father: {fileID: 8978127728034846793} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &8231288296501785146 +--- !u!114 &8353621747658706578 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3959781627078922459} + m_GameObject: {fileID: 1574061277261592297} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} @@ -143,11 +140,11 @@ MonoBehaviour: SwitchTransformSpaceWhenParented: 0 Interpolate: 1 SlerpPosition: 1 - ExpandPlayerBallMotion: 1 + ExpandPlayerBallMotion: 0 ExpandNetworkTransform: 1 RotationAxis: 0 RotationSpeed: 1.5 ---- !u!1 &3973637191948275635 +--- !u!1 &3152047010790481352 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -155,9 +152,9 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 8797190989880117053} - - component: {fileID: 1956256172504790623} - - component: {fileID: 2171905566637076429} + - component: {fileID: 2530875210329125868} + - component: {fileID: 7166766943079311595} + - component: {fileID: 2218667139823191844} m_Layer: 0 m_Name: ParentedText m_TagString: Untagged @@ -165,28 +162,28 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &8797190989880117053 +--- !u!4 &2530875210329125868 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3973637191948275635} + m_GameObject: {fileID: 3152047010790481352} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1.91, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8921789205124766473} + m_Father: {fileID: 7209693128479548322} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!23 &1956256172504790623 +--- !u!23 &7166766943079311595 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3973637191948275635} + m_GameObject: {fileID: 3152047010790481352} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -225,14 +222,14 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!102 &2171905566637076429 +--- !u!102 &2218667139823191844 TextMesh: serializedVersion: 3 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3973637191948275635} + m_GameObject: {fileID: 3152047010790481352} m_Text: "Hello \nWorld" m_OffsetZ: 0 m_CharacterSize: 0.15 @@ -247,151 +244,7 @@ TextMesh: m_Color: serializedVersion: 2 rgba: 4294967295 ---- !u!1 &7133739606324490315 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5551906405844277949} - - component: {fileID: 6571689152541036907} - m_Layer: 0 - m_Name: PlayerBallChild3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5551906405844277949 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7133739606324490315} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 1} - m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 394823601370723229} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &6571689152541036907 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7133739606324490315} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 0 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 1 - SwitchTransformSpaceWhenParented: 0 - Interpolate: 1 - SlerpPosition: 1 - ExpandPlayerBallMotion: 1 - ExpandNetworkTransform: 1 - RotationAxis: 1 - RotationSpeed: 1.5 ---- !u!1 &7484009658662050968 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7136463849438099188} - - component: {fileID: 4424954456620528769} - m_Layer: 0 - m_Name: PlayerBallChild2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7136463849438099188 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7484009658662050968} - serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -1, y: 0, z: 0} - m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 394823601370723229} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &4424954456620528769 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7484009658662050968} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 - NetworkTransformExpanded: 0 - AuthorityMode: 1 - TickSyncChildren: 0 - UseUnreliableDeltas: 0 - SyncPositionX: 1 - SyncPositionY: 1 - SyncPositionZ: 1 - SyncRotAngleX: 1 - SyncRotAngleY: 1 - SyncRotAngleZ: 1 - SyncScaleX: 1 - SyncScaleY: 1 - SyncScaleZ: 1 - PositionThreshold: 0.001 - RotAngleThreshold: 0.01 - ScaleThreshold: 0.01 - UseQuaternionSynchronization: 1 - UseQuaternionCompression: 0 - UseHalfFloatPrecision: 0 - InLocalSpace: 1 - SwitchTransformSpaceWhenParented: 0 - Interpolate: 1 - SlerpPosition: 1 - ExpandPlayerBallMotion: 0 - ExpandNetworkTransform: 1 - RotationAxis: 0 - RotationSpeed: 1.5 ---- !u!1 &8837707216906300506 +--- !u!1 &3385537716926926172 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -399,8 +252,8 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 3256164543801378073} - - component: {fileID: 3232232006964461868} + - component: {fileID: 6528377011520223688} + - component: {fileID: 7760305833775493645} m_Layer: 0 m_Name: Direction m_TagString: Untagged @@ -408,28 +261,28 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &3256164543801378073 +--- !u!4 &6528377011520223688 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8837707216906300506} + m_GameObject: {fileID: 3385537716926926172} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0.529, z: 0.36} m_LocalScale: {x: 0.5, y: 0.35, z: 0.5} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8921789205124766473} + m_Father: {fileID: 7209693128479548322} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!65 &3232232006964461868 +--- !u!65 &7760305833775493645 BoxCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8837707216906300506} + m_GameObject: {fileID: 3385537716926926172} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 @@ -444,7 +297,7 @@ BoxCollider: serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} ---- !u!1 &8921789205124766477 +--- !u!1 &4710599683293591777 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -452,14 +305,14 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 8921789205124766473} - - component: {fileID: 8921789205124766478} - - component: {fileID: 3121348088455848731} - - component: {fileID: 8921789205124766474} - - component: {fileID: 871737567343884637} - - component: {fileID: 571224925323069553} - - component: {fileID: 2509722539211228765} - - component: {fileID: 7705318807709855696} + - component: {fileID: 7209693128479548322} + - component: {fileID: 2033351919148783259} + - component: {fileID: 1689822717476917681} + - component: {fileID: 6582615468703263770} + - component: {fileID: 996823777406759075} + - component: {fileID: 4107659158848356731} + - component: {fileID: 8869001495323625783} + - component: {fileID: 769922645502876198} m_Layer: 0 m_Name: ServerPlayer m_TagString: Player @@ -467,31 +320,31 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &8921789205124766473 +--- !u!4 &7209693128479548322 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 3256164543801378073} - - {fileID: 8797190989880117053} - - {fileID: 394823601370723229} + - {fileID: 6528377011520223688} + - {fileID: 2530875210329125868} + - {fileID: 8978127728034846793} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!136 &8921789205124766478 +--- !u!136 &2033351919148783259 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 @@ -508,13 +361,13 @@ CapsuleCollider: m_Height: 2 m_Direction: 1 m_Center: {x: 0, y: 0, z: 0} ---- !u!143 &3121348088455848731 +--- !u!143 &1689822717476917681 CharacterController: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 @@ -533,20 +386,20 @@ CharacterController: m_SkinWidth: 0.08 m_MinMoveDistance: 0.001 m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &8921789205124766474 +--- !u!114 &6582615468703263770 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} m_Name: m_EditorClassIdentifier: - GlobalObjectIdHash: 2257291590 - InScenePlacedSourceGlobalObjectIdHash: 0 + GlobalObjectIdHash: 2883015141 + InScenePlacedSourceGlobalObjectIdHash: 2508530451 DeferredDespawnTick: 0 Ownership: 0 AlwaysReplicateAsRoot: 0 @@ -558,13 +411,13 @@ MonoBehaviour: AutoObjectParentSync: 1 SyncOwnerTransformWhenParented: 0 AllowOwnerToParent: 1 ---- !u!114 &871737567343884637 +--- !u!114 &996823777406759075 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 8e5128237997be649af0cc87dd0eb563, type: 3} @@ -573,14 +426,14 @@ MonoBehaviour: ShowTopMostFoldoutHeaderGroup: 1 ApplyColorToChildren: 1 IgnoreChildren: - - {fileID: 8837707216906300506} ---- !u!114 &571224925323069553 + - {fileID: 3385537716926926172} +--- !u!114 &4107659158848356731 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5ce25b0b3f15e6446a88a85787c2f94a, type: 3} @@ -619,13 +472,13 @@ MonoBehaviour: AirSpeedFactor: 0.35 Gravity: -9.8 ContinualChildMotion: 1 ---- !u!65 &2509722539211228765 +--- !u!65 &8869001495323625783 BoxCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 @@ -640,16 +493,164 @@ BoxCollider: serializedVersion: 3 m_Size: {x: 1, y: 1.4, z: 1} m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &7705318807709855696 +--- !u!114 &769922645502876198 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8921789205124766477} + m_GameObject: {fileID: 4710599683293591777} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: bb9a9987a689bbe43a05463cf3713b22, type: 3} m_Name: m_EditorClassIdentifier: + ServerOnly: 1 UniqueLocalInstanceContent: ServerPlayer specific local content +--- !u!1 &7170742296219383225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5575000075487772256} + - component: {fileID: 974108613365902635} + m_Layer: 0 + m_Name: PlayerBallChild3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5575000075487772256 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7170742296219383225} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 1} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8978127728034846793} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &974108613365902635 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7170742296219383225} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 1 + RotationSpeed: 1.5 +--- !u!1 &9153294333356437960 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8978127728034846793} + - component: {fileID: 9124254747570484083} + m_Layer: 0 + m_Name: PlayerBallPrime + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8978127728034846793 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9153294333356437960} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.25, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7909757205025274661} + - {fileID: 2851817463696415024} + - {fileID: 5575000075487772256} + m_Father: {fileID: 7209693128479548322} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &9124254747570484083 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9153294333356437960} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 + NetworkTransformExpanded: 0 + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta index 9199f72759..c28eb79b02 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta +++ b/Examples/OverridingScenesAndPrefabs/Assets/Prefabs/ServerPlayer.prefab.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 8ae02ac62e2067144b8ff06d48aeb47a +guid: 90bfa3cd2cce8f14ead59b4dbdae92bb PrefabImporter: externalObjects: {} userData: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity index d2a1261edc..4c5e4f6a27 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity @@ -129,6 +129,7 @@ GameObject: m_Component: - component: {fileID: 455857870} - component: {fileID: 455857873} + - component: {fileID: 455857874} - component: {fileID: 455857872} - component: {fileID: 455857871} m_Layer: 0 @@ -198,7 +199,7 @@ MonoBehaviour: NetworkConfig: ProtocolVersion: 0 NetworkTransport: {fileID: 455857871} - PlayerPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + PlayerPrefab: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} Prefabs: NetworkPrefabsLists: - {fileID: 11400000, guid: 3d25a2b1f6c12ee47bf7601c2edd7e70, type: 2} @@ -224,7 +225,7 @@ MonoBehaviour: OldPrefabList: [] RunInBackground: 1 LogLevel: 1 - NetworkManagerBootstrapperExpanded: 0 + NetworkManagerBootstrapperExpanded: 1 TargetFrameRate: 100 EnableVSync: 0 m_OriginalVSyncCount: 1 @@ -240,6 +241,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: c4251d3d650053a419a5c503babb13a6, type: 3} m_Name: m_EditorClassIdentifier: + SceneBootstrapLoaderExpanded: 0 MainMenuSceneAsset: {fileID: 102900000, guid: 1ec6afcedd7df124e91af7bfbcea59b2, type: 3} ServerSceneDefines: DefaultActiveScene: SharedScene @@ -258,6 +260,20 @@ MonoBehaviour: LocalSceneAssets: - {fileID: 102900000, guid: d8ac305138d51a84dbbb734b81c4054e, type: 3} m_MainMenuScene: MainMenu +--- !u!114 &455857874 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c472ff64b067344893ed2e632d0f9f1, type: 3} + m_Name: + m_EditorClassIdentifier: + ClientNetworkPrefab: {fileID: 6472733969592893139, guid: 3e5167b6e6bcb5645abb2dbc0078091e, type: 3} + ServerNetworkPrefab: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity deleted file mode 100644 index e14f646ab6..0000000000 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity +++ /dev/null @@ -1,1435 +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: 10 - 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: 705507994} - m_UseRadianceAmbientProbe: 0 ---- !u!157 &3 -LightmapSettings: - m_ObjectHideFlags: 0 - serializedVersion: 13 - m_BakeOnSceneLoad: 0 - m_GISettings: - serializedVersion: 2 - m_BounceScale: 1 - m_IndirectOutputScale: 1 - m_AlbedoBoost: 1 - m_EnvironmentLightingMode: 0 - m_EnableBakedLightmaps: 1 - m_EnableRealtimeLightmaps: 0 - m_LightmapEditorSettings: - serializedVersion: 12 - m_Resolution: 2 - m_BakeResolution: 40 - m_AtlasSize: 1024 - m_AO: 0 - m_AOMaxDistance: 1 - m_CompAOExponent: 1 - m_CompAOExponentDirect: 0 - m_ExtractAmbientOcclusion: 0 - m_Padding: 2 - m_LightmapParameters: {fileID: 0} - m_LightmapsBakeMode: 1 - m_TextureCompression: 1 - m_ReflectionCompression: 2 - m_MixedBakeMode: 2 - m_BakeBackend: 1 - m_PVRSampling: 1 - m_PVRDirectSampleCount: 32 - m_PVRSampleCount: 500 - m_PVRBounces: 2 - m_PVREnvironmentSampleCount: 500 - m_PVREnvironmentReferencePointCount: 2048 - m_PVRFilteringMode: 2 - m_PVRDenoiserTypeDirect: 0 - m_PVRDenoiserTypeIndirect: 0 - m_PVRDenoiserTypeAO: 0 - m_PVRFilterTypeDirect: 0 - m_PVRFilterTypeIndirect: 0 - m_PVRFilterTypeAO: 0 - m_PVREnvironmentMIS: 0 - m_PVRCulling: 1 - m_PVRFilteringGaussRadiusDirect: 1 - m_PVRFilteringGaussRadiusIndirect: 5 - m_PVRFilteringGaussRadiusAO: 2 - m_PVRFilteringAtrousPositionSigmaDirect: 0.5 - m_PVRFilteringAtrousPositionSigmaIndirect: 2 - m_PVRFilteringAtrousPositionSigmaAO: 1 - m_ExportTrainingData: 0 - m_TrainingDataDestination: TrainingData - m_LightProbeSampleCountMultiplier: 4 - m_LightingDataAsset: {fileID: 0} - m_LightingSettings: {fileID: 0} ---- !u!196 &4 -NavMeshSettings: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_BuildSettings: - serializedVersion: 3 - 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 - buildHeightMesh: 0 - maxJobWorkers: 0 - preserveTilesOutsideBounds: 0 - debug: - m_Flags: 0 - m_NavMeshData: {fileID: 0} ---- !u!1 &28232985 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 28232986} - - component: {fileID: 28232988} - - component: {fileID: 28232987} - - component: {fileID: 28232989} - - component: {fileID: 28232990} - m_Layer: 5 - m_Name: ServerHostClientDisplay - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &28232986 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 28232985} - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 479361665} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: 0, y: 40} - m_SizeDelta: {x: 180, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &28232987 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 28232985} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, 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_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 23 - m_FontStyle: 1 - m_BestFit: 1 - m_MinSize: 1 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: ---- !u!222 &28232988 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 28232985} - m_CullTransparentMesh: 1 ---- !u!114 &28232989 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 28232985} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} - m_Name: - m_EditorClassIdentifier: - GlobalObjectIdHash: 2631381779 - InScenePlacedSourceGlobalObjectIdHash: 0 - DeferredDespawnTick: 0 - Ownership: 1 - AlwaysReplicateAsRoot: 0 - SynchronizeTransform: 1 - ActiveSceneSynchronization: 0 - SceneMigrationSynchronization: 1 - SpawnWithObservers: 1 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 - SyncOwnerTransformWhenParented: 1 - AllowOwnerToParent: 0 ---- !u!114 &28232990 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 28232985} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6637cd674efb56a48a3d4d545d23a8d3, type: 3} - m_Name: - m_EditorClassIdentifier: - ShowTopMostFoldoutHeaderGroup: 1 ---- !u!1001 &45185844 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotationSpeed - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: OnExitTransferParentOnStay - value: - objectReference: {fileID: 621748559} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: DontDeparentIfParentedByOtherBody - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: GlobalObjectIdHash - value: 1264507088 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: InScenePlacedSourceGlobalObjectIdHash - value: 1084435762 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.x - value: -60 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.y - value: -0.34 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.z - value: -49.1 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Name - value: StationaryBody-B - objectReference: {fileID: 0} - - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Size.z - value: 19.891119 - objectReference: {fileID: 0} - - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Center.x - value: -0.038006783 - objectReference: {fileID: 0} - - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Center.z - value: -0.13657665 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} ---- !u!1001 &66674670 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotationSpeed - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: OnExitTransferParentOnStay - value: - objectReference: {fileID: 520394643} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: DontDeparentIfParentedByOtherBody - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: GlobalObjectIdHash - value: 1708114892 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: InScenePlacedSourceGlobalObjectIdHash - value: 1084435762 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.x - value: -60 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.y - value: -0.34 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.z - value: -33.32 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Name - value: StationaryBody-A - objectReference: {fileID: 0} - - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Size.z - value: 19.906477 - objectReference: {fileID: 0} - - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Center.x - value: -0.038006783 - objectReference: {fileID: 0} - - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Center.z - value: 0.070830345 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} ---- !u!1 &455857869 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 455857870} - - component: {fileID: 455857875} - - component: {fileID: 455857871} - m_Layer: 0 - m_Name: ExtendedNetworkManager - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &455857870 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 455857869} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &455857871 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 455857869} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6960e84d07fb87f47956e7a81d71c4e6, type: 3} - m_Name: - m_EditorClassIdentifier: - m_ProtocolType: 0 - m_UseWebSockets: 0 - m_UseEncryption: 0 - m_MaxPacketQueueSize: 128 - m_MaxPayloadSize: 6144 - m_HeartbeatTimeoutMS: 500 - m_ConnectTimeoutMS: 1000 - m_MaxConnectAttempts: 60 - m_DisconnectTimeoutMS: 30000 - ConnectionData: - Address: 127.0.0.1 - Port: 7777 - ServerListenAddress: 127.0.0.1 - DebugSimulator: - PacketDelayMS: 0 - PacketJitterMS: 0 - PacketDropRate: 0 ---- !u!114 &455857875 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 455857869} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: e4d8d44c602b97b47ba488a40c66267c, type: 3} - m_Name: - m_EditorClassIdentifier: - NetworkManagerExpanded: 0 - NetworkConfig: - ProtocolVersion: 0 - NetworkTransport: {fileID: 455857871} - PlayerPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} - Prefabs: - NetworkPrefabsLists: - - {fileID: 11400000, guid: aa82390bfdde2564f828b8e5be375282, type: 2} - TickRate: 30 - ClientConnectionBufferTimeout: 10 - ConnectionApproval: 0 - ConnectionData: - EnableTimeResync: 0 - TimeResyncInterval: 30 - EnsureNetworkVariableLengthSafety: 0 - EnableSceneManagement: 1 - ForceSamePrefabs: 1 - RecycleNetworkIds: 1 - NetworkIdRecycleDelay: 120 - RpcHashSize: 0 - LoadSceneTimeOut: 120 - SpawnTimeout: 10 - EnableNetworkLogs: 1 - NetworkTopology: 0 - UseCMBService: 0 - AutoSpawnPlayerPrefabClientSide: 1 - NetworkProfilingMetrics: 1 - OldPrefabList: [] - RunInBackground: 1 - LogLevel: 1 - ExtendedNetworkManagerExpanded: 1 - ConnectionType: 1 - TargetFrameRate: 100 - EnableVSync: 0 - m_OriginalVSyncCount: 1 ---- !u!1 &479361661 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 479361665} - - component: {fileID: 479361664} - - component: {fileID: 479361663} - - component: {fileID: 479361662} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &479361662 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 479361661} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!114 &479361663 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 479361661} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, 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 - m_PresetInfoIsWorld: 0 ---- !u!223 &479361664 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 479361661} - 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_VertexColorAlwaysGammaSpace: 0 - m_AdditionalShaderChannelsFlag: 0 - m_UpdateRectTransformForStandalone: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!224 &479361665 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 479361661} - 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_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 28232986} - m_Father: {fileID: 0} - 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 &520394643 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - m_PrefabInstance: {fileID: 45185844} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &537610708 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 537610709} - m_Layer: 0 - m_Name: PointA - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &537610709 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 537610708} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 10.9, y: -0.34, z: 70} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &621748559 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - m_PrefabInstance: {fileID: 66674670} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &705507993 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 705507995} - - component: {fileID: 705507994} - 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 &705507994 -Light: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 705507993} - m_Enabled: 1 - serializedVersion: 11 - m_Type: 1 - m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} - m_Intensity: 1 - m_Range: 10 - m_SpotAngle: 30 - m_InnerSpotAngle: 21.80208 - m_CookieSize: 10 - m_Shadows: - m_Type: 2 - m_Resolution: -1 - m_CustomResolution: -1 - m_Strength: 1 - m_Bias: 0.05 - m_NormalBias: 0.4 - m_NearPlane: 0.2 - m_CullingMatrixOverride: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 - m_UseCullingMatrixOverride: 0 - m_Cookie: {fileID: 0} - m_DrawHalo: 0 - m_Flare: {fileID: 0} - m_RenderMode: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingLayerMask: 1 - m_Lightmapping: 1 - m_LightShadowCasterMode: 0 - m_AreaSize: {x: 1, y: 1} - m_BounceIntensity: 1 - m_ColorTemperature: 6570 - m_UseColorTemperature: 0 - m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} - m_UseBoundingSphereOverride: 0 - m_UseViewFrustumForShadowCasterCull: 1 - m_ForceVisible: 0 - m_ShadowRadius: 0 - m_ShadowAngle: 0 - m_LightUnit: 1 - m_LuxAtDistance: 1 - m_EnableSpotReflector: 1 ---- !u!4 &705507995 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 705507993} - serializedVersion: 2 - m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} - m_LocalPosition: {x: 0, y: 3, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} ---- !u!1001 &748186899 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalScale.x - value: 3 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalScale.z - value: 3 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalPosition.y - value: -0.25 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4012615692778511854, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} - propertyPath: m_Name - value: SceneLevelGeometry - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} ---- !u!1001 &857399335 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotationSpeed - value: 0.25 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotateDirection - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: GlobalObjectIdHash - value: 3713951295 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: InScenePlacedSourceGlobalObjectIdHash - value: 1084435762 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.x - value: -60.7 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.y - value: -0.34 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.z - value: 56.8 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Name - value: RotatingBody - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} ---- !u!1 &946793187 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 946793188} - m_Layer: 0 - m_Name: PointE - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &946793188 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 946793187} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 60.5, y: -0.34, z: 70} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &963194225 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 963194228} - - component: {fileID: 963194227} - - component: {fileID: 963194226} - m_Layer: 0 - m_Name: Main Camera - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!81 &963194226 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 963194225} - m_Enabled: 1 ---- !u!20 &963194227 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 963194225} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 2 - m_BackGroundColor: {r: 0.066037714, g: 0.066037714, b: 0.066037714, a: 0} - m_projectionMatrixMode: 1 - m_GateFitMode: 2 - m_FOVAxisMode: 0 - m_Iso: 200 - m_ShutterSpeed: 0.005 - m_Aperture: 16 - m_FocusDistance: 10 - m_FocalLength: 50 - m_BladeCount: 5 - m_Curvature: {x: 2, y: 11} - m_BarrelClipping: 0.25 - m_Anamorphism: 0 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - 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: -1 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - 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 &963194228 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 963194225} - serializedVersion: 2 - m_LocalRotation: {x: 0.15212336, y: 0, z: 0, w: 0.98836154} - m_LocalPosition: {x: 0, y: 4.5, z: -5.5} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 17.5, y: 0, z: 0} ---- !u!1 &1049334975 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1049334976} - m_Layer: 0 - m_Name: PointF - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1049334976 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1049334975} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 60.5, y: -0.34, z: -68.5} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1055951929 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1055951930} - m_Layer: 0 - m_Name: PointD - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1055951930 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1055951929} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 10.9, y: -0.34, z: -70} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1184702125 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1184702128} - - component: {fileID: 1184702127} - - component: {fileID: 1184702126} - m_Layer: 0 - m_Name: EventSystem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1184702126 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1184702125} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} - m_Name: - m_EditorClassIdentifier: - m_SendPointerHoverToParent: 1 - m_HorizontalAxis: Horizontal - m_VerticalAxis: Vertical - m_SubmitButton: Submit - m_CancelButton: Cancel - m_InputActionsPerSecond: 10 - m_RepeatDelay: 0.5 - m_ForceModuleActive: 0 ---- !u!114 &1184702127 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1184702125} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} - m_Name: - m_EditorClassIdentifier: - m_FirstSelected: {fileID: 0} - m_sendNavigationEvents: 1 - m_DragThreshold: 10 ---- !u!4 &1184702128 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1184702125} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1281267714 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1281267715} - m_Layer: 0 - m_Name: PointB - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1281267715 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1281267714} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 10.9, y: 40.6, z: 70} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &1591298748 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: ZAxisMove - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotationSpeed - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: PathMovement.Array.size - value: 4 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: 'PathMovement.Array.data[0]' - value: - objectReference: {fileID: 537610708} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: 'PathMovement.Array.data[1]' - value: - objectReference: {fileID: 1281267714} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: 'PathMovement.Array.data[2]' - value: - objectReference: {fileID: 1727671589} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: 'PathMovement.Array.data[3]' - value: - objectReference: {fileID: 1055951929} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: GlobalObjectIdHash - value: 3044060834 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: InScenePlacedSourceGlobalObjectIdHash - value: 1084435762 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.x - value: 10.9 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.y - value: -0.34 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.z - value: 70 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Name - value: 'ElevatorBody ' - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} ---- !u!1 &1727671589 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1727671590} - m_Layer: 0 - m_Name: PointC - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1727671590 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1727671589} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 10.9, y: 40.6, z: -70} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &1968567121 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: ZAxisMove - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotationSpeed - value: 0.3 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: PathMovement.Array.size - value: 2 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: RotatingBodyLogicExpanded - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: 'PathMovement.Array.data[0]' - value: - objectReference: {fileID: 946793187} - - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: 'PathMovement.Array.data[1]' - value: - objectReference: {fileID: 1049334975} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: GlobalObjectIdHash - value: 990014691 - objectReference: {fileID: 0} - - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: InScenePlacedSourceGlobalObjectIdHash - value: 1084435762 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.x - value: 60 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.y - value: -0.34 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalPosition.z - value: 70 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} - propertyPath: m_Name - value: MovingRotatingBody - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} ---- !u!1660057539 &9223372036854775807 -SceneRoots: - m_ObjectHideFlags: 0 - m_Roots: - - {fileID: 963194228} - - {fileID: 705507995} - - {fileID: 455857870} - - {fileID: 479361665} - - {fileID: 1184702128} - - {fileID: 748186899} - - {fileID: 857399335} - - {fileID: 66674670} - - {fileID: 45185844} - - {fileID: 1968567121} - - {fileID: 1591298748} - - {fileID: 537610709} - - {fileID: 1281267715} - - {fileID: 1727671590} - - {fileID: 1055951930} - - {fileID: 946793188} - - {fileID: 1049334976} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta deleted file mode 100644 index 5c41b642b8..0000000000 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/CharacterController.unity.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 49c1d63c81755ca4db7ed1753c1428fa -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset index 59747719f3..afdf3f97be 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/ProjectPrefabs.asset @@ -15,12 +15,12 @@ MonoBehaviour: IsDefault: 0 List: - Override: 0 - Prefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + Prefab: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} SourcePrefabToOverride: {fileID: 0} SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} - Override: 0 - Prefab: {fileID: 8921789205124766477, guid: a279f80620d4e6a4ab02c1a9c96ff460, type: 3} + Prefab: {fileID: 6472733969592893139, guid: 3e5167b6e6bcb5645abb2dbc0078091e, type: 3} SourcePrefabToOverride: {fileID: 0} SourceHashToOverride: 0 OverridingTargetPrefab: {fileID: 0} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity index 503b47cf22..1af0fa5fa5 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/SharedScene.unity @@ -155,7 +155,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: 0, y: 40} + m_AnchoredPosition: {x: 0, y: 20.5} m_SizeDelta: {x: 180, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &28232987 @@ -219,11 +219,11 @@ MonoBehaviour: AlwaysReplicateAsRoot: 0 SynchronizeTransform: 1 ActiveSceneSynchronization: 0 - SceneMigrationSynchronization: 1 + SceneMigrationSynchronization: 0 SpawnWithObservers: 1 - DontDestroyWithOwner: 0 - AutoObjectParentSync: 1 - SyncOwnerTransformWhenParented: 1 + DontDestroyWithOwner: 1 + AutoObjectParentSync: 0 + SyncOwnerTransformWhenParented: 0 AllowOwnerToParent: 0 --- !u!114 &28232990 MonoBehaviour: @@ -1321,71 +1321,6 @@ PrefabInstance: m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} ---- !u!1001 &2821485933210227544 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 248153197284761457, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: GlobalObjectIdHash - value: 2304782851 - objectReference: {fileID: 0} - - target: {fileID: 248153197284761457, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: InScenePlacedSourceGlobalObjectIdHash - value: 948245971 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7399658756277439218, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7542415007908852951, guid: cab3850a18c969d4caa82a6049175695, type: 3} - propertyPath: m_Name - value: PlayerPrefabOverrideHandler - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: cab3850a18c969d4caa82a6049175695, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 @@ -1394,7 +1329,6 @@ SceneRoots: - {fileID: 705507995} - {fileID: 479361665} - {fileID: 1184702128} - - {fileID: 2821485933210227544} - {fileID: 748186899} - {fileID: 857399335} - {fileID: 66674670} diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs index aa509c3e79..0372ce9e90 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs @@ -4,13 +4,20 @@ /// /// An example of how to get server or client specific behaviors without -/// directly using a . -/// The comments below explain a bit further. +/// directly using a but still associating +/// with a . /// public class InstanceTypeLocalBehavior : MonoBehaviour, INetworkUpdateSystem { + [Tooltip("When enabled, this will run only on a server or host.")] + public bool ServerOnly; + + [Tooltip("This is the unique message example text displayed when running locally.")] public string UniqueLocalInstanceContent; + private MoverScriptNoRigidbody m_MoverScriptNoRigidbody; + private NetworkManager m_NetworkManager; + private float m_NextTimeToLogMessage; private void Awake() { @@ -29,11 +36,16 @@ private void OnSpawnStatusChanged(bool spawned) { if (spawned) { - NetworkUpdateLoop.RegisterNetworkUpdate(this, NetworkUpdateStage.Update); + m_NetworkManager = m_MoverScriptNoRigidbody.NetworkManager; + if (ServerOnly && m_NetworkManager.IsServer) + { + NetworkUpdateLoop.RegisterNetworkUpdate(this, NetworkUpdateStage.Update); + } } else { NetworkUpdateLoop.UnregisterAllNetworkUpdates(this); + m_NetworkManager = null; } } @@ -45,14 +57,14 @@ public void NetworkUpdate(NetworkUpdateStage updateStage) } } - private float m_NextTimeToLog; + private void OnUpdate() { - if (m_NextTimeToLog < Time.realtimeSinceStartup) + if (m_NextTimeToLogMessage < Time.realtimeSinceStartup) { var serverClient = m_MoverScriptNoRigidbody.IsServer ? "Server" : "Client"; NetworkManagerBootstrapper.Instance.LogMessage($"[{Time.realtimeSinceStartup}][{serverClient}-{m_MoverScriptNoRigidbody.name}] {UniqueLocalInstanceContent}"); - m_NextTimeToLog = Time.realtimeSinceStartup + 5.0f; + m_NextTimeToLogMessage = Time.realtimeSinceStartup + 5.0f; } } } diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs index 8dfd2bc418..5c09ad4f37 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs @@ -149,8 +149,11 @@ protected override void OnNetworkPreSpawn(ref NetworkManager networkManager) /// protected override void OnNetworkPostSpawn() { - // Notify any client or server specific componant that this instance has spawned. - NotifySpawnStatusChanged?.Invoke(true); + // Authority of this object sends local notifications to any non-networkbehaviour subscribers + if (HasAuthority) + { + NotifySpawnStatusChanged?.Invoke(true); + } m_CharacterController.enabled = CanCommitToTransform; if (CanCommitToTransform) diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs index 5d9b13ef7d..85c9b918fc 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs @@ -1,6 +1,13 @@ +using System; using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; using Unity.Netcode; +using Unity.Services.Authentication; +using Unity.Services.Core; +using Unity.Services.Multiplayer; using UnityEngine; +using SessionState = Unity.Services.Multiplayer.SessionState; #region NetworkManagerBootstrapperEditor #if UNITY_EDITOR @@ -84,6 +91,17 @@ private enum ConnectionStates } private ConnectionStates m_ConnectionState; + private bool m_ServicesRegistered; + private ISession m_CurrentSession; + private string m_SessionName; + private string m_ProfileName; + private Task m_SessionTask; + + public static string GetRandomString(int length) + { + var r = new System.Random(); + return new string(Enumerable.Range(0, length).Select(_ => (char)r.Next('a', 'z')).ToArray()); + } public void SetFrameRate(int targetFrameRate, bool enableVsync) { @@ -97,13 +115,35 @@ private void Awake() SetFrameRate(TargetFrameRate, EnableVSync); SetSingleton(); m_SceneBootstrapLoader = GetComponent(); + + m_ServicesRegistered = CloudProjectSettings.organizationName != string.Empty && CloudProjectSettings.organizationId != string.Empty; } - private void Start() + private async void Start() { OnClientConnectedCallback += OnClientConnected; OnClientDisconnectCallback += OnClientDisconnect; OnConnectionEvent += OnClientConnectionEvent; + + // Check to see if the project has been registered with an organization before trying to sign in + if (m_ServicesRegistered) + { + if (UnityServices.Instance != null && UnityServices.Instance.State != ServicesInitializationState.Initialized) + { + await UnityServices.InitializeAsync(); + } + if (!AuthenticationService.Instance.IsSignedIn) + { + AuthenticationService.Instance.SignInFailed += SignInFailed; + AuthenticationService.Instance.SignedIn += SignedIn; + if (string.IsNullOrEmpty(m_ProfileName)) + { + m_ProfileName = GetRandomString(5); + } + AuthenticationService.Instance.SwitchProfile(m_ProfileName); + await AuthenticationService.Instance.SignInAnonymouslyAsync(); + } + } m_SceneBootstrapLoader.LoadMainMenu(); } @@ -114,6 +154,34 @@ private void OnDestroy() OnConnectionEvent -= OnClientConnectionEvent; } + + private void OnClientConnectionEvent(NetworkManager networkManager, ConnectionEventData eventData) + { + LogMessage($"[{Time.realtimeSinceStartup}] Connection event {eventData.EventType} for Client-{eventData.ClientId}."); + } + + private void OnClientConnected(ulong clientId) + { + LogMessage($"[{Time.realtimeSinceStartup}] Connected event invoked for Client-{clientId}."); + } + + private void OnClientDisconnect(ulong clientId) + { + LogMessage($"[{Time.realtimeSinceStartup}] Disconnected event invoked for Client-{clientId}."); + } + + private void SignedIn() + { + AuthenticationService.Instance.SignedIn -= SignedIn; + Debug.Log($"Signed in anonymously with profile {m_ProfileName}"); + } + + private void SignInFailed(RequestFailedException error) + { + AuthenticationService.Instance.SignInFailed -= SignInFailed; + Debug.LogError($"Failed to sign in {m_ProfileName} anonymously: {error}"); + } + private void SessionStarted() { OnClientStarted -= SessionStarted; @@ -139,38 +207,99 @@ private void SessionStopped(bool isHost) } } + public void StartOrConnectToDistributedAuthoritySession() + { + m_SessionTask = ConnectThroughLiveService(); + m_ConnectionState = ConnectionStates.Connecting; + LogMessage($"Connecting to session {m_SessionName}..."); + } + private void OnUpdateGUIDisconnected() { - GUILayout.BeginArea(new Rect(10, 10, 300, 800)); - if (GUILayout.Button("Start Server")) + var width = !m_ServicesRegistered ? 600 : 300; + GUILayout.BeginArea(new Rect(10, 10, width, 800)); + + if (NetworkConfig.NetworkTopology == NetworkTopologyTypes.DistributedAuthority) { - OnServerStopped += SessionStopped; - OnServerStarted += SessionStarted; - m_SceneBootstrapLoader.StartSession(true); - } + if (!m_ServicesRegistered) + { + GUILayout.Label("Project-Settings:Services-General-Settings is not configured."); + GUILayout.Label("Distributed authority requires project to be registered with your organization's services account for authentication purposes."); + } + else + { + m_SessionName = GUILayout.TextField(m_SessionName); - if (GUILayout.Button("Start Client")) + if (GUILayout.Button("Create or Connect To Session")) + { + NetworkConfig.UseCMBService = true; + OnClientStopped += SessionStopped; + OnClientStarted += SessionStarted; + m_SceneBootstrapLoader.StartSession(SceneBootstrapLoader.StartAsTypes.Client); + } + } + } + else { - OnClientStopped += SessionStopped; - OnClientStarted += SessionStarted; - m_SceneBootstrapLoader.StartSession(false); + if (GUILayout.Button("Start Server")) + { + OnServerStopped += SessionStopped; + OnServerStarted += SessionStarted; + m_SceneBootstrapLoader.StartSession(SceneBootstrapLoader.StartAsTypes.Server); + } + + if (GUILayout.Button("Start Host")) + { + OnServerStopped += SessionStopped; + OnServerStarted += SessionStarted; + m_SceneBootstrapLoader.StartSession(SceneBootstrapLoader.StartAsTypes.Host); + } + + if (GUILayout.Button("Start Client")) + { + OnClientStopped += SessionStopped; + OnClientStarted += SessionStarted; + m_SceneBootstrapLoader.StartSession(SceneBootstrapLoader.StartAsTypes.Client); + } } GUILayout.EndArea(); } - private void OnUpdateGUIConnected() + private int OnUpdateGUIConnected(int yAxisOffset) { GUILayout.BeginArea(new Rect(10, 10, 800, 800)); - GUILayout.Label($"Client-Server Session"); + if (CMBServiceConnection) + { + GUILayout.Label($"Distributed Authority Session: {m_SessionName}"); + if (LocalClient.IsSessionOwner) + { + GUILayout.Label("[Session Owner]"); + yAxisOffset += 20; + } + } + else + { + GUILayout.Label($"Client-Server Session"); + } GUILayout.EndArea(); GUILayout.BeginArea(new Rect(Display.main.renderingWidth - 160, 10, 150, 80)); - var endSessionText = IsServer ? "Shutdown" : "Disconnect"; + var endSessionText = IsServer && !DistributedAuthorityMode ? "Shutdown" : "Disconnect"; if (GUILayout.Button(endSessionText)) { - Shutdown(); + if (m_CurrentSession != null && m_CurrentSession.State == SessionState.Connected) + { + m_CurrentSession.LeaveAsync(); + m_CurrentSession = null; + } + else + { + Shutdown(); + } } GUILayout.EndArea(); + + return yAxisOffset; } private void OnGUI() @@ -186,8 +315,7 @@ private void OnGUI() } case ConnectionStates.Connected: { - yAxisOffset = 40; - OnUpdateGUIConnected(); + yAxisOffset = OnUpdateGUIConnected(40); break; } } @@ -206,14 +334,29 @@ private void OnGUI() GUILayout.EndArea(); } - /// - /// General update for client-side - /// - private void ClientSideUpdate() + + private async Task ConnectThroughLiveService() { + try + { + var options = new SessionOptions() + { + Name = m_SessionName, + MaxPlayers = 32 + }.WithDistributedAuthorityNetwork(); + m_CurrentSession = await MultiplayerService.Instance.CreateOrJoinSessionAsync(m_SessionName, options); + return m_CurrentSession; + } + catch (Exception e) + { + LogMessage($"{e.Message}"); + Debug.LogException(e); + } + return null; } + private Vector3 m_CameraOriginalPosition; private Quaternion m_CameraOriginalRotation; private int m_CurrentFollowPlayerIndex = -1; @@ -229,6 +372,8 @@ private void ResetMainCamera() } } + #region Update Methods and Properties + /// /// General update for server-side /// @@ -258,6 +403,15 @@ private void ServerSideUpdate() } } + + /// + /// General update for client-side + /// + private void ClientSideUpdate() + { + + } + private void Update() { if (IsListening) @@ -285,21 +439,10 @@ private void Update() } } } + #endregion - private void OnClientConnectionEvent(NetworkManager networkManager, ConnectionEventData eventData) - { - LogMessage($"[{Time.realtimeSinceStartup}] Connection event {eventData.EventType} for Client-{eventData.ClientId}."); - } - private void OnClientConnected(ulong clientId) - { - LogMessage($"[{Time.realtimeSinceStartup}] Connected event invoked for Client-{clientId}."); - } - - private void OnClientDisconnect(ulong clientId) - { - LogMessage($"[{Time.realtimeSinceStartup}] Disconnected event invoked for Client-{clientId}."); - } + #region Message Logging Methods and Properties private List m_MessageLogs = new List(); @@ -328,6 +471,7 @@ public void LogMessage(string msg, float timeToLive = 10.0f) Debug.Log(msg); } + #endregion public NetworkManagerBootstrapper() { diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs index 6d7a9034a6..5b5acef937 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs @@ -10,25 +10,26 @@ /// needs to have code within the component to account for /// any missing dependencies. /// -public class NetworkPrefabOverrideHandler : NetworkBehaviour, INetworkPrefabInstanceHandler +[RequireComponent(typeof(NetworkManager))] +[RequireComponent(typeof(NetworkPrefabOverrideHandler))] +public class NetworkPrefabOverrideHandler : MonoBehaviour, INetworkPrefabInstanceHandler { public GameObject ClientNetworkPrefab; public GameObject ServerNetworkPrefab; - public override void OnNetworkSpawn() + private NetworkManager m_NetworkManager; + + private void Start() { - // Register the server network prefab since server is handling spawning - if (NetworkManager && NetworkManager.PrefabHandler != null) - { - NetworkManager.PrefabHandler.AddHandler(ServerNetworkPrefab, this); - } + m_NetworkManager = GetComponent(); + m_NetworkManager.PrefabHandler.AddHandler(ServerNetworkPrefab, this); + NetworkManager.OnDestroying += NetworkManager_OnDestroying; } - public override void OnNetworkDespawn() + private void NetworkManager_OnDestroying(NetworkManager obj) { - NetworkManager.PrefabHandler.RemoveHandler(ServerNetworkPrefab); - base.OnNetworkDespawn(); + m_NetworkManager.PrefabHandler.RemoveHandler(ServerNetworkPrefab); } /// @@ -42,7 +43,7 @@ public override void OnNetworkDespawn() /// public NetworkObject Instantiate(ulong ownerClientId, Vector3 position, Quaternion rotation) { - var gameObject = IsServer ? Instantiate(ServerNetworkPrefab) : Instantiate(ClientNetworkPrefab); + var gameObject = m_NetworkManager.IsClient ? Instantiate(ClientNetworkPrefab) : Instantiate(ServerNetworkPrefab); // You could integrate spawn locations here and on the server side apply the spawn position at // this stage of the spawn process. gameObject.transform.position = position; diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs index 91eb4cdfd2..328635318b 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs @@ -35,7 +35,7 @@ public override void OnNetworkSpawn() if (IsLocalPlayer) { - var gameObject = GameObject.Find("ServerHostClientDisplay"); + var gameObject = FindAnyObjectByType(); if (gameObject != null) { var serverHost = gameObject.GetComponent(); diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs index 6dcca78cb7..938b6fc09b 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs @@ -3,12 +3,51 @@ using System.Collections; using System.Collections.Generic; using Unity.Netcode; -#if UNITY_EDITOR -using UnityEditor; -#endif + using UnityEngine; using UnityEngine.SceneManagement; +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(SceneBootstrapLoader), true)] +[CanEditMultipleObjects] +public class SceneBootstrapLoaderEditor : NetcodeEditorBase +{ + private SerializedProperty m_ServerSceneDefines; + private SerializedProperty m_ClientSceneDefines; + + public override void OnEnable() + { + m_ServerSceneDefines = serializedObject.FindProperty(nameof(SceneBootstrapLoader.ServerSceneDefines)); + m_ClientSceneDefines = serializedObject.FindProperty(nameof(SceneBootstrapLoader.ClientSceneDefines)); + base.OnEnable(); + } + + private void DisplaySceneBootstrapLoaderProperties() + { + var sceneBootstrapLoader = target as SceneBootstrapLoader; + var networkManager = sceneBootstrapLoader.GetComponent(); + if (networkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer) + { + EditorGUILayout.PropertyField(m_ServerSceneDefines); + } + EditorGUILayout.PropertyField(m_ClientSceneDefines); + } + + public override void OnInspectorGUI() + { + var sceneBootstrapLoader = target as SceneBootstrapLoader; + void SetExpanded(bool expanded) { sceneBootstrapLoader.SceneBootstrapLoaderExpanded = expanded; }; + DrawFoldOutGroup(sceneBootstrapLoader.GetType(), DisplaySceneBootstrapLoaderProperties, sceneBootstrapLoader.SceneBootstrapLoaderExpanded, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif /// /// Example of how to control scene loading using a additive client @@ -18,9 +57,15 @@ /// This component should be added to the same GameObject that the component /// is attached to (for this example we extended to ). /// +[RequireComponent(typeof(NetworkManager))] +[RequireComponent(typeof(SceneBootstrapLoader))] public class SceneBootstrapLoader : MonoBehaviour { #if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool SceneBootstrapLoaderExpanded; + [Tooltip("The main menu or out of session scene to load.")] public SceneAsset MainMenuSceneAsset; @@ -33,7 +78,11 @@ private void OnValidate() { m_MainMenuScene = MainMenuSceneAsset.name; } - ServerSceneDefines.Validate(); + var networkManager = GetComponent(); + if (networkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer) + { + ServerSceneDefines.Validate(); + } ClientSceneDefines.Validate(); } #endif @@ -72,14 +121,21 @@ public void LoadMainMenu() } } + public enum StartAsTypes + { + Server, + Host, + Client + } + /// /// Invoked by the when /// starting a client or server. /// /// - public void StartSession(bool startAsServer) + public void StartSession(StartAsTypes startAsType) { - StartCoroutine(PreSceneLoading(startAsServer)); + StartCoroutine(PreSceneLoading(startAsType)); } /// @@ -91,9 +147,12 @@ private void OnNetworkManagerShutdown(bool wasHost) } #region SCENE PRE & POST START LOADING METHODS - private IEnumerator PreSceneLoading(bool isServer) + + + + private IEnumerator PreSceneLoading(StartAsTypes startAsType) { - var sceneDefines = !isServer ? ClientSceneDefines : ServerSceneDefines; + var sceneDefines = startAsType == StartAsTypes.Client ? ClientSceneDefines : ServerSceneDefines; SceneManager.sceneLoaded += SceneLoaded; // Unloads any currently loaded scenes and becomes the default active scene. @@ -106,21 +165,69 @@ private IEnumerator PreSceneLoading(bool isServer) { yield return HandleSceneLoading(sceneName, LoadSceneMode.Additive); } + + // When running as a host, we load the client scenes too + if (startAsType == StartAsTypes.Host) + { + foreach (var sceneName in ClientSceneDefines.LocalScenes) + { + yield return HandleSceneLoading(sceneName, LoadSceneMode.Additive); + } + } + SceneManager.sceneLoaded -= SceneLoaded; // Now start the NetworkManager (server or client) - if (isServer) + if (startAsType != StartAsTypes.Client && m_NetworkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer) { // Server needs to do some additional congiruations to ignore the local scene loaded and // will load any additional shared and synchronized scenes via the NetworkSceneManager. m_NetworkManager.OnServerStarted += OnServerStarted; m_NetworkManager.OnServerStopped += OnNetworkManagerShutdown; - m_NetworkManager.StartServer(); + if (startAsType == StartAsTypes.Server) + { + m_NetworkManager.StartServer(); + } + else + { + m_NetworkManager.StartHost(); + } } else { m_NetworkManager.OnClientStopped += OnNetworkManagerShutdown; - m_NetworkManager.StartClient(); + + // Distributed authority needs to start using the service and needs to know when the client becomes + // the session owner. + if (m_NetworkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.DistributedAuthority) + { + m_NetworkManager.OnSessionOwnerPromoted += OnSessionOwnerPromoted; + m_NetworkManager.StartOrConnectToDistributedAuthoritySession(); + } + else + { + m_NetworkManager.StartClient(); + } + } + } + + /// + /// When the session owner is promoted, it needs to configure itself for the additive client synchronization + /// and handle scene validations. + /// + /// + private void OnSessionOwnerPromoted(ulong sessionOwnerPromoted) + { + if (sessionOwnerPromoted == m_NetworkManager.LocalClientId) + { + // When we set the client synchronization mode to additive, the session owner will include this setting + // setting when synchronizing a newly joining client and the client will use any already loaded scenes + // that the session owner determines should be synchronized. If a scene that is being synchronized is not + // yet loaded, then the client will load that scene. + m_NetworkManager.SceneManager.SetClientSynchronizationMode(LoadSceneMode.Additive); + + // Add a callback to control which scene the session owner synchronizes with clients + m_NetworkManager.SceneManager.VerifySceneBeforeLoading = SessionOwnerVerifySceneShouldBeSynchronized; } } @@ -167,6 +274,7 @@ private void SceneLoaded(Scene scene, LoadSceneMode loadSceneMode) private void OnServerStarted() { m_NetworkManager.OnServerStarted -= OnServerStarted; + // When we set the client synchronization mode to additive, the server will include this setting // when synchronizing a client and the client will use any already loaded scenes that the server // wants to synchronize. If a scene that is being synchronized is not yet loaded, then the client @@ -193,6 +301,24 @@ private bool ServerVerifySceneShouldBeSynchronized(int sceneIndex, string sceneN return !ServerSceneDefines.LocalScenes.Contains(sceneName); } + /// + /// When a client is first synchronized, the session owner will determine what scenes it should synchronize with the + /// client. This callback is invoked for every scene currently loaded and if it returns false then it will not + /// attempt to synchronize the scene with the client being synchronized. + /// + /// + /// We use the for distributed authority to just exclude scenes that are already preloaded. + /// This is optional and semi-redundant since in a distributed network topology state is mirrored across all clients and + /// having locally loaded scenes not synchronized just limits where spawned objects can be migrated. + /// This is just for example purposes in the event you might need platform specific scenes loaded on a per client basis and/or + /// have some other project specific need to have locally loaded scenes that are not synchronized between all connected clients. + /// The recommended design for a distributed authority network topology is to just synchronize all scenes if possible. + /// + private bool SessionOwnerVerifySceneShouldBeSynchronized(int sceneIndex, string sceneName, LoadSceneMode loadSceneMode) + { + return !ClientSceneDefines.LocalScenes.Contains(sceneName); + } + private IEnumerator ServerLoadAdditionalSharedScenes() { diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs index e2ff41dfa6..6fbe82e5e4 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs @@ -8,7 +8,7 @@ public class ServerHostClientText : NetworkBehaviour private Color m_Color; private Color m_ColorAlpha; - private Vector3 m_LocalPosition; + private Vector3 m_AnchoredPosition; public void SetColor(Color color) { @@ -19,7 +19,7 @@ public void SetColor(Color color) private void Awake() { - m_LocalPosition = transform.localPosition; + m_AnchoredPosition = (transform as RectTransform).anchoredPosition3D; m_DisplayText = GetComponent(); } @@ -45,7 +45,8 @@ public override void OnNetworkSpawn() m_DisplayText.text = $"Client-{NetworkManager.LocalClientId}"; } } - transform.localPosition = m_LocalPosition; + (transform as RectTransform).anchoredPosition3D = m_AnchoredPosition; + base.OnNetworkSpawn(); } public override void OnNetworkDespawn() diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/ClusterInputManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/ClusterInputManager.asset new file mode 100644 index 0000000000..e7886b266a --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/ClusterInputManager.asset @@ -0,0 +1,6 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!236 &1 +ClusterInputManager: + m_ObjectHideFlags: 0 + m_Inputs: [] diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/DynamicsManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/DynamicsManager.asset new file mode 100644 index 0000000000..735596aed0 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/DynamicsManager.asset @@ -0,0 +1,37 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!55 &1 +PhysicsManager: + m_ObjectHideFlags: 0 + serializedVersion: 17 + m_Gravity: {x: 0, y: -9.81, z: 0} + m_DefaultMaterial: {fileID: 0} + m_BounceThreshold: 2 + m_DefaultMaxDepenetrationVelocity: 10 + m_SleepThreshold: 0.005 + m_DefaultContactOffset: 0.01 + m_DefaultSolverIterations: 6 + m_DefaultSolverVelocityIterations: 1 + m_QueriesHitBackfaces: 0 + m_QueriesHitTriggers: 1 + m_EnableAdaptiveForce: 0 + m_ClothInterCollisionDistance: 0.1 + m_ClothInterCollisionStiffness: 0.2 + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + m_SimulationMode: 0 + m_AutoSyncTransforms: 0 + m_ReuseCollisionCallbacks: 0 + m_InvokeCollisionCallbacks: 1 + m_ClothInterCollisionSettingsToggle: 0 + m_ClothGravity: {x: 0, y: -9.81, z: 0} + m_ContactPairsMode: 0 + m_BroadphaseType: 0 + m_FrictionType: 0 + m_EnableEnhancedDeterminism: 0 + m_EnableUnifiedHeightmaps: 1 + m_ImprovedPatchFriction: 0 + m_SolverType: 0 + m_DefaultMaxAngularSpeed: 50 + m_ScratchBufferChunkCount: 4 + m_CurrentBackendId: 4072204805 + m_FastMotionThreshold: 3.4028235e+38 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorSettings.asset new file mode 100644 index 0000000000..75d7ca8478 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/EditorSettings.asset @@ -0,0 +1,48 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!159 &1 +EditorSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_SerializationMode: 2 + m_LineEndingsForNewScripts: 2 + m_DefaultBehaviorMode: 0 + m_PrefabRegularEnvironment: {fileID: 0} + m_PrefabUIEnvironment: {fileID: 0} + m_SpritePackerMode: 0 + m_SpritePackerCacheSize: 10 + m_SpritePackerPaddingPower: 1 + m_Bc7TextureCompressor: 0 + m_EtcTextureCompressorBehavior: 1 + m_EtcTextureFastCompressor: 1 + m_EtcTextureNormalCompressor: 2 + m_EtcTextureBestCompressor: 4 + m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp;java;cpp;c;mm;m;h + m_ProjectGenerationRootNamespace: + m_EnableTextureStreamingInEditMode: 1 + m_EnableTextureStreamingInPlayMode: 1 + m_EnableEditorAsyncCPUTextureLoading: 0 + m_AsyncShaderCompilation: 1 + m_PrefabModeAllowAutoSave: 1 + m_EnterPlayModeOptionsEnabled: 1 + m_EnterPlayModeOptions: 0 + m_GameObjectNamingDigits: 1 + m_GameObjectNamingScheme: 0 + m_AssetNamingUsesSpace: 1 + m_InspectorUseIMGUIDefaultInspector: 0 + m_UseLegacyProbeSampleCount: 0 + m_SerializeInlineMappingsOnOneLine: 1 + m_DisableCookiesInLightmapper: 0 + m_AssetPipelineMode: 1 + m_RefreshImportMode: 0 + m_CacheServerMode: 0 + m_CacheServerEndpoint: + m_CacheServerNamespacePrefix: default + m_CacheServerEnableDownload: 1 + m_CacheServerEnableUpload: 1 + m_CacheServerEnableAuth: 0 + m_CacheServerEnableTls: 0 + m_CacheServerValidationMode: 2 + m_CacheServerDownloadBatchSize: 128 + m_EnableEnlightenBakedGI: 0 + m_ReferencedClipsExactNaming: 1 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/GraphicsSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/GraphicsSettings.asset new file mode 100644 index 0000000000..7c0ea0b5c3 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/GraphicsSettings.asset @@ -0,0 +1,66 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!30 &1 +GraphicsSettings: + m_ObjectHideFlags: 0 + serializedVersion: 16 + m_Deferred: + m_Mode: 1 + m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} + m_DeferredReflections: + m_Mode: 1 + m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} + m_ScreenSpaceShadows: + m_Mode: 1 + m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} + m_DepthNormals: + m_Mode: 1 + m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} + m_MotionVectors: + m_Mode: 1 + m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} + m_LightHalo: + m_Mode: 1 + m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} + m_LensFlare: + m_Mode: 1 + m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} + m_VideoShadersIncludeMode: 2 + m_AlwaysIncludedShaders: + - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} + m_PreloadedShaders: [] + m_PreloadShadersBatchTimeLimit: -1 + m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_CustomRenderPipeline: {fileID: 0} + m_TransparencySortMode: 0 + m_TransparencySortAxis: {x: 0, y: 0, z: 1} + m_DefaultRenderingPath: 1 + m_DefaultMobileRenderingPath: 1 + m_TierSettings: [] + m_LightmapStripping: 0 + m_FogStripping: 0 + m_InstancingStripping: 0 + m_BrgStripping: 0 + m_LightmapKeepPlain: 1 + m_LightmapKeepDirCombined: 1 + m_LightmapKeepDynamicPlain: 1 + m_LightmapKeepDynamicDirCombined: 1 + m_LightmapKeepShadowMask: 1 + m_LightmapKeepSubtractive: 1 + m_FogKeepLinear: 1 + m_FogKeepExp: 1 + m_FogKeepExp2: 1 + m_AlbedoSwatchInfos: [] + m_RenderPipelineGlobalSettingsMap: {} + m_LightsUseLinearIntensity: 0 + m_LightsUseColorTemperature: 0 + m_LogWhenShaderIsCompiled: 0 + m_LightProbeOutsideHullStrategy: 1 + m_CameraRelativeLightCulling: 0 + m_CameraRelativeShadowCulling: 0 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/InputManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/InputManager.asset new file mode 100644 index 0000000000..8068b2058b --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/InputManager.asset @@ -0,0 +1,296 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!13 &1 +InputManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Axes: + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: left + positiveButton: right + altNegativeButton: a + altPositiveButton: d + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: down + positiveButton: up + altNegativeButton: s + altPositiveButton: w + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left ctrl + altNegativeButton: + altPositiveButton: mouse 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left alt + altNegativeButton: + altPositiveButton: mouse 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left shift + altNegativeButton: + altPositiveButton: mouse 2 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: space + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse X + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse Y + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse ScrollWheel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 2 + joyNum: 0 + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 1 + type: 2 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 0 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 1 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 2 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 3 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: return + altNegativeButton: + altPositiveButton: joystick button 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: enter + altNegativeButton: + altPositiveButton: space + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Cancel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + m_UsePhysicalKeys: 1 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/MemorySettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/MemorySettings.asset new file mode 100644 index 0000000000..5b5facecac --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/MemorySettings.asset @@ -0,0 +1,35 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!387306366 &1 +MemorySettings: + m_ObjectHideFlags: 0 + m_EditorMemorySettings: + m_MainAllocatorBlockSize: -1 + m_ThreadAllocatorBlockSize: -1 + m_MainGfxBlockSize: -1 + m_ThreadGfxBlockSize: -1 + m_CacheBlockSize: -1 + m_TypetreeBlockSize: -1 + m_ProfilerBlockSize: -1 + m_ProfilerEditorBlockSize: -1 + m_BucketAllocatorGranularity: -1 + m_BucketAllocatorBucketsCount: -1 + m_BucketAllocatorBlockSize: -1 + m_BucketAllocatorBlockCount: -1 + m_ProfilerBucketAllocatorGranularity: -1 + m_ProfilerBucketAllocatorBucketsCount: -1 + m_ProfilerBucketAllocatorBlockSize: -1 + m_ProfilerBucketAllocatorBlockCount: -1 + m_TempAllocatorSizeMain: -1 + m_JobTempAllocatorBlockSize: -1 + m_BackgroundJobTempAllocatorBlockSize: -1 + m_JobTempAllocatorReducedBlockSize: -1 + m_TempAllocatorSizeGIBakingWorker: -1 + m_TempAllocatorSizeNavMeshWorker: -1 + m_TempAllocatorSizeAudioWorker: -1 + m_TempAllocatorSizeCloudWorker: -1 + m_TempAllocatorSizeGfx: -1 + m_TempAllocatorSizeJobWorker: -1 + m_TempAllocatorSizeBackgroundWorker: -1 + m_TempAllocatorSizePreloadManager: -1 + m_PlatformMemorySettings: {} diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/MultiplayerManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/MultiplayerManager.asset new file mode 100644 index 0000000000..2a936644e0 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/MultiplayerManager.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!655991488 &1 +MultiplayerManager: + m_ObjectHideFlags: 0 + m_EnableMultiplayerRoles: 0 + m_StrippingTypes: {} diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/NavMeshAreas.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/NavMeshAreas.asset new file mode 100644 index 0000000000..2e2e36968e --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/NavMeshAreas.asset @@ -0,0 +1,93 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!126 &1 +NavMeshProjectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + areas: + - name: Walkable + cost: 1 + - name: Not Walkable + cost: 1 + - name: Jump + cost: 2 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + m_LastAgentTypeID: -887442657 + m_Settings: + - serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.75 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_SettingNames: + - Humanoid diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/Physics2DSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/Physics2DSettings.asset new file mode 100644 index 0000000000..c00eeb46fd --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/Physics2DSettings.asset @@ -0,0 +1,56 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!19 &1 +Physics2DSettings: + m_ObjectHideFlags: 0 + serializedVersion: 6 + m_Gravity: {x: 0, y: -9.81} + m_DefaultMaterial: {fileID: 0} + m_VelocityIterations: 8 + m_PositionIterations: 3 + m_BounceThreshold: 1 + m_MaxLinearCorrection: 0.2 + m_MaxAngularCorrection: 8 + m_MaxTranslationSpeed: 100 + m_MaxRotationSpeed: 360 + m_BaumgarteScale: 0.2 + m_BaumgarteTimeOfImpactScale: 0.75 + m_TimeToSleep: 0.5 + m_LinearSleepTolerance: 0.01 + m_AngularSleepTolerance: 2 + m_DefaultContactOffset: 0.01 + m_ContactThreshold: 0 + m_JobOptions: + serializedVersion: 2 + useMultithreading: 0 + useConsistencySorting: 0 + m_InterpolationPosesPerJob: 100 + m_NewContactsPerJob: 30 + m_CollideContactsPerJob: 100 + m_ClearFlagsPerJob: 200 + m_ClearBodyForcesPerJob: 200 + m_SyncDiscreteFixturesPerJob: 50 + m_SyncContinuousFixturesPerJob: 50 + m_FindNearestContactsPerJob: 100 + m_UpdateTriggerContactsPerJob: 100 + m_IslandSolverCostThreshold: 100 + m_IslandSolverBodyCostScale: 1 + m_IslandSolverContactCostScale: 10 + m_IslandSolverJointCostScale: 10 + m_IslandSolverBodiesPerJob: 50 + m_IslandSolverContactsPerJob: 50 + m_SimulationMode: 0 + m_SimulationLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_MaxSubStepCount: 4 + m_MinSubStepFPS: 30 + m_UseSubStepping: 0 + m_UseSubStepContacts: 0 + m_QueriesHitTriggers: 1 + m_QueriesStartInColliders: 1 + m_CallbacksOnDisable: 1 + m_ReuseCollisionCallbacks: 1 + m_AutoSyncTransforms: 0 + m_GizmoOptions: 10 + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/PresetManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/PresetManager.asset new file mode 100644 index 0000000000..67a94daefe --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/PresetManager.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1386491679 &1 +PresetManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_DefaultPresets: {} diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset index 9910243ac7..7894df05ea 100644 --- a/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/ProjectSettings.asset @@ -13,7 +13,7 @@ PlayerSettings: useOnDemandResources: 0 accelerometerFrequency: 60 companyName: Unity Software - productName: SceneAndAssetManagement + productName: OverridingScenesAndPrefabs defaultCursor: {fileID: 0} cursorHotspot: {x: 0, y: 0} m_SplashScreenBackgroundColor: {r: 0.12156863, g: 0.12156863, b: 0.1254902, a: 1} diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/QualitySettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/QualitySettings.asset new file mode 100644 index 0000000000..8e158d62c6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/QualitySettings.asset @@ -0,0 +1,340 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!47 &1 +QualitySettings: + m_ObjectHideFlags: 0 + serializedVersion: 5 + m_CurrentQuality: 5 + m_QualitySettings: + - serializedVersion: 4 + name: Very Low + pixelLightCount: 0 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 15 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + skinWeights: 1 + globalTextureMipmapLimit: 1 + textureMipmapLimitSettings: [] + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 0 + adaptiveVsync: 0 + vSyncCount: 0 + realtimeGICPUUsage: 25 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 0.3 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 4 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] + - serializedVersion: 4 + name: Low + pixelLightCount: 0 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 20 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + skinWeights: 2 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 0 + adaptiveVsync: 0 + vSyncCount: 0 + realtimeGICPUUsage: 25 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 0.4 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 16 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] + - serializedVersion: 4 + name: Medium + pixelLightCount: 1 + shadows: 1 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 20 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + skinWeights: 2 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 1 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 0 + adaptiveVsync: 0 + vSyncCount: 1 + realtimeGICPUUsage: 25 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 0.7 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 64 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] + - serializedVersion: 4 + name: High + pixelLightCount: 2 + shadows: 2 + shadowResolution: 1 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 40 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + skinWeights: 2 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 1 + antiAliasing: 0 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 0 + adaptiveVsync: 0 + vSyncCount: 1 + realtimeGICPUUsage: 50 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 1 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 256 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] + - serializedVersion: 4 + name: Very High + pixelLightCount: 3 + shadows: 2 + shadowResolution: 2 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 70 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + skinWeights: 4 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 2 + antiAliasing: 2 + softParticles: 1 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 0 + adaptiveVsync: 0 + vSyncCount: 1 + realtimeGICPUUsage: 50 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 1.5 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 1024 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] + - serializedVersion: 4 + name: Ultra + pixelLightCount: 4 + shadows: 2 + shadowResolution: 2 + shadowProjection: 1 + shadowCascades: 4 + shadowDistance: 150 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + skinWeights: 255 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 2 + antiAliasing: 2 + softParticles: 1 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 0 + adaptiveVsync: 0 + vSyncCount: 1 + realtimeGICPUUsage: 100 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 2 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 4096 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: [] + m_TextureMipmapLimitGroupNames: [] + m_PerPlatformDefaultQuality: + Android: 2 + EmbeddedLinux: 5 + GameCoreScarlett: 5 + GameCoreXboxOne: 5 + LinuxHeadlessSimulation: 5 + Nintendo Switch: 5 + PS4: 5 + PS5: 5 + QNX: 5 + ReservedCFE: 5 + Server: 5 + Standalone: 5 + VisionOS: 5 + WebGL: 3 + Windows Store Apps: 5 + XboxOne: 5 + iPhone: 2 + tvOS: 2 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/TimeManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/TimeManager.asset new file mode 100644 index 0000000000..8f68da289f --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/TimeManager.asset @@ -0,0 +1,13 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!5 &1 +TimeManager: + m_ObjectHideFlags: 0 + Fixed Timestep: + m_Count: 2822399 + m_Rate: + m_Denominator: 1 + m_Numerator: 141120000 + Maximum Allowed Timestep: 0.33333334 + m_TimeScale: 1 + Maximum Particle Timestep: 0.03 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/UnityConnectSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/UnityConnectSettings.asset new file mode 100644 index 0000000000..2d81664be6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/UnityConnectSettings.asset @@ -0,0 +1,36 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!310 &1 +UnityConnectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 1 + m_Enabled: 1 + m_TestMode: 0 + m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events + m_EventUrl: https://cdp.cloud.unity3d.com/v1/events + m_ConfigUrl: https://config.uca.cloud.unity3d.com + m_DashboardUrl: https://dashboard.unity3d.com + m_TestInitMode: 0 + CrashReportingSettings: + m_EventUrl: https://perf-events.cloud.unity3d.com + m_Enabled: 0 + m_LogBufferSize: 10 + m_CaptureEditorExceptions: 1 + UnityPurchasingSettings: + m_Enabled: 0 + m_TestMode: 0 + UnityAnalyticsSettings: + m_Enabled: 0 + m_TestMode: 0 + m_InitializeOnStartup: 1 + m_PackageRequiringCoreStatsPresent: 1 + UnityAdsSettings: + m_Enabled: 0 + m_InitializeOnStartup: 1 + m_TestMode: 0 + m_IosGameId: + m_AndroidGameId: + m_GameIds: {} + m_GameId: + PerformanceReportingSettings: + m_Enabled: 0 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/VFXManager.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/VFXManager.asset new file mode 100644 index 0000000000..a2a4a97a2f --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/VFXManager.asset @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!937362698 &1 +VFXManager: + m_ObjectHideFlags: 0 + m_IndirectShader: {fileID: 0} + m_CopyBufferShader: {fileID: 0} + m_SortShader: {fileID: 0} + m_StripUpdateShader: {fileID: 0} + m_EmptyShader: {fileID: 0} + m_RenderPipeSettingsPath: + m_FixedTimeStep: 0.016666668 + m_MaxDeltaTime: 0.05 + m_MaxScrubTime: 30 + m_MaxCapacity: 100000000 + m_CompiledVersion: 0 + m_RuntimeVersion: 0 + m_RuntimeResources: {fileID: 0} + m_BatchEmptyLifetime: 300 diff --git a/Examples/OverridingScenesAndPrefabs/ProjectSettings/VersionControlSettings.asset b/Examples/OverridingScenesAndPrefabs/ProjectSettings/VersionControlSettings.asset new file mode 100644 index 0000000000..979fd8eca8 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/ProjectSettings/VersionControlSettings.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!890905787 &1 +VersionControlSettings: + m_ObjectHideFlags: 0 + m_Mode: Visible Meta Files + m_TrackPackagesOutsideProject: 0 From 444f35abbdaf6d93cf5fa8eb2dc711a626b83f13 Mon Sep 17 00:00:00 2001 From: NoelStephensUnity Date: Sat, 7 Dec 2024 21:19:14 -0600 Subject: [PATCH 3/9] update adding temporary package --- .../Packages/packages-lock.json | 643 ++++++++++++++++++ 1 file changed, 643 insertions(+) create mode 100644 Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json diff --git a/Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json b/Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json new file mode 100644 index 0000000000..32b64f97ee --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json @@ -0,0 +1,643 @@ +{ + "dependencies": { + "com.unity.2d.sprite": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.2d.tilemap": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.tilemap": "1.0.0", + "com.unity.modules.uielements": "1.0.0" + } + }, + "com.unity.ads": { + "version": "4.4.2", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ai.navigation": { + "version": "2.0.4", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.ai": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.analytics": { + "version": "3.8.1", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0", + "com.unity.services.analytics": "1.0.4" + }, + "url": "https://packages.unity.com" + }, + "com.unity.burst": { + "version": "1.8.18", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.mathematics": "1.2.1", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.collab-proxy": { + "version": "2.5.2", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.collections": { + "version": "2.5.1", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.burst": "1.8.17", + "com.unity.test-framework": "1.4.5", + "com.unity.nuget.mono-cecil": "1.11.4", + "com.unity.test-framework.performance": "3.0.3" + }, + "url": "https://packages.unity.com" + }, + "com.unity.editorcoroutines": { + "version": "1.0.0", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.ext.nunit": { + "version": "2.0.5", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.feature.development": { + "version": "1.0.2", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.ide.visualstudio": "2.0.22", + "com.unity.ide.rider": "3.0.31", + "com.unity.editorcoroutines": "1.0.0", + "com.unity.performance.profile-analyzer": "1.2.2", + "com.unity.test-framework": "1.4.5", + "com.unity.testtools.codecoverage": "1.2.6" + } + }, + "com.unity.ide.rider": { + "version": "3.0.31", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ext.nunit": "1.0.6" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ide.visualstudio": { + "version": "2.0.22", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.9" + }, + "url": "https://packages.unity.com" + }, + "com.unity.mathematics": { + "version": "1.3.2", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.multiplayer.center": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.uielements": "1.0.0" + } + }, + "com.unity.netcode.gameobjects": { + "version": "file:E:/DistributedAuthority/com.unity.netcode.gameobjects/com.unity.netcode.gameobjects", + "depth": 0, + "source": "local", + "dependencies": { + "com.unity.nuget.mono-cecil": "1.11.4", + "com.unity.transport": "2.3.0" + } + }, + "com.unity.nuget.mono-cecil": { + "version": "1.11.4", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.nuget.newtonsoft-json": { + "version": "3.2.1", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.performance.profile-analyzer": { + "version": "1.2.2", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.purchasing": { + "version": "4.12.2", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0", + "com.unity.services.core": "1.12.5", + "com.unity.modules.androidjni": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.analytics": { + "version": "6.0.1", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0", + "com.unity.services.core": "1.12.4", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.authentication": { + "version": "3.3.3", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0", + "com.unity.services.core": "1.13.0", + "com.unity.nuget.newtonsoft-json": "3.2.1", + "com.unity.modules.unitywebrequest": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.core": { + "version": "1.13.0", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.modules.androidjni": "1.0.0", + "com.unity.nuget.newtonsoft-json": "3.2.1", + "com.unity.modules.unitywebrequest": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.deployment": { + "version": "1.3.0", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.services.core": "1.12.0", + "com.unity.services.deployment.api": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.deployment.api": { + "version": "1.0.0", + "depth": 2, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.services.multiplayer": { + "version": "1.0.0", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.transport": "2.2.1", + "com.unity.collections": "2.2.1", + "com.unity.services.qos": "1.3.0", + "com.unity.services.core": "1.13.0", + "com.unity.services.wire": "1.2.7", + "com.unity.services.deployment": "1.3.0", + "com.unity.nuget.newtonsoft-json": "3.2.1", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.services.authentication": "3.3.3" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.qos": { + "version": "1.3.0", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.collections": "1.2.4", + "com.unity.services.core": "1.12.4", + "com.unity.nuget.newtonsoft-json": "3.0.2", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.services.authentication": "2.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.wire": { + "version": "1.2.7", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.services.core": "1.12.5", + "com.unity.nuget.newtonsoft-json": "3.2.1", + "com.unity.services.authentication": "2.7.4" + }, + "url": "https://packages.unity.com" + }, + "com.unity.settings-manager": { + "version": "2.0.1", + "depth": 2, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.sysroot": { + "version": "2.0.10", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.sysroot.linux-x86_64": { + "version": "2.0.9", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.10" + }, + "url": "https://packages.unity.com" + }, + "com.unity.test-framework": { + "version": "1.4.5", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ext.nunit": "2.0.3", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.test-framework.performance": { + "version": "3.0.3", + "depth": 2, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.31", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.testtools.codecoverage": { + "version": "1.2.6", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.0.16", + "com.unity.settings-manager": "1.0.1" + }, + "url": "https://packages.unity.com" + }, + "com.unity.timeline": { + "version": "1.8.7", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.toolchain.win-x86_64-linux-x86_64": { + "version": "2.0.9", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.10", + "com.unity.sysroot.linux-x86_64": "2.0.9" + }, + "url": "https://packages.unity.com" + }, + "com.unity.transport": { + "version": "2.3.0", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.burst": "1.8.12", + "com.unity.collections": "2.2.1", + "com.unity.mathematics": "1.3.1" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ugui": { + "version": "2.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.imgui": "1.0.0" + } + }, + "com.unity.visualscripting": { + "version": "1.9.4", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.xr.legacyinputhelpers": { + "version": "2.1.11", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.xr": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.modules.accessibility": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.ai": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.androidjni": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.animation": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.assetbundle": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.audio": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.cloth": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.director": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.animation": "1.0.0" + } + }, + "com.unity.modules.hierarchycore": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.imageconversion": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.imgui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.jsonserialize": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.particlesystem": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.physics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.physics2d": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.screencapture": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.subsystems": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": { + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.terrain": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.terrainphysics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0" + } + }, + "com.unity.modules.tilemap": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics2d": "1.0.0" + } + }, + "com.unity.modules.ui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.uielements": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.hierarchycore": "1.0.0" + } + }, + "com.unity.modules.umbra": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.unityanalytics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.unitywebrequest": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.unitywebrequestassetbundle": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + } + }, + "com.unity.modules.unitywebrequestaudio": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.audio": "1.0.0" + } + }, + "com.unity.modules.unitywebrequesttexture": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.unitywebrequestwww": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.vehicles": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.video": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + } + }, + "com.unity.modules.vr": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } + }, + "com.unity.modules.wind": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.xr": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.subsystems": "1.0.0" + } + } + } +} From 5d4734b9ce298f343e3958265421879d90476a35 Mon Sep 17 00:00:00 2001 From: Noel Stephens Date: Sat, 7 Dec 2024 21:19:53 -0600 Subject: [PATCH 4/9] update adding manifest --- .../Packages/manifest.json | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Examples/OverridingScenesAndPrefabs/Packages/manifest.json diff --git a/Examples/OverridingScenesAndPrefabs/Packages/manifest.json b/Examples/OverridingScenesAndPrefabs/Packages/manifest.json new file mode 100644 index 0000000000..2ffae44925 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Packages/manifest.json @@ -0,0 +1,56 @@ +{ + "dependencies": { + "com.unity.2d.sprite": "1.0.0", + "com.unity.2d.tilemap": "1.0.0", + "com.unity.ads": "4.4.2", + "com.unity.ai.navigation": "2.0.4", + "com.unity.analytics": "3.8.1", + "com.unity.collab-proxy": "2.5.2", + "com.unity.feature.development": "1.0.2", + "com.unity.ide.rider": "3.0.31", + "com.unity.ide.visualstudio": "2.0.22", + "com.unity.multiplayer.center": "1.0.0", + "com.unity.netcode.gameobjects": "https://github.com/Unity-Technologies/com.unity.netcode.gameobjects.git?path=com.unity.netcode.gameobjects#develop-2.0.0", + "com.unity.purchasing": "4.12.2", + "com.unity.services.multiplayer": "1.0.0", + "com.unity.test-framework": "1.4.5", + "com.unity.timeline": "1.8.7", + "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.9", + "com.unity.transport": "2.3.0", + "com.unity.ugui": "2.0.0", + "com.unity.visualscripting": "1.9.4", + "com.unity.xr.legacyinputhelpers": "2.1.11", + "com.unity.modules.accessibility": "1.0.0", + "com.unity.modules.ai": "1.0.0", + "com.unity.modules.androidjni": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.cloth": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.physics2d": "1.0.0", + "com.unity.modules.screencapture": "1.0.0", + "com.unity.modules.terrain": "1.0.0", + "com.unity.modules.terrainphysics": "1.0.0", + "com.unity.modules.tilemap": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.uielements": "1.0.0", + "com.unity.modules.umbra": "1.0.0", + "com.unity.modules.unityanalytics": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.unitywebrequesttexture": "1.0.0", + "com.unity.modules.unitywebrequestwww": "1.0.0", + "com.unity.modules.vehicles": "1.0.0", + "com.unity.modules.video": "1.0.0", + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.wind": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } +} From 89eecc13da1640cbcee3fe9e33e7b1722ed67687 Mon Sep 17 00:00:00 2001 From: NoelStephensUnity Date: Sat, 7 Dec 2024 21:20:45 -0600 Subject: [PATCH 5/9] update deleting packages --- .../Packages/packages-lock.json | 643 ------------------ 1 file changed, 643 deletions(-) delete mode 100644 Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json diff --git a/Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json b/Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json deleted file mode 100644 index 32b64f97ee..0000000000 --- a/Examples/OverridingScenesAndPrefabs/Packages/packages-lock.json +++ /dev/null @@ -1,643 +0,0 @@ -{ - "dependencies": { - "com.unity.2d.sprite": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.2d.tilemap": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.tilemap": "1.0.0", - "com.unity.modules.uielements": "1.0.0" - } - }, - "com.unity.ads": { - "version": "4.4.2", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.ai.navigation": { - "version": "2.0.4", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.modules.ai": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.analytics": { - "version": "3.8.1", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.services.analytics": "1.0.4" - }, - "url": "https://packages.unity.com" - }, - "com.unity.burst": { - "version": "1.8.18", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.mathematics": "1.2.1", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.collab-proxy": { - "version": "2.5.2", - "depth": 0, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.collections": { - "version": "2.5.1", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.burst": "1.8.17", - "com.unity.test-framework": "1.4.5", - "com.unity.nuget.mono-cecil": "1.11.4", - "com.unity.test-framework.performance": "3.0.3" - }, - "url": "https://packages.unity.com" - }, - "com.unity.editorcoroutines": { - "version": "1.0.0", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.ext.nunit": { - "version": "2.0.5", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.feature.development": { - "version": "1.0.2", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.ide.visualstudio": "2.0.22", - "com.unity.ide.rider": "3.0.31", - "com.unity.editorcoroutines": "1.0.0", - "com.unity.performance.profile-analyzer": "1.2.2", - "com.unity.test-framework": "1.4.5", - "com.unity.testtools.codecoverage": "1.2.6" - } - }, - "com.unity.ide.rider": { - "version": "3.0.31", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ext.nunit": "1.0.6" - }, - "url": "https://packages.unity.com" - }, - "com.unity.ide.visualstudio": { - "version": "2.0.22", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.test-framework": "1.1.9" - }, - "url": "https://packages.unity.com" - }, - "com.unity.mathematics": { - "version": "1.3.2", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.multiplayer.center": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.uielements": "1.0.0" - } - }, - "com.unity.netcode.gameobjects": { - "version": "file:E:/DistributedAuthority/com.unity.netcode.gameobjects/com.unity.netcode.gameobjects", - "depth": 0, - "source": "local", - "dependencies": { - "com.unity.nuget.mono-cecil": "1.11.4", - "com.unity.transport": "2.3.0" - } - }, - "com.unity.nuget.mono-cecil": { - "version": "1.11.4", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.nuget.newtonsoft-json": { - "version": "3.2.1", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.performance.profile-analyzer": { - "version": "1.2.2", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.purchasing": { - "version": "4.12.2", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.services.core": "1.12.5", - "com.unity.modules.androidjni": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.unitywebrequest": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.analytics": { - "version": "6.0.1", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.services.core": "1.12.4", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.authentication": { - "version": "3.3.3", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.services.core": "1.13.0", - "com.unity.nuget.newtonsoft-json": "3.2.1", - "com.unity.modules.unitywebrequest": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.core": { - "version": "1.13.0", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.modules.androidjni": "1.0.0", - "com.unity.nuget.newtonsoft-json": "3.2.1", - "com.unity.modules.unitywebrequest": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.deployment": { - "version": "1.3.0", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.services.core": "1.12.0", - "com.unity.services.deployment.api": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.deployment.api": { - "version": "1.0.0", - "depth": 2, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.services.multiplayer": { - "version": "1.0.0", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.transport": "2.2.1", - "com.unity.collections": "2.2.1", - "com.unity.services.qos": "1.3.0", - "com.unity.services.core": "1.13.0", - "com.unity.services.wire": "1.2.7", - "com.unity.services.deployment": "1.3.0", - "com.unity.nuget.newtonsoft-json": "3.2.1", - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.services.authentication": "3.3.3" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.qos": { - "version": "1.3.0", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.collections": "1.2.4", - "com.unity.services.core": "1.12.4", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.services.authentication": "2.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.services.wire": { - "version": "1.2.7", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.services.core": "1.12.5", - "com.unity.nuget.newtonsoft-json": "3.2.1", - "com.unity.services.authentication": "2.7.4" - }, - "url": "https://packages.unity.com" - }, - "com.unity.settings-manager": { - "version": "2.0.1", - "depth": 2, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.sysroot": { - "version": "2.0.10", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.sysroot.linux-x86_64": { - "version": "2.0.9", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.sysroot": "2.0.10" - }, - "url": "https://packages.unity.com" - }, - "com.unity.test-framework": { - "version": "1.4.5", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ext.nunit": "2.0.3", - "com.unity.modules.imgui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.test-framework.performance": { - "version": "3.0.3", - "depth": 2, - "source": "registry", - "dependencies": { - "com.unity.test-framework": "1.1.31", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.testtools.codecoverage": { - "version": "1.2.6", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.test-framework": "1.0.16", - "com.unity.settings-manager": "1.0.1" - }, - "url": "https://packages.unity.com" - }, - "com.unity.timeline": { - "version": "1.8.7", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.modules.audio": "1.0.0", - "com.unity.modules.director": "1.0.0", - "com.unity.modules.animation": "1.0.0", - "com.unity.modules.particlesystem": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.toolchain.win-x86_64-linux-x86_64": { - "version": "2.0.9", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.sysroot": "2.0.10", - "com.unity.sysroot.linux-x86_64": "2.0.9" - }, - "url": "https://packages.unity.com" - }, - "com.unity.transport": { - "version": "2.3.0", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.burst": "1.8.12", - "com.unity.collections": "2.2.1", - "com.unity.mathematics": "1.3.1" - }, - "url": "https://packages.unity.com" - }, - "com.unity.ugui": { - "version": "2.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.ui": "1.0.0", - "com.unity.modules.imgui": "1.0.0" - } - }, - "com.unity.visualscripting": { - "version": "1.9.4", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.xr.legacyinputhelpers": { - "version": "2.1.11", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.modules.vr": "1.0.0", - "com.unity.modules.xr": "1.0.0" - }, - "url": "https://packages.unity.com" - }, - "com.unity.modules.accessibility": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.ai": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.androidjni": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.animation": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.assetbundle": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.audio": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.cloth": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.physics": "1.0.0" - } - }, - "com.unity.modules.director": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.audio": "1.0.0", - "com.unity.modules.animation": "1.0.0" - } - }, - "com.unity.modules.hierarchycore": { - "version": "1.0.0", - "depth": 1, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.imageconversion": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.imgui": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.jsonserialize": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.particlesystem": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.physics": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.physics2d": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.screencapture": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.imageconversion": "1.0.0" - } - }, - "com.unity.modules.subsystems": { - "version": "1.0.0", - "depth": 1, - "source": "builtin", - "dependencies": { - "com.unity.modules.jsonserialize": "1.0.0" - } - }, - "com.unity.modules.terrain": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.terrainphysics": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.physics": "1.0.0", - "com.unity.modules.terrain": "1.0.0" - } - }, - "com.unity.modules.tilemap": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.physics2d": "1.0.0" - } - }, - "com.unity.modules.ui": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.uielements": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.ui": "1.0.0", - "com.unity.modules.imgui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.hierarchycore": "1.0.0" - } - }, - "com.unity.modules.umbra": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.unityanalytics": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" - } - }, - "com.unity.modules.unitywebrequest": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.unitywebrequestassetbundle": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.assetbundle": "1.0.0", - "com.unity.modules.unitywebrequest": "1.0.0" - } - }, - "com.unity.modules.unitywebrequestaudio": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.modules.audio": "1.0.0" - } - }, - "com.unity.modules.unitywebrequesttexture": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.modules.imageconversion": "1.0.0" - } - }, - "com.unity.modules.unitywebrequestwww": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.modules.unitywebrequestassetbundle": "1.0.0", - "com.unity.modules.unitywebrequestaudio": "1.0.0", - "com.unity.modules.audio": "1.0.0", - "com.unity.modules.assetbundle": "1.0.0", - "com.unity.modules.imageconversion": "1.0.0" - } - }, - "com.unity.modules.vehicles": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.physics": "1.0.0" - } - }, - "com.unity.modules.video": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.audio": "1.0.0", - "com.unity.modules.ui": "1.0.0", - "com.unity.modules.unitywebrequest": "1.0.0" - } - }, - "com.unity.modules.vr": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.physics": "1.0.0", - "com.unity.modules.xr": "1.0.0" - } - }, - "com.unity.modules.wind": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": {} - }, - "com.unity.modules.xr": { - "version": "1.0.0", - "depth": 0, - "source": "builtin", - "dependencies": { - "com.unity.modules.physics": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.subsystems": "1.0.0" - } - } - } -} From 023c2ff7dca6552e245cd6a00e813c940fb04d13 Mon Sep 17 00:00:00 2001 From: Noel Stephens Date: Mon, 9 Dec 2024 00:41:17 -0600 Subject: [PATCH 6/9] add Readme Adding a work in progress readme file --- Examples/OverridingScenesAndPrefabs/Readme.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Examples/OverridingScenesAndPrefabs/Readme.md diff --git a/Examples/OverridingScenesAndPrefabs/Readme.md b/Examples/OverridingScenesAndPrefabs/Readme.md new file mode 100644 index 0000000000..1813c419d6 --- /dev/null +++ b/Examples/OverridingScenesAndPrefabs/Readme.md @@ -0,0 +1,56 @@ +# Netcode for GameObjects
Overriding Scenes and NetworkPrefabs +This example, based on the [Netcode for GameObjects Smooth Transform Space Transitions](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/tree/example/server-client-unique-scenes-and-prefabs/Examples/CharacterControllerMovingBodies), provides examples of using: +- `NetworkPrefabHandler` to be able to dynamically control prefab overrides. + - For this example, the prefab handler is overriding the player prefab. You will only see the end result of this portion of the example by running a pure server instance as this is the only instance that will create instances of the ServerPlayer network prefab instead of the ClientPlayer prefab. +- `NetworkSceneManager.ClientSynchronizationMode` to use existing preloaded scenes for synchronization. +- `NetworkSceneManager.VerifySceneBeforeLoading` to control which scenes are used to synchronize with newly connected clients. + - This includes the exclusion of scenes already loaded for both clients and/or server. + +_This example supports using the client-server and distributed authority network topologies._ + +## Client Synchronization Mode +A server or session owner, depending upon network topology being used, sends the synchronization mode that a newly newly connected client will use when synchronizing. +[Read the documentation for more information about client synchronization mode.](https://docs-multiplayer.unity3d.com/netcode/current/basics/scenemanagement/client-synchronization-mode/) +This example uses an additive client synchronization mode in order to use already loaded scenes during client synchronization. + +## The Bootstrap Loading Process +![image](https://github.com/user-attachments/assets/fe04e058-3c5f-42dd-b55f-b0caea2d7f84) +### BootstrapScene +The first scene loaded. Contains the `NetworkManagerBootstrapper` in-scene placed `GameObject`. +![image](https://github.com/user-attachments/assets/061d5c60-0fea-4209-a2d0-2e2ec425eb60) + +#### Scene Bootstrap Loader (component) +![image](https://github.com/user-attachments/assets/24d37c38-75a7-42cb-a42f-13e5ce856a63) +This component handles preloading scenes for both the client(s) and server. The `NetworkManagerBootstrapper` is an extended `NetworkManager` that requires the `SceneBootstrapLoader` component which upon being started will invoke `SceneBootstrapLoader.LoadMainMenu`. +- **Default Active Scene Asset:** There is always an active scene. For this example, the default active scene is the same on both the client and server relative properties. + - This could represent a lobby or network session main menu (i.e. create or join session). + - Both the client and the server preload this scene prior to starting a network session. +- **Local Scene Assets:** There could be times where you want to load scenes specific to the `NetworkManager` instance type (i.e. client, host, or server). + - These scenes are not synchronized by a server (client-server) or session owner (distributed authority). + - Having different locally loaded scenes is typically more common in a client-server network topology. + - In a distributed authority network topology, it is more common to keep all scenes synchronized but you might want to load non-synchronized scenes (i.e. menu interface for settings etc). +- **Shared Scene Assets:** These scenes are synchronized by the server or session owner (depending upon network topology used). + - This example only provides a server specific set of scene assets to load because you can always add those same scenes to the client-side locally loaded scenes. + - If the server synchronizes any scenes from the share scene assets with a client that already has those scene loaded, then those locally loaded scenes on the client side will be used during synchronization. + - Depending upon how many scenes you want to synchronize and/or how large one or more scenes are, preloading scenes can reduce synchronization time for clients. +The `NetworkManagerBootstrapper` uses the `SceneBootstrapLoader` component to start the creation or joining of a network session. The logical flow looks like: +- `NetworkManagerBootstrapper` invokes `SceneBootstrapLoader.StartSession` when you click one of the (very simple) main menu buttons and passes in the mode/type of `NetworkManager` to start. +- Based on the `NetworkManager` type being started, the `SceneBootstrapLoader` will then: + - Load the default active scene using the `UnityEngine.SceneManagement.SceneManager`. + - Load the local scenes using the `UnityEngine.SceneManagement.SceneManager`. + - Then it will create or join a network session by either starting the `NetworkManager` or connecting to the sesssion via multiplayer services. + - _Server or Session Owner only:_ + - If any, load the shared (i.e. synchronized) scene assets using the `NetworkSceneManager` + +#### NetworkManager Bootstrapper (component) +![image](https://github.com/user-attachments/assets/54d0695f-87d2-4626-bdf6-9cf72b82d7f8) +Handles the pre-network session menu interface along with connect and disconnect events. Since it is derived from `NetworkManager`, it also defines the network session configuration (i.e. `NetworkConfig`). + +#### Network Prefab Override Handler (component) +![image](https://github.com/user-attachments/assets/c382c3ff-bc72-4a6f-b2f2-04e0e70b1fa8) +This prefab handler determines at runtime where the local `NetworkManager` instance is a client/host or server and will spawn either the ClientPlayer or ServerPlayer prefab. The `NetworkPrefabOverrideHandler` does not need to be a `NetworkBehaviour` and sometimes (especially for overriding the player prefab) it is better to handle prefab handlers prior to starting the `NetworkManager`. + + + + + From 3a491820b25f029cd8c160d369ae8a8810bf74bf Mon Sep 17 00:00:00 2001 From: Noel Stephens Date: Mon, 9 Dec 2024 00:42:04 -0600 Subject: [PATCH 7/9] style Adding additional LB after images --- Examples/OverridingScenesAndPrefabs/Readme.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Examples/OverridingScenesAndPrefabs/Readme.md b/Examples/OverridingScenesAndPrefabs/Readme.md index 1813c419d6..df086d58b4 100644 --- a/Examples/OverridingScenesAndPrefabs/Readme.md +++ b/Examples/OverridingScenesAndPrefabs/Readme.md @@ -15,12 +15,14 @@ This example uses an additive client synchronization mode in order to use alread ## The Bootstrap Loading Process ![image](https://github.com/user-attachments/assets/fe04e058-3c5f-42dd-b55f-b0caea2d7f84) + ### BootstrapScene The first scene loaded. Contains the `NetworkManagerBootstrapper` in-scene placed `GameObject`. ![image](https://github.com/user-attachments/assets/061d5c60-0fea-4209-a2d0-2e2ec425eb60) #### Scene Bootstrap Loader (component) ![image](https://github.com/user-attachments/assets/24d37c38-75a7-42cb-a42f-13e5ce856a63) + This component handles preloading scenes for both the client(s) and server. The `NetworkManagerBootstrapper` is an extended `NetworkManager` that requires the `SceneBootstrapLoader` component which upon being started will invoke `SceneBootstrapLoader.LoadMainMenu`. - **Default Active Scene Asset:** There is always an active scene. For this example, the default active scene is the same on both the client and server relative properties. - This could represent a lobby or network session main menu (i.e. create or join session). @@ -44,10 +46,12 @@ The `NetworkManagerBootstrapper` uses the `SceneBootstrapLoader` component to st #### NetworkManager Bootstrapper (component) ![image](https://github.com/user-attachments/assets/54d0695f-87d2-4626-bdf6-9cf72b82d7f8) + Handles the pre-network session menu interface along with connect and disconnect events. Since it is derived from `NetworkManager`, it also defines the network session configuration (i.e. `NetworkConfig`). #### Network Prefab Override Handler (component) ![image](https://github.com/user-attachments/assets/c382c3ff-bc72-4a6f-b2f2-04e0e70b1fa8) + This prefab handler determines at runtime where the local `NetworkManager` instance is a client/host or server and will spawn either the ClientPlayer or ServerPlayer prefab. The `NetworkPrefabOverrideHandler` does not need to be a `NetworkBehaviour` and sometimes (especially for overriding the player prefab) it is better to handle prefab handlers prior to starting the `NetworkManager`. From 160ca8956f284538d4f1a8b4b795affafa8ad642 Mon Sep 17 00:00:00 2001 From: Noel Stephens Date: Mon, 9 Dec 2024 00:46:33 -0600 Subject: [PATCH 8/9] Update Adding some additional links --- Examples/OverridingScenesAndPrefabs/Readme.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Examples/OverridingScenesAndPrefabs/Readme.md b/Examples/OverridingScenesAndPrefabs/Readme.md index df086d58b4..b71d685463 100644 --- a/Examples/OverridingScenesAndPrefabs/Readme.md +++ b/Examples/OverridingScenesAndPrefabs/Readme.md @@ -1,9 +1,9 @@ # Netcode for GameObjects
Overriding Scenes and NetworkPrefabs This example, based on the [Netcode for GameObjects Smooth Transform Space Transitions](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/tree/example/server-client-unique-scenes-and-prefabs/Examples/CharacterControllerMovingBodies), provides examples of using: -- `NetworkPrefabHandler` to be able to dynamically control prefab overrides. +- [`NetworkPrefabHandler`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkPrefabHandler.html) to be able to dynamically control prefab overrides. - For this example, the prefab handler is overriding the player prefab. You will only see the end result of this portion of the example by running a pure server instance as this is the only instance that will create instances of the ServerPlayer network prefab instead of the ClientPlayer prefab. -- `NetworkSceneManager.ClientSynchronizationMode` to use existing preloaded scenes for synchronization. -- `NetworkSceneManager.VerifySceneBeforeLoading` to control which scenes are used to synchronize with newly connected clients. +- [`NetworkSceneManager.SetClientSynchronizationMode`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkSceneManager.html#Unity_Netcode_NetworkSceneManager_SetClientSynchronizationMode_UnityEngine_SceneManagement_LoadSceneMode_) to use existing preloaded scenes for synchronization. +- [`NetworkSceneManager.VerifySceneBeforeLoading`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkSceneManager.html#Unity_Netcode_NetworkSceneManager_VerifySceneBeforeLoading) to control which scenes are used to synchronize with newly connected clients. - This includes the exclusion of scenes already loaded for both clients and/or server. _This example supports using the client-server and distributed authority network topologies._ From aeab5bc106043063fcc120974ace068556fe3288 Mon Sep 17 00:00:00 2001 From: NoelStephensUnity Date: Sat, 14 Dec 2024 16:09:12 -0600 Subject: [PATCH 9/9] update Finalized readme and migrated images to local directory. Cleaned up some minor issues including renaming of some properties, handling resetting of camera when running in server mode and a client being followed disconnects, and some other minor clean up. --- .../Assets/Scenes/BootstrapScene.unity | 5 +- .../Scripts/InstanceTypeLocalBehavior.cs | 42 +++++- .../Assets/Scripts/MoverScriptNoRigidbody.cs | 7 +- .../Scripts/NetworkManagerBootstrapper.cs | 125 ++++++++++++------ .../Scripts/NetworkPrefabOverrideHandler.cs | 26 ++-- .../Assets/Scripts/PlayerColor.cs | 2 +- .../Assets/Scripts/SceneBootstrapLoader.cs | 2 +- .../Assets/Scripts/ServerHostClientText.cs | 5 + .../Images/EndResultView.png | Bin 0 -> 383115 bytes .../Images/NetworkManagerBootstrapper.png | Bin 0 -> 41553 bytes .../NetworkManagerBootstrapperProperties.png | Bin 0 -> 56002 bytes .../Images/NetworkPrefabOverrideHandler.png | Bin 0 -> 41209 bytes .../Images/SceneBootstrapLoader.png | Bin 0 -> 29100 bytes .../Images/ScenesView.png | Bin 0 -> 18823 bytes .../Images/ServiceSettings.png | Bin 0 -> 71789 bytes Examples/OverridingScenesAndPrefabs/Readme.md | 96 +++++++++++--- 16 files changed, 228 insertions(+), 82 deletions(-) create mode 100644 Examples/OverridingScenesAndPrefabs/Images/EndResultView.png create mode 100644 Examples/OverridingScenesAndPrefabs/Images/NetworkManagerBootstrapper.png create mode 100644 Examples/OverridingScenesAndPrefabs/Images/NetworkManagerBootstrapperProperties.png create mode 100644 Examples/OverridingScenesAndPrefabs/Images/NetworkPrefabOverrideHandler.png create mode 100644 Examples/OverridingScenesAndPrefabs/Images/SceneBootstrapLoader.png create mode 100644 Examples/OverridingScenesAndPrefabs/Images/ScenesView.png create mode 100644 Examples/OverridingScenesAndPrefabs/Images/ServiceSettings.png diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity index 4c5e4f6a27..1493ee48f9 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scenes/BootstrapScene.unity @@ -229,6 +229,7 @@ MonoBehaviour: TargetFrameRate: 100 EnableVSync: 0 m_OriginalVSyncCount: 1 + m_ServicesRegistered: 1 --- !u!114 &455857873 MonoBehaviour: m_ObjectHideFlags: 0 @@ -272,8 +273,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 5c472ff64b067344893ed2e632d0f9f1, type: 3} m_Name: m_EditorClassIdentifier: - ClientNetworkPrefab: {fileID: 6472733969592893139, guid: 3e5167b6e6bcb5645abb2dbc0078091e, type: 3} - ServerNetworkPrefab: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + NetworkPrefab: {fileID: 4710599683293591777, guid: 90bfa3cd2cce8f14ead59b4dbdae92bb, type: 3} + NetworkPrefabOverride: {fileID: 6472733969592893139, guid: 3e5167b6e6bcb5645abb2dbc0078091e, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs index 0372ce9e90..e8bee77712 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/InstanceTypeLocalBehavior.cs @@ -9,7 +9,7 @@ ///
public class InstanceTypeLocalBehavior : MonoBehaviour, INetworkUpdateSystem { - [Tooltip("When enabled, this will run only on a server or host.")] + [Tooltip("When enabled, this will run only on a server or host. When disabled, this will only run on the owner of the local client player (including host).")] public bool ServerOnly; [Tooltip("This is the unique message example text displayed when running locally.")] @@ -25,6 +25,38 @@ private void Awake() m_MoverScriptNoRigidbody.NotifySpawnStatusChanged += OnSpawnStatusChanged; } + /// + /// Adjust this logic to fit your needs. + /// This example makes the InstanceTypeLocalBehavior only update if: + /// - It is a server (including host) and is marked for ServerOnly + /// - It is a client (including host), is not marked for ServerOnly, and the local client is the owner of MoverScriptNoRigidbody. + /// - It is in distributed authority mode, is not marked for ServerOnly, and the local client has authority of the MoverScriptNoRigidbody. + /// + private bool HasAuthority() + { + if (m_NetworkManager == null) + { + return false; + } + + if (!ServerOnly && m_NetworkManager.DistributedAuthorityMode && m_MoverScriptNoRigidbody.HasAuthority) + { + return true; + } + else + { + if (ServerOnly && m_NetworkManager.IsServer) + { + return true; + } + else if (!ServerOnly && m_MoverScriptNoRigidbody.IsOwner) + { + return true; + } + } + return false; + } + /// /// /// Isolate the spawning status to the and just @@ -37,18 +69,24 @@ private void OnSpawnStatusChanged(bool spawned) if (spawned) { m_NetworkManager = m_MoverScriptNoRigidbody.NetworkManager; - if (ServerOnly && m_NetworkManager.IsServer) + if (HasAuthority()) { NetworkUpdateLoop.RegisterNetworkUpdate(this, NetworkUpdateStage.Update); } } else { + // Whether registered or not, it is easier to just unregister always. NetworkUpdateLoop.UnregisterAllNetworkUpdates(this); m_NetworkManager = null; } } + /// + /// Invoked only on the instance(s) that have authority to update. + /// + /// + /// public void NetworkUpdate(NetworkUpdateStage updateStage) { if (updateStage == NetworkUpdateStage.Update) diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs index 5c09ad4f37..abc1f5e0fc 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/MoverScriptNoRigidbody.cs @@ -113,7 +113,7 @@ public class MoverScriptNoRigidbody : NetworkTransform private CharacterController m_CharacterController; private PlayerBallMotion m_PlayerBallMotion; - public Action NotifySpawnStatusChanged; + public event Action NotifySpawnStatusChanged; protected override void Awake() { @@ -150,10 +150,7 @@ protected override void OnNetworkPreSpawn(ref NetworkManager networkManager) protected override void OnNetworkPostSpawn() { // Authority of this object sends local notifications to any non-networkbehaviour subscribers - if (HasAuthority) - { - NotifySpawnStatusChanged?.Invoke(true); - } + NotifySpawnStatusChanged?.Invoke(true); m_CharacterController.enabled = CanCommitToTransform; if (CanCommitToTransform) diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs index 85c9b918fc..bedc3ed758 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkManagerBootstrapper.cs @@ -55,6 +55,7 @@ public override void OnInspectorGUI() /// public class NetworkManagerBootstrapper : NetworkManager { + #region Validation #if UNITY_EDITOR // Inspector view expand/collapse settings for this derived child class [HideInInspector] @@ -62,10 +63,13 @@ public class NetworkManagerBootstrapper : NetworkManager protected override void OnValidateComponent() { m_OriginalVSyncCount = QualitySettings.vSyncCount; + m_ServicesRegistered = CloudProjectSettings.organizationName != string.Empty && CloudProjectSettings.organizationId != string.Empty; base.OnValidateComponent(); } #endif + #endregion + #region Properties public static NetworkManagerBootstrapper Instance; public int TargetFrameRate = 100; @@ -91,12 +95,17 @@ private enum ConnectionStates } private ConnectionStates m_ConnectionState; + + [SerializeField] private bool m_ServicesRegistered; private ISession m_CurrentSession; private string m_SessionName; private string m_ProfileName; private Task m_SessionTask; + #endregion + + #region Initialization and Destroy public static string GetRandomString(int length) { var r = new System.Random(); @@ -115,8 +124,6 @@ private void Awake() SetFrameRate(TargetFrameRate, EnableVSync); SetSingleton(); m_SceneBootstrapLoader = GetComponent(); - - m_ServicesRegistered = CloudProjectSettings.organizationName != string.Empty && CloudProjectSettings.organizationId != string.Empty; } private async void Start() @@ -153,8 +160,9 @@ private void OnDestroy() OnClientDisconnectCallback -= OnClientDisconnect; OnConnectionEvent -= OnClientConnectionEvent; } + #endregion - + #region Session and Connection Event Handling private void OnClientConnectionEvent(NetworkManager networkManager, ConnectionEventData eventData) { LogMessage($"[{Time.realtimeSinceStartup}] Connection event {eventData.EventType} for Client-{eventData.ClientId}."); @@ -207,6 +215,29 @@ private void SessionStopped(bool isHost) } } + private async Task ConnectThroughLiveService() + { + try + { + var options = new SessionOptions() + { + Name = m_SessionName, + MaxPlayers = 32 + }.WithDistributedAuthorityNetwork(); + + m_CurrentSession = await MultiplayerService.Instance.CreateOrJoinSessionAsync(m_SessionName, options); + return m_CurrentSession; + } + catch (Exception e) + { + LogMessage($"{e.Message}"); + Debug.LogException(e); + } + return null; + } + #endregion + + #region GUI Menu public void StartOrConnectToDistributedAuthoritySession() { m_SessionTask = ConnectThroughLiveService(); @@ -333,37 +364,21 @@ private void OnGUI() } GUILayout.EndArea(); } + #endregion - - private async Task ConnectThroughLiveService() - { - try - { - var options = new SessionOptions() - { - Name = m_SessionName, - MaxPlayers = 32 - }.WithDistributedAuthorityNetwork(); - - m_CurrentSession = await MultiplayerService.Instance.CreateOrJoinSessionAsync(m_SessionName, options); - return m_CurrentSession; - } - catch (Exception e) - { - LogMessage($"{e.Message}"); - Debug.LogException(e); - } - return null; - } - - + #region Server Camera Handling private Vector3 m_CameraOriginalPosition; private Quaternion m_CameraOriginalRotation; private int m_CurrentFollowPlayerIndex = -1; + private MoverScriptNoRigidbody m_CurrentPlayerFollowed; private void ResetMainCamera() { m_CurrentFollowPlayerIndex = -1; + SetCameraDefaults(); + } + private void SetCameraDefaults() + { if (Camera.main != null && Camera.main.transform.parent != null) { Camera.main.transform.SetParent(null, false); @@ -372,14 +387,15 @@ private void ResetMainCamera() } } - #region Update Methods and Properties - /// - /// General update for server-side + /// Server only (i.e. not host), follow players as they move around /// - private void ServerSideUpdate() + private void ServerFollowPlayerCheck() { - if (Input.GetKeyDown(KeyCode.P) && ConnectedClientsIds.Count > 0) + bool leftBracket = Input.GetKeyDown(KeyCode.LeftBracket); + bool rightBracket = Input.GetKeyDown(KeyCode.RightBracket); + + if ((leftBracket || rightBracket) && ConnectedClientsIds.Count > 0) { // Capture the main camera's original position and rotation the first time the server-side // follows a player. @@ -388,21 +404,53 @@ private void ServerSideUpdate() m_CameraOriginalPosition = Camera.main.transform.position; m_CameraOriginalRotation = Camera.main.transform.rotation; } - m_CurrentFollowPlayerIndex++; + + if (leftBracket) + { + m_CurrentFollowPlayerIndex--; + if (m_CurrentFollowPlayerIndex < 0) + { + m_CurrentFollowPlayerIndex = ConnectedClientsIds.Count - 1; + } + } + else + { + m_CurrentFollowPlayerIndex++; + } + m_CurrentFollowPlayerIndex %= ConnectedClientsIds.Count; var playerId = ConnectedClientsIds[m_CurrentFollowPlayerIndex]; - var playerObject = ConnectedClients[playerId]; - Camera.main.transform.SetParent(playerObject.PlayerObject.transform, false); + var playerNetworkClient = ConnectedClients[playerId]; + m_CurrentPlayerFollowed = playerNetworkClient.PlayerObject.GetComponent(); + Camera.main.transform.SetParent(playerNetworkClient.PlayerObject.transform, false); } else if (Input.GetKeyDown(KeyCode.Backspace)) { - Camera.main.transform.SetParent(null, false); - Camera.main.transform.position = m_CameraOriginalPosition; - Camera.main.transform.rotation = m_CameraOriginalRotation; + ClearFollowPlayer(); + } + } + public void ClearFollowPlayer() + { + if (m_CurrentPlayerFollowed != null) + { + m_CurrentPlayerFollowed = null; + SetCameraDefaults(); } } + #endregion + #region Update Methods and Properties + /// + /// General update for server-side + /// + private void ServerSideUpdate() + { + if (!IsHost) + { + ServerFollowPlayerCheck(); + } + } /// /// General update for client-side @@ -441,8 +489,7 @@ private void Update() } #endregion - - #region Message Logging Methods and Properties + #region Message Logging private List m_MessageLogs = new List(); diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs index 5b5acef937..7774f52d71 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/NetworkPrefabOverrideHandler.cs @@ -14,28 +14,27 @@ [RequireComponent(typeof(NetworkPrefabOverrideHandler))] public class NetworkPrefabOverrideHandler : MonoBehaviour, INetworkPrefabInstanceHandler { - public GameObject ClientNetworkPrefab; + public GameObject NetworkPrefab; + public GameObject NetworkPrefabOverride; - public GameObject ServerNetworkPrefab; - - private NetworkManager m_NetworkManager; + private NetworkManagerBootstrapper m_NetworkManager; private void Start() { - m_NetworkManager = GetComponent(); - m_NetworkManager.PrefabHandler.AddHandler(ServerNetworkPrefab, this); + m_NetworkManager = GetComponent(); + m_NetworkManager.PrefabHandler.AddHandler(NetworkPrefab, this); NetworkManager.OnDestroying += NetworkManager_OnDestroying; } private void NetworkManager_OnDestroying(NetworkManager obj) { - m_NetworkManager.PrefabHandler.RemoveHandler(ServerNetworkPrefab); + m_NetworkManager.PrefabHandler.RemoveHandler(NetworkPrefab); } /// /// Invoked on both server and clients when the prefab is spawned. - /// Server-side will spawn the server version. - /// Client-side will spawn the client version. + /// Server-side will spawn the default network prefab. + /// Client-side will spawn the network prefab override version. /// /// the client identifier that will own this network prefab instance /// optional to use the position passed in @@ -43,7 +42,7 @@ private void NetworkManager_OnDestroying(NetworkManager obj) /// public NetworkObject Instantiate(ulong ownerClientId, Vector3 position, Quaternion rotation) { - var gameObject = m_NetworkManager.IsClient ? Instantiate(ClientNetworkPrefab) : Instantiate(ServerNetworkPrefab); + var gameObject = m_NetworkManager.IsClient ? Instantiate(NetworkPrefabOverride) : Instantiate(NetworkPrefab); // You could integrate spawn locations here and on the server side apply the spawn position at // this stage of the spawn process. gameObject.transform.position = position; @@ -53,6 +52,13 @@ public NetworkObject Instantiate(ulong ownerClientId, Vector3 position, Quaterni public void Destroy(NetworkObject networkObject) { + // Another useful thing about handling this instantiation and destruction of a NetworkObject is that you can do house cleaning + // prior to the object being destroyed. This handles the scenario where the server is following a player and the player disconnects. + // Before destroying the player object, we want to unparent the camera and reset the player being followed. + if (m_NetworkManager.IsServer && !m_NetworkManager.IsHost && Camera.main != null && Camera.main.transform.parent == networkObject.transform) + { + m_NetworkManager.ClearFollowPlayer(); + } Destroy(networkObject.gameObject); } } diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs index 328635318b..aa3dc8c4ba 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/PlayerColor.cs @@ -6,7 +6,7 @@ public class PlayerColor : NetworkBehaviour { - private static Color[] s_Colors = { Color.red, Color.green, Color.blue, Color.cyan, Color.magenta, Color.yellow}; + private static Color[] s_Colors = { Color.red, Color.green, Color.blue, Color.cyan, Color.magenta, Color.yellow }; public bool ApplyColorToChildren; public Color Color { get; private set; } public List IgnoreChildren; diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs index 938b6fc09b..08642c10e1 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/SceneBootstrapLoader.cs @@ -82,7 +82,7 @@ private void OnValidate() if (networkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer) { ServerSceneDefines.Validate(); - } + } ClientSceneDefines.Validate(); } #endif diff --git a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs index 6fbe82e5e4..93e150b2ba 100644 --- a/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs +++ b/Examples/OverridingScenesAndPrefabs/Assets/Scripts/ServerHostClientText.cs @@ -39,6 +39,11 @@ public override void OnNetworkSpawn() if (NetworkManager.IsServer) { m_DisplayText.text = NetworkManager.IsHost ? "Host" : "Server"; + if (!NetworkManager.IsHost) + { + SetColor(Color.white); + m_ColorAlpha.a = 0.65f; + } } else if (NetworkManager.IsClient) { diff --git a/Examples/OverridingScenesAndPrefabs/Images/EndResultView.png b/Examples/OverridingScenesAndPrefabs/Images/EndResultView.png new file mode 100644 index 0000000000000000000000000000000000000000..b98d38ee98f0b9f5e87bea4d7a0a4fa3691b4454 GIT binary patch literal 383115 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

crMd(Oyu;XbgSaa66Z8k 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 LNkvXXu0mjf8>E^2 literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Images/NetworkManagerBootstrapper.png b/Examples/OverridingScenesAndPrefabs/Images/NetworkManagerBootstrapper.png new file mode 100644 index 0000000000000000000000000000000000000000..21a39012e905ccc2d7b8a188eab85313222998e5 GIT binary patch literal 41553 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

Pt{n|38^H9|Rj+ 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 literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Images/ScenesView.png b/Examples/OverridingScenesAndPrefabs/Images/ScenesView.png new file mode 100644 index 0000000000000000000000000000000000000000..49dcc587b65b9c15ad23c99d7fde15a358057b56 GIT binary patch literal 18823 zcmYg%WmFqoxGsg@P#lW8yBCVP1PJbhqQ#0sae@?gm*Va&rD$;i6faJ3g1f^_zjN+d z=SLt}Lxw#w@4NS7I|8ICkBLTt1_uX+si+{M0SEV{4E8=71qt?(g+qK2_UnzShP)J9 z%>>y2>;u4BQbiIDu09U^=@TOCGpdt^i}};6^JS`^19D^H%ig z_ml4+vGw-eTHOP*vh+0I^>OvIWFz*&iGtwTSM%GB`~fL+_GJI7LdxRq*XPrNWKC7Y zG0tvZ1KaZA>Al>5oWU5<1wU;n?0qb;m%A;#86dBF_aW)WfamL`6_+vhZgdQ5;QDiR zeIFWYk-k+%@#E@3FlDN@$ipRVmgkz+44#@u!pm8hIMDyjnFu1Zmu-_EOQ_g5E?{_@ zko;({yuM^UqbBahklVhO)A2Y=2jQI*x#wPWn<Ys0x_ZI5X?S*MyR=gP;%5)BO>6GfJ%0$#ITd_q#T$?hE5G z#Ve(`{+Y19>ulPJ{jl5e(?gB3^GZXE2n9p8PGXi8@3mUr`n!9D;^*ElO8@lTEXS@B z&sP-lXy=XkA&NsWp1a?z+B*95aqKftar>i1w;7e0K~l$Tx#)KZgeJb{D>olbf6n*~ zoc+=Q$ST6!2;BK!&*^5AdG|47*(bgge>xkX0}Z48^uVa6dSmjCq$alL=YfVMNqm$* zGJSTpouoG1FvgJ;5MTTALWu#@&&aO2dAe~@EUWvcdZApgu8AN2!Uvb_;if4$(qh=) zgpxKnI*t-|)6HYuUY~FG#7A@t9Z~|GIDei=Etv*mUI-PHuXev&*S6P&UrotVj*CP1 z=k;h|_rf^iY3=J)Ow(aa$8Oh}=epm)^XxW26PpXerd~p zT%BbC?8qOW7YB;G9;gM3Mur_sra_JdeZT#r@W1=(J3$orj>7k>7bpR76U(h+e;sIl~ftsH8LGg@LmP0DV*A1{6Y+NNnlmQ|E zVq!$*F^}3rE&})0OXc@lpoSh+UiOEkY`(z8&8)N2~=P`XQWCtBzvK(4QhGNDU_D~E&hlhRWFozKj zgjJpJ1p!|L&IP*47py;HAcUNdu_k$EP~t2$$BmA;Pm6StFUsO;g^TKb}*)&kgp^hRu-o zIn4BpZ^gwLDfj#zm)EThp<|?!R_z86&um!eZ6=$)Vc9;g=r)7aU&=GUuUPC zj--b+l}X+5`aj(Pe}*rmSALwQR)RcNrZq_ap25Xb@fDWqz1yg>cHF2vFGCLg@q;8k z{q6|_5Y&?FbPk6GbM`h<_yZv}{-3*0rWeBG%c%v#=}h1cPR2CCh;fs0U6wA*)#HSp z{zOG!o!@c)pma#M?DD0v9t7`a^FWXjtc0t;FiEP^5baLi3&ilV^~R9|}Jkk_Nn7=JJBQP5Oov zo%)M&E(&MV7PuI{QawnRwiPIW{A5Lgcs^P9^ZZV&?|a242Qh#2Nk1U{idmwC9K?OV z_nvg-r+^MM^;T?e>f~a;S~JDV*kCY=B-lBq?>BOi&er!9AB18nml*tJ&FfZzbW`4H zp&|K+=mTDf><8P;N{VCR!+1KgX)HX4YeR;@fCu}ZJQNy=C(_HY+&j$HK)G*F&wzo` zVt+qA50VaFtI>O4eEMW`%BVFrJJ+0)u}K-{?IE9P?7Sw172E9SpL+9-H~>8OFFZm% z>ZbrxuIkLvz{HI#?$~5FWQJ$an?JNkxW!b^w~Ox`2Pc1Wa*gpL`I%>puoZM{Cn{fr z;B%)du$Vtd!%t9`!TO1@@&lebo?3s2Kb{T?CinYwJnS-Lnr-+pdDT2)Wi#wrMKOY4 zk)Pe0k*pV;!f{OT3K8f|s^2HnwTCfm&b7Ih?~T&YS6{VtjZ@|lcZ5!EVekV|wC~D} z=OD>694{0( zZ?0ZuH5}m}oy;yQ7g-35ePagx)KwrnI|h`?ufwM%9{Mg{1a)2sw9k{X`q&7m>)#LS zUFW_&w4-gCfKziug|m}UH9g|rw?jCun+8cd8R4UwO*33bst(%BQ}t_})ZZ1xvkvG5 z2}QOyGBH_{{j`hJkeaAcIvLvgb-K-O=GH0JKEGFJGJ__a2xY=X0hrd|CxhqmY~yP} zT?a6RibBh5YYP>ObmKtr$>6p%p%SUvKn!p>4)nT^5b|Y(EIg0Vr9w(Pq3ke0hy4mK zqJ7#B<5)!_$efb$>OpI8y zDL`S1mRHt23OoNSv3d0U8Z)*iGkcQtLDBYuo!or5cRCA^2^DO>3`Hmn zYvuO*Q=}FN@zKqkk_3Le_j|dyt_#$PXi#hMNB!H3X%;%c<}2flcTBh7szkt zJRY7UvHx8t4_{W^Q3I7DMNq@LHYPy)&J(iuog_s#Gfn%Q#ZygCP=i`_^x8lCGohd= zyVxhy@CSZzzSugkL6KB@c!bd$DUlVmIfWC|ncQ>TG=ODs($Y*`4n^z2P=Ao#NtP+G zMWg6}dZgMnpho)}ZX%zKQhB1?B!7du0-v3(@w)uToIJUPYPb>2M=yjqaQfH;{_xl{ z^C@q|E>tu3W%P~S@XV&&5MAAz=g#)sOlgot%~dDP|2)q8MS!IpYVgl$M(p8K!!H@F zB^yZ%--QS)(v})7J!pd(5aqaEiH(dMPwD$x|Dn%nCXDHp?cX`}2d0J|hRvFi9z!X~ z+8!?YQ9uw;Agfo1b8;MbN#GsI*oIw4EILP<=|z_Y3Rp=R>88v~ph=&_Oj4)ivd+?H zk>C$fZFp}N5aQ=+J{tw5hyXc2;_IKUUicO&(n#{ZG=;ur7FZ}RJ>q)GT7P1= z%@Qu?F_Q26V~bz|a-7AN)t@EeX-!FV*u6(y6;Dx+rMB|1UZfop(|S04Nx9BgG#|Zr z2zNQGZk;F!OHK#E*v<6MN1;t!)hthF51EFBhg8L91~WF%pO#d9QXxBZ(MH>)jgoLA<)1R z0|#pOesFw+{`T05Y9Qd6l$cs!SCkZALmPj(>+vK@5j{au4_-l{XRJ2h`4A{_g6YNc ztS*h8{KBdU@^!0`Hb_o&QNYP(2^%)jW!IJcSNr>V>DR9?Y&H>ziVXz6Y2DZ_jGI6! z!zqL7xcun3>aK68PLJdTt((Q1JC@15{DHQYfp`cW{jr;A*C5Qju{@P_P{V0zyKEN4 z&cjT61_R?2&u1hfKL``fiPe4ov3KFeqsGgLU-+s1I<1oBeVqj2x?Z0f<4tMH8e6ho z2y^w=|2=w%q0Lh9XB&a?^Wt~WcAw-ph2y;6!`MMb+zkc-8$8b+4a|mmBAR@Wra~38 zFh!gMNp-qwpnlJ6s7U%iIyC(*nKN&L1RN(%g$&*qA->jF$f3`cfu z7rzY@x$8qq2g-gB9ts(e8S3{OBKNciolV+AuvHSO&}@g5c;}GI-(c9{B>m0mF)xt$ z0LJu2UhsoyFS9em0>bTaA!Z+STa!4M#F&BwE{QCAUw>(NE*N|67(3pV+~s3D1<~I{ z%iIz7ueM&GNIAjN%Q1tyP!8mrmUP7NDDkM)Q}?CC82#qHJtR6TBpGe?~pV z#DJ#-T&ah|S#OH&$BahD>@Run!8`>LZZ)hsdDsA1 zxd>{qg@>O%OO+xU@+>f}mNa9%r2}_8Puk2emFaDXyI^&FDqwNZE>;JqTD3 z>ICg@La+V&upjH!09 zU8tt(0};V=Id&q)5jjp1Dbi7}lqy;D&bj03jibI&R{a$b9Rq2#e&~W_izcF_?3YZH z**=m$IdOZB-G=#mxJJX$9)F|N+CdBnQa^VP53paZPxXEN z)=2p(x4vXT2VoFD{3BJE9=rc}l!=8|MPDD!+irtoVr5!|_WYGlqL1m)@mO4!J2%}G9ou^%o4V|P3 z^#qzK_$lJa0`bIso4yzT_~Xz`-Gfuw-@@sm$n@I{YmiXBFESum$%vCW14BNbTAs|y z^ZKiwi&z!>6z7vZS*i{@rBlxvuel4Df|K$+48zMjcb%ZJcGe_;*t_mPWYM-xn=4Ce;IM&UKH11=RC@^ynqxE8l=BvSHR}&04~KV6MH#)llniO*MGfJ_q$=*tK?dn zr9kIH) z%Jxt81FZ>~Rt!dY#;AqRhS_3mKO8sBG-SjPV|!`m$0ULm`0)wp!;Y|FDCn~|J`GD8 zi_o0UsX7+JFNQ`#hi2`ToAiF9ZxpX}ZzCgdr{s*^RrxHZM+KQ_99D)1-lbKwAZ}hU zGetEYEz-z*pWRb#2*hyCP#>u{45N|yEp)8p{~4Uc)-w;c-@yYf3{YxIt#BcGb1vUL zVJ0lD$_lBzYQfE-R07aQv3M0W4YgVxOTrch%FOb-NcsW29t+1QTd%6RuIx5fe&gkrP0doa6p0=GR%9;d=#_z@E2R=9Bywjs0aaigze=?2NTaIDz{sjvBH{2 z)P`j8Hs|gUa56?Ur9X|7oncV(rErl!?A3DHZK_zeNc3i@$m^PBSpd=(?aRIMEM|x+Tuy>&)FAG5l#rJ_}sOL_wQU?_h|>gHo%SsfvS5 z@FD6wz(Q{`$mn|`=C^3PX|@COfFHthr@ZGRHkY0@STfj}R)fZ3t};w#=r)T+IBzl( zmP@4cHzjg`qs{EU$L>}80(li-R8WEz23nh9Fl=+tjl%dUCaXktNbV2YC{=}al7I3Q zQ`~iw=Tz2q3A55!49J@0G6Q6posB`V1tIK?^@K?z(?cdN7isq-92kmb8Dt5G_PaM3 zLBHO9U{gE6A<+{nWVcDtOP-Bt>rzF^)seH{#R9;SV{J=YQc;y9YF)dFCiBGf zEW|ja-*(M?oZl`lnd-ytc} zR)#n{iAX_|bx2Jcid>jTq4H;d2G)dM&xk>iLGVA1lC)YpN`Kh)J~2!5J!tlt!w&#H zxzYRwNaPFRWA@ucJr+m6PhEsS-ymv|jEliI%G_Y4?GuYWJU;4-K!s0Y0sy)3KNYLr z{Iyg9sPm*mgQ#a4VN&Q`PbBV$E@Fxt{|L7&qp>BnC1XLgARAv4mti?k`zG0l@lmHV zq8Hp^isFSFHpwJD$WZ_v#f>ME-0JPTAgWpVNi*vGVnG0o55*e#-qa&55O>=4fHr?~a+-J4`bw4m=@GzmGB~0<(JSj}t zKxVEOs0#Vs&ZyV1fjs(l)#Pr*Cd_ZyY)$U>xA@;MExr9wfr?AyH-t&-Fb!MfxR5Y3 zeN;O9Yv&>S4225s`CKBNg21wgmwj(mSq2Lk-kb({V^Kxp3`T#j?;c9ETyOd+RUVWZ z-EYp0(9+6+f&NMpDH?vnB}KD~F?@n}KbH#|uazdxEJ?@>IQizhQUJz`s$2W% zhIGR#tLrxLXeW&wut6izUzk!mUZi8X(^^JhQGzL8YoXoo96q-fyC^3^o}6qBQ*)iv zf!@!4uuF8H92gRca4N$$U6VG@Mj2{40XM2Q#U6InWa0_ED}T2uc8HaJBQxb>_CsgT zJs#nApU7x6T2~!RSm(4>ER8J_*b%ANFfaUr&8$hCSTTMAlM;|9;ql)J@8_L(+Egrn z=VjzWGHB`g`)`BG=zOZA{8_0BlCeW)HM>|!q^;gFL|kCUXwFOU@sLu{kur{Y0~HAd zw9%o;6?o5XoletTa_?bNa4qsdWD%+G{}%!zLVy^s6AxkIza~mjW^m1E|80{%dQ=!u zfT+!($SQIpd!PAHCmU$%ppRnIpDT~#&h2|I*aW+n?H104biyE4ZyqeyHSfQoMU8f+oPd@Hr1?Ha7UrSFp@M!4d#wt2Es=v{OaOmd;G!0CvI{ zv?C}Zvh|wl7{I6D>m$Gll98bZ)*o@Xk>)ye!M9f0i4qTzXmxq<-a!IJzbH$xDb+=} zsD=09%)fu5^e(M7MgbTg2Gx&RRp8I!$de_Q1S8fz4fHgaHO_d~{Z1>Et`U9Jy@ok8 z{)@H4Y3PbfP=TIp6f>p`)+&=`86350X=bAh&z%o z;lsQ=nzBJy7PmWl=fSQR&gbYU1KvQlAW{+9!i%M}FWlJ!o=?hFOuir#NTl-+qz+O9 zPz~Itdtva44;V8u7AFxmQx8ZKGB`g*{&tnTRmnptrR8rwujX!mv?-C7mx1ms`ORqy z{95ta6jAglI^5H9#i_CIn%v#K_G4u2Cb*z4nlm=)jDIa$2CzWQ<8T;u4ggxjpfU^$ za_1)ax2Y0u1)s}wcgh9&t~{+T;UrsTGpAx8;az09`>!HZd)oCf5v>$CX{c|)W*XjNM47$WP!bNXac-I+kgTW@<955m+a^3=F zWyNY}(L&VE`b|5$*>#p-FcEas#JQ7zTJKS{ux&VFVqTT3!0<-_m^G-e@cfU*E;2Vc zG(ZF=XUkQ`>|6erMHx+a^;@m8&<%_tpN&E=-SYyqM;w z#1I7VQrKaL3$jLfV50}LUO+AUllz9PrHGyRowPxG3bkym&MS5dK#NLDTgCqRJa$ye z>PNoVi$bvLuyQ}oW`eMyjz@@0JG1o>`_5grZ=7~w4&gouC5)M)@JVG{uX`U>ACwiw zjso`6H^RHv&Lym#W%Z|}aMT5H;o%Ys{Nc_)tf?JT?@C_1C8B2uc%;7qU3^V}(W9Tk z%GJb;m2DJP<#wE1sXiQ|uSo#4DMh5$fN(m(Mr0a@(O&AtN}%R(n>aI zCVSQAW>!^hy7nN20kP&OdrEvRO>$QVw-8BOMr1^E#AF_8RtOxR_Pz)TcBuW{SwN5N1HeZoO$?-(3ZYU2bx)Qs(QeVp!lv2Jr3N*#LhRf}x4{*N z9n}r~z&Qs#Xm5eI_&4vUU|8c`{(@A3_Ii;iv*#ju)5OEYtqm%JB-W?+D7DyydO@ei z^aSdK3iu0II~m-w!7iQ0kB*&z!Vn7>1hoTCzdvc)npR}|o*XOwa+m$WG+f@y&2|$E z@1f^mMDWCA@}7Sas{3Bg>b%LA@ERFGB@0OgMg+c@keraNtgJ?nx6O_`YOj$8&11eFN@aCd z1h4qn5A0>TstVA%B-XU9d9PYCf)&-tb>a+-7*j^WacF-`!d4iGjl;a-Ul1X>3`E&p zxXX_tYT7;AO7|c>vLGGzsIQ+$@UeT}C?Yx|sb;@-ZkUPJSDQuW|JGC`i+!zuc>s8; z(Z%a7RQjSYj*rqr2>96V4>}Hw)k6-A$HsfbDyUG2=_k|ckeHN~iFJpca}6)~sXO6C zoe#vP2#>s|kSdCCSeETY(YG|iZy<&(H3+Z*@hLDzQ5t4)*_38MB|vAQwQ7T}O~9M^ z?s~LJ|Gv-eQz6xMqPU`eRfBkPGu)G^HWdSd+<}5Bj5cN)vI1es;wAU*=RANwb4 z4Mq0h2%$mop?7)16pAH`?Odpb(^|(SkEQn(F^Ca@_-|hQ@P?X@bM1#y;T2b1d zjb8wGCX4+(2nz^2TO4IUb4b05NlIr6PLhUr$)A71vqaX0$CVK(3`>c8+SCbL?ikq= zsZ+}Gnn+UxM;vLYp*CR0gh8H6u_ui^S5qiK)7g6U>@i}N-|}W{QoLZ)mm~d9g-|q0 zLTB9TCOGlf=&t>|&_b&W8Qm!=w?o1se2Hi9-8>#xpC%Ap29eaW=N))Ogm$vR9r>!& z{#CsvRNXNm+Bu?uB`Wp}PQ|k8h=h7-SKU=xOFS8o+_hgN_09jPdtn(^ZsJV-pAUIu zcYk0Rx&}h)nfq`N3xAomH-#FGHT|doj}PpGu`ezQ`1x-<2M&>2~reePBK&0i4u3ozr66qmKvf4FBDk=$f9sBa{q66`Tlf(VNAUs8gOj~CBDM2(qH^(Q-Mkq4pumXH%s4seG7mD z#WakTpa1SZ?5%NSA5>guyDss0arivph@ zYY))Ii6lluyoP(dCDx`6v|V;+9hV6dQPPfE!6};%U2r}eL|x@ zAi}&Ti9GXv#akhv0FPBhSbJYvfep5fh{$8LU=+SP3^LmkoOZmPMG9zVED?Xk9;SDy zWcz-A8k(FT)N4IG`swh$Qxx_B29fDqh44&zb9_!R#(keaA8(Q97_fWIo(yCW;3-22 zmpyIQ{cfL;DYXN7A=dYi0%Ox@@crA=U;C`S`J8ro#`1h=0-J$-u*<9B{zY&;_N=Uv z`hzsAaA=)!p4!%@iDw3 zz4MTHA+{^y+`)LDP>4vxVaqp;{N|_t`nE7iQu{L%4}bP=PC0`=>)y{)7Zq_?Y+FN= z51Kh1P2(8*BI0QRbUpKG406}%UvsYIDg9cY^MX4uY5#&8U*t_Hb|-Zt4NsBX@BW6V z#jfAd-(UDC7Fa)^FHVFyWg;$?HNA${2ClqDGmWm(7bjl*Q7TLc9*^L?p? zHT;*Z?C#p%jl>xTL7gf55WVn8fSSc@| z%x~j>CG5!V%~SPoMU-5nGQPuNZU_H-Ynjp*2^iYC!h(^nFt{qwKQQgLkut(8KelH# zn8uWeR4KCHQ)**N;9_i}`u%2A$i+iJ6vt?USuqlh*r*6diucXbxvoB7PuOBu$Y${K zjeNEKVIW3%wFK2~qdW15=IQVz$XoH@$q)fO4bAa8_ZF=daJs6)k z*!f*5uP#;vxA%@;u19@Ee*gIF6I5V^Jrg6imagI!V|s{DG2(9N$ar%Cec?icr%Wes zu(GQ3>?&PKrk}&;$4^qAa-iZZk=zlE?Nyt0e|1>D`g6}% zGP&-}FK*%qS-Wq$tf@qP_1S&A;QC~#elKkL38!;KH^9h5{W#aTGIQ}~H`k5g4Bb+F ztBUT}9(VHoJH$CsIv`@fa1Q5Dkp;qz+HP7Tfr~md>|osj#yp7q5{jXft4Ql4XI4OpM9> zOf==Q1h$jpoQ-r@yW4B?hbI`MunAryG~)5wdVHm3fB9}at!o3VT78*BkNLw?9kBhX z+UQ}tfOnU1{9~-tUO!3&LvkZov3$>#i%7gxqLL*6WuqZ_z$F!aA>zHx$0jF&Yp4^s zC%hdbJBzT8# zoh06kHZ?t{hK2V~8(dNyyqT7OT*=Ag|D8o)&9&g5U=ZSqs3i#7taVxk56l;n*b@*6!JwAh#`-e0(6Lp;=}oXC(ZHUhX5~ihdE(3L+%^} zKa0B7iKI+izvzwaUETJCGXy-k5;-y!NY-{w}x7W369sO|+6* z%IN*_2IEoTldMJ(Ne;fx9zV`90z!Wu$;-;%H%LwI@D}VROKSv;RCMIsBK{gg{+A~a z5_^6x`fwO9!g+e1_G>zgvMWo~$UW60uf|2*6$70ox3i~-qHG=a+1b*wz@(~mompFV{{^3$> zyD2F8e;$9`K?cu*{%m>Au|i&)1r?*i=C)iG1cjMGpb!rpmb_*7<< zt2`DP?}{GJ!#g`g z)@=H*VpU0Bw_l5EtunlwIvta|rul1u-`VCLeL7+ncrULJQNqLr{gr)1fkwWz&5>iN zL;`|t-`(XOk6TR)ymnF=^<$ai;9b7#efOLw;kTf^LsO?A@{-C}eL&xR-^IHtYS(b3 z<|NZu)c&OX&?mF!Es2G%OK_q~4*eGfZ-^`$zQR)!>KdZ(v2ZovPp_)oPk+w)BUbO} z@cADKr^qCyOX#{2>Ga)eKA2;qR4jZssN%cqQ!csJ(W4dhdJa8+Sg$D$)e2Y(KNd6F zZr?dV5(Iu8u3l;D=Az4t5m;)X+bRZB+I<6PQNizEjJB?N7*aI(y@k2fqc{@O2I==0 z2Y*<~?jmP<)97bZ$_wpf>6BF4+RopC!w1bts`$IX;UbX{wPkQZ244z|pSNqLDL`N5 z9wj3OwQe^_a)Vov1$Qs_QRS`Iq}$->Butb@6&5RmAOIMq$|(iA{kbIL&UOU#UnIq!mC8^*+j)@KD+=T0(;|6=I)fEj56jys0#i>8CLG@DjjznQh=xr!$PJq!*eF0uwB6@Y3SdC{?g~)#?6FmBya_nB*aG!nx1A?YGKIPQYS zt^?+-x{}Z1quk4g&64?4V=MA3iGc)!G?8&hU|y5I+UBTnC{^{HgzfZOrty1T4{!|G%_b5*J3hMeA}K;=C1VsjH@fgrfHU zI14?-hl)p8|1BUaqQd?gzzbyPwJX%lsSJ(2uHoB%%qYVAQ9_NoHC8ocIqjF)A5)yVHd} z+z`>gB1?KuK?5}7AezU_8;{@IBP`mY(usU1XT>`kob5lGa5mB1-)gxUUeFgll1BqU$;Tj6DK7$ErVuz6I{}Qa zCnG`$QczyUt{QLxeuM7(!oBM49%Os}nYtC+!-YV}=X#IIm>thpHTS$8V)wxVCX!oe z2B_tqX`ni^@1%Nd{?UyZ1qG*sa~gKHF$v?S7$OglEl_eLXiJ8oFy%$2&oMFKICt?u zQBbJ>!5x7}3pCV`V|k~@$iOcjX@$_D*CSEiDl!L$09cayBOrmXBSZ93AV00NTc9^R zC&5fUB^G}XrWo@!(^shgwpdrJF^&%V8%1gk+wlTXKe^14Vr(a>-?5)>gqiwjzmC2p z1T`cV2i_a)3kiblF<)x0fzavabW^Bq`@|u%g?NUgdJ^ zvayB_70wIk-gZgD9p)kk=&LlZK>a3an2m=Q&&&l6cN zziH$W*Rc|gT1JyR=eAL%%)r9Q@PI3SP!|fTDieR4^h2B2^{Tp!PKUzc>Ex3YMGZ*_H0jPcD z-sEbxq~<0}J_p=YkS_?-!3zy;n+)P^h5U%oUgDP9PpVf$a_O=)|4zk~WWV+H-FlN@ zHF~rtewy=Or`F@450B6S)~z;sX>PI6wOAM~do!pN2O64z42zw}H~xa4|D_^AXhY3^ zv(`UtdbkLf>cM*I(oWx?a2clddSV{ahXZH6ubA94q_gOeQ<%4+;oOxt#oT9T9c^sl zTBlVRVpscX%Vm>75-|r*q@@GU6{KZM>y@)#hd=Fn5G>y%;i|8>LA{&PvsuaY;Sy?@ zD)5Ka+Nl7r6N`DoJWHeiqnm{kJK3(Bql%sV$N6Lpt$d}WMeV`hKUn`tp7@_)9`{c% zSH9pU$U~i=+6Sg1M=sW5J=R;I0+l1Xv6tEeCbnGUh0Dc|q|D(gAo3QuK23{Ja$vYqQ(H(95G2vk zYe7<0@Rp>a3!-tzL+P?YO}W=&S`y+PXH5K^pDit2u)>?$lxNG0xMOtuyrsb{Sc$Oo zEI0=Qu@2w(C!8bvG!LSED1iF{+m%%1jd2#PW43^6JVp=*yi1_hlJ)nU$$2A$pOkZW z7tZGR#){7!zS)dh+(i?MK6FKyki_!74jmh9Q#umph>!Qm53<6~xK0n;21If#a1(i# zq&5}SDzq}`-~s%QIFS00Pm;Woo+N}Kl`>p%r9=NEbAQ*H{%DBEB^IYDg^w)xFJ8CX zU;x5V2ola`DMMFpfv-;Qn60E>sK3YyL}Q+Zr>16*0VhX_N9TsKRLlp5h%5w)QRAY0 zyHB9O?FGK!E>C@AXF7!m)nzTeo^+p$ppy4XE|8L(Fx;8y`gLcO^M6s@iJ@pLlNBvW zE%3e(G!XaG;ALia#1hx=h4Ngm!bd0yH>xi@i~Q`$2xD$`3JM5R~gMoq?7?kZ}w!`?IA;4i(->*1TwbGI*FEk|lq0nH`A5p!}R* zHLi06Oqfl7U~iuCWDqlKLl7rxz>D7b$Ry(jmk{LZ%5wrzd8i?4a9L^gwV2xx42~ft zq^Q?k{?dvA(?dyTx?etP`hiTHL}8n&8j{vc?YT;wFxnav!2a&SC0NSIBQ!KUX@c@Z6@~78=k+_AVmxS^G#4+E$kT?Ah)|34EsP!tQz!o4 zK@wH0wLf{1;S5L<%Pc;fe(4~sP4HNA8^4+w$}MiU&ZX~s znLs{h6;xFS@P-zju)_3k-YFIaF;HpU7bqeQ4IsmUB;yu-Tz&?B_S16h%(E@pypewb z-%CExv>WeL&f}Mn&^?t`=eY4{FTs`EiLM8%gH%*CEB@va7Ukk)%Jhcy(Z0*^48nBl z*sGH;O|k;SD9-n4nXWDR)5rn2iM*4|yyNesGyUc>W`Zs!64vZMUuqVuRZcybTUe3} zy%X*)*tWLR7^_uaG=|qeQj&nnG2@!o6V`o!{`PbT$o-%@t^FKuSAT8=z!9-bDV ze|a*0xJ0kD4qCL%x}IKQ<$!@)=-AcJkO^?l$kUPNuWz=$fR&r~c1Cx}v7izAIL{^U zAcE+la_PsH$E%yifK!g!alV2|Bi)pPIJKYgW7PFA3q~BrH{Y9iorSy>kFiP)Pb01k z!GB}^%kD|T#(lGH^y5+cRL^z_ak?4rt#A?WXgKUaYX%G`j0RSoXJTTs*}ujB56N#fht^bzZf)^|X){5nHE=JvUUY ze8&>c5->1t=Q}lOES1mkqbF~f`}>6c1)=FUKC#)SigQ=cnkQ3ZlEZM zxP;}<@fHf(bF1`vyLo;9?VwPMf{5!1yOqYwhcEK zX}NoYk2wmjd#$Y{=Bgbms|&L4Ivlz@GP~>s1%|44)piV}G{S#5V^x%kz{Yhl` z?7rKg`w;1p3c|e%Sv1jRZ=H{fDxDO|)jH|RVkl}|dt^Fp8p%A^3p@T(JpGVr4NIe7 zh?$tD0ci8%zK!Z!06*1#zC_i9A>)v0S=_kQu6 zj}Xn+8yB@0FZ}CIzZ-LEJmG`C)-RcUpyA{5Jw}JWy%u-3YGPw0or~57EDPF`Kwe1v z80?m$mNhfJTo?%3-i|kvJD^G(FL-@uQm9w)g*KTx*L4>BvS2U|i#Tw#m8R_&BjhJm#_c+%dWQn5o>Ts=YIB~w@5*+h?Qxb)XpLYNK z%k@-AgO?97j4D&t3nsaEb>8fqxCFs&bM)qjiAnw=7HJQO{3|&io=|1ykg6gsDS?_W z*cKOoEWB%?a%z{wafj|t$~f0!KRybuvOObYEL=C*4@TxWa0lrfVbas%(ae|-GmcVd zJ~IZ$=ZOZh>V;h zDT-DrZxtrtzH~%Jady40WM_`@eH%W+|KPmlwYNj&gFpZF!%_TTEP0kS^{aBQ_~~b^)n3pMGU9L^onP^{^gW4H zB!^vrNCZ@MIz%nygDh8QKD3P078OTbSs|=~r9@HDw$ev>BtafLvdY+aT(9o1 z#EfcM&Ll~DlT+X;f`0LvK?>0U9#<|f@MnBAa33n;R!p{8f~(x#EAu}aBHpEkxrmqL z^b{#%lp`o67d2cgMo(g0M~FC3pX}HS8gv^35P?b7?(FdXvmkzZ%XooUODEW(Mt4hiI&& zEwS%gTD7I9wM7VqQc<+bt1;EFwn!PZR+!FnI@kO0d^y*1{?~KPbFTZofA?Y2h8W`0 z-B?Y!ECN$?zVG!y!g%c;LVr!Jw(M_A?vF4=%m&GIsGzYvr*0#w|DBnVhN30!WBy8z zxm~=Rz%Q^)_#os?KS-;cAZqxhHztpZ6k_-j409EqJJVp6AD`wN=fG2YFvixE;=tQV z%Ar*qPLCX=$k8O^3(t99_)%fKKpJtsLNJj#S7Y#&?{oGelaj0LR(9;vjf>1RdUC7B zhQN+Z`6$Izc+?~}V&hJESknM!wyfevKZZs*NtxN*i&_=u_AWKyO~4lx@ zZ#v8Tx;0HukuKanvTmqOuE8rU#d@LD&lY>DHXWx>Fd|nG1 zTNJb~3ozd8g$`A9`gY~+=^$B@DY*saYie6_iec7d(p;1C%E>6~V?IZiPGTD;W`b9y z?91O%Fjr{$N=Q*Wq`K_anI}EdxX<<6(hxsKvLbc3bM9Nxpae>p69!>k;XsOR@dd17yHt@(bAd;HQ>1EtK*v zN7x&#Gg=~sv5~T_ve`blDsYE${tr7R9w9H>5R4(r`ScP_v6GK{*h!Y(3ton@(!@VQ zeB%8ZvQwYHg|<=Wl!mDZ?kub6^sy6HE;_%ID%f^l@~ciMs?brb!53liIh)VFf$>RE zfiEZ{!^x|7z-NJyRR1X8bvsDsJJmG$W8|%;&dEd`lb}Cs>}f*vSEXny*W$4jf9|w- zN+7&Sg4#M*qLZ=6om9BwGGHu$*IyYX^1NR!EveA?M(1F=<(Q*4qE8a}cFQ@nTk28p zyzG>iARe>GYE&{tZm|FYf^8g^ME51C4EOi9f~p3LEp9bo(b9w0lBWiZV|UU;?3!%l zm4Z(MKAcDsZU2iRg$P2)2rGDz#UZ7=&kF8FM2D=a^i+N&pSSA-Jx+*bd_^dl*T|Oq z{}q@HdLrwKrB5|?q=Qv@D^)Jq}bJl~jD@>WjT2nLBoyy`L#PL(x3Ju121z9`E{He4oqc1A_1hlPa|SqLI9BoNvC@1$e}Hna<8DE%0zc|L88_uEnVmR| z)yR@QKRkl`rZ~KlghhL)5vOV{WxsW7Nxa1s3GBuF>S`YyppknI9>}0sFuCjaOfHBE zX+JGgb|Go|!vKIoAW*3l8Zm^}G5t$|^d>Kid!SD+4C|$C*=&>Yb?LUSNFiEsZB*VG zWmb&X3!FVk%HbMZ18WPOR!S+qsg#lHJ;GDY^Hjk9{R1dEiCDSDyI>z)e+(JUQ?}2} zZ)tS=5wQw2g<$omQj$HK4$`E}nX%9m+@*ex)F1%sY?K_!k)+-BDQhCP$A?mXcfu$* z+>^Yj3JW9UzofI_x#V~4b@|Wm|L%#$u%rSS;+17IT1ts;SS%B*V6-4{;-Kk(Q5WXo z$7wB`hnVe=T5`kiJ0!F%58r#n)04UL0VzHiV4Rwpvu<==+H1l@e+Q_OIqF2g47J3N zJJS8(#p19*Gk1;+g`LcfTbtiE1U)h>Yobu_o;n2X(##wZRbyxwXjvRQNl`Ig(c@Wd z*+kDcKJQemxPkN}Qe#jsXGZ5*-Rn5zR%W%Z)$HhP;o)(`p`a#pyXsP zuDQ#%$VU>vgkWp;6@}~OI5^QkkYCDBG4fjpY{aft!z_*WX095z9Ru3R4wMM7m%D8p zbmgV(12S-?sy&LCacj8w)wbCoqhCNBOz`gcZ@>Grn$V+#()BKr0*cyCxVkciZRM=>DD3y@LwAQ=b5MbR#YpP!{xHKvyZ=!5d4 Ouk3A{tQ#ze@&5ol@h<=X literal 0 HcmV?d00001 diff --git a/Examples/OverridingScenesAndPrefabs/Images/ServiceSettings.png b/Examples/OverridingScenesAndPrefabs/Images/ServiceSettings.png new file mode 100644 index 0000000000000000000000000000000000000000..ea7d2729d2eaf3e98a93732ac7818638f13046a6 GIT binary patch literal 71789 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/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%0D=Q02w7#&FH&p^# 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

h-$s8HkJ#@BB=t1@a2c)eRx{U`D>Jbli% zKFg(g#7!a#J^IgWMfsld-w{G?L}9%q7-i2zyB}1AIDC`>F=-<2;v>f0rA0XsF8fiK z#FOJ#R~qyJ%fQz`TVQu0+MmOmm(MEJJmq08y5mzb@K`2=N9}SFNWp2Xx#+U3JXR%d zz+n2#$f3#)USU@?O0K2dDEXM(G77X*sQ)`E7O3h2K})VJ(0@1fR)yfNWLTRVt#;fO zR`pr~xx#(Xi_w^n8?We@*Lk?3-#+Qn<;C1o`c z$71yjUyJ0JF?p?pvaQQ`99q1d1;Vwf%=#*)qn$^T1w-I29EwYiPGjMsf1llL4E!yV z?SF6F87%WbDJN#s=93n(HADOUgs1V70?B7)Rw4j8EQE;$OHcUCaMrvY(1taA!2UcH zpXxp08qgoY^7JLm9XG1R2Fu<+Mz#0v=~G6&X#Qo+PJZ!6724;%EIjx9ff1J6 zd4-F{;z9TP``v{F@wZi3AtRm=^N2Ko3vUVb_iatVh;f|c#Bj@WVdMtZBvTI?=aF7UpYvE#;@)MMWc1s2%30>`XDirYN=I;TY+ewMP{%W$s z#d$e%JjwRS4M?Hd{9ds#E$6#D%ybsAodU2z|2|s2Cb^xeti@n2|UH zn_#3ia`W-r5h%4%1|nZpKA{^Y82@tz0P<-gVA5c5MuV9Bm6^B8qL7yLr0^aY20u{E zL1g9fppNOEdjtGhY5JzW7YuW=8j2zNMj6L#Px``-&yO~euOY5K9P2HLo;1q-=~jbR ziVKnwDfcS5YK(z~1f69-ck)!KZyOX41>cD3aNg&_8B_I7JO9 zX)mzvSp3F1C+GxUI5OrK2;X{Di)3%DZvY~G22i6Aof(D~MBDYg-4Ra)^Q4je2VlO^ z)$M4EZ;h1bA9eG|X#}7`$xF)j)ctm0b1TQfDFL&MTK$&=xa^`q)j!cZ^NZ6zvr7PZ`7xxCdS_0_d^Cb%#tx0d}i=I}{ zXyj+ug6ZZ?SzbC`ZBf`1<@{Yh2I}tY$GM%tU&bkgLvGg|KnxSi<5k_^%i-E5-V6KD zN14Qs#oe~@R4(%u&VZZ1b&leXp~9@v5~*jM8%82~>A-US%R*H5QI!T@qVWOco|!)q zir@0C=ug>E6J0fdTth5~`Ol7r>@Xr1Z!p^<3pX#fewes*Ke(!m(0b*?*wlz$5NYTs zIAsTAKE#$?)(JC6eAbia1E!n^7>W-{Owb$eFgAkm6Ljc$-O7~9>~5XzfX!8;Y3--n zFfux|6w=t|LGGjJGhmPdIw9x-&!8ov9;=mI(kJtUH8m;14s|NtxG*KwS5ezRF{rA7 zFPomGo{C+cav>eM*yP-A!1N%3Pao8mTyZ7OB*@XLnMAL z@xbEmeM7%~d`aIG)rg1+V<1cOdGjmp1}5CTIibX(5vvepx2B2b89Wx7MO94oQT{$$ zLgOLj@FqKAQ*=jCHgCt%8JOY{b3cmtHX=U#nWnZV^Mh}=NjW=i{6C;#T<`dtj7Z`= z5w)A)T+*a$op;E-a289SR!RA;cZZcm|MZjQBc|!?%d^GS*p$lL+b}4GHjwKprBD(2 zBw2c*b15|c9hh2D?X=cEraP*DQ%B(Uq@L*0JfuWTR;)OM3?u&i)GD}C91tmC|Ku%^ zbdM~k)qv!{j*%g6^0uRYv+zJXBKIL)&=-qbzu%*>1Fd99W*Y=MU82iWB5QESoFxw# zqVrZRwCg(DVI`~5MN#&hTu9qtAq8;MNYngWy^fV{K&h3G`h~yhi~WnvwQZ>s!I-ax zl}6$XZO)y%7W%X*h-Qb|n29!)Kcja6u_88VP=}%g5)jYsw)5#7_5cQv5s}G8$TT#_ zXWe}fXT=$a2D3d`^t&~QGVim~{c`WMVWW#x1Aj?vmO6~(#at-z{x%!3VgbKhrJgXo z^fzqnWXcyUm2)-O(jazoJpCvcvRb<0NNq)KfZr-pu?MuN*fC~W^emFf2RT_J2v!eQ zJX`oRJkoD*Jgs7|M$1e4nN)12h!HE=Uz5H1?juie`R6z&5`6V@7hFv8GHxm?p8OeT zs&<#gUN9+YfOTB7U6T*-Y{<1>w`}Rh7(u_%8!jnYl*QM8FJ_cfxKZ!SGwwCwx$YIGl__3+jThBh`v`eLfu` zr^SLqnDwS7gjdI$YwxpXG@Hnet4DI+yw4yj0E-WSKLh80a#hw=SVxipb7Yat&7YdK zKy+Vb373OZbN2%$iB%#>$SO;^XU}U&1XG0ChJDqAaTm;)NKqyn+?c! zSQ92|n|VN*?%goCY6b1cOcqyDrZXF7aqU)b4@d50U5Y%et1sG(tU$=G>^nrOa2Gx8 zudLDr*kD)b^=>!aUh7yJu-Zq4S@=Lz!yVVwUv|7*?EAE{;N39T!)TzLc<$+JVT_tQ za0g~8!$S!n!hwEkQQDzvsCNa9%W<*y4Z-5_>|k~pb=_5X>&k74=|KCuG<)id~F9H}kJKtjcab`oo|}mj{=v zOMxsYaq*WJUm=esn40&cLn06lh^|iFYoaa3Pb6% zEu>5t^|Z$({A=cQwSmmwxGiUZ*OK9=T&=@{9A`JcOD(@2Yc)BPmW_v|55+$4J zNH4qHZHn{t=+y@I5Ki%`ctg*MO=zv`f6k#&K}$xq`gq%XA9%y+n1PQQy>W{{y@N3- zi@@yW0gTFeHW0h?qqO5U)!=Y1cCQ};5!jEk-s710HF3^3V2Ow5+P8e3iz(hH`NpN! z^cph%tZ}EjgE4r7p(cC^SZmF{YB>sN!u;FEB37^ zCUkhLeCW(ZGNlvrZ;i+A0LfvbyA+jk)%}DsP$Pn~ Overriding Scenes and NetworkPrefabs -This example, based on the [Netcode for GameObjects Smooth Transform Space Transitions](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/tree/example/server-client-unique-scenes-and-prefabs/Examples/CharacterControllerMovingBodies), provides examples of using: -- [`NetworkPrefabHandler`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkPrefabHandler.html) to be able to dynamically control prefab overrides. - - For this example, the prefab handler is overriding the player prefab. You will only see the end result of this portion of the example by running a pure server instance as this is the only instance that will create instances of the ServerPlayer network prefab instead of the ClientPlayer prefab. -- [`NetworkSceneManager.SetClientSynchronizationMode`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkSceneManager.html#Unity_Netcode_NetworkSceneManager_SetClientSynchronizationMode_UnityEngine_SceneManagement_LoadSceneMode_) to use existing preloaded scenes for synchronization. -- [`NetworkSceneManager.VerifySceneBeforeLoading`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkSceneManager.html#Unity_Netcode_NetworkSceneManager_VerifySceneBeforeLoading) to control which scenes are used to synchronize with newly connected clients. - - This includes the exclusion of scenes already loaded for both clients and/or server. +![image](Images/EndResultView.png) +_Supports using the client-server and distributed authority network topologies._ -_This example supports using the client-server and distributed authority network topologies._ -## Client Synchronization Mode -A server or session owner, depending upon network topology being used, sends the synchronization mode that a newly newly connected client will use when synchronizing. +This example, based on the [Netcode for GameObjects Smooth Transform Space Transitions](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/tree/example/server-client-unique-scenes-and-prefabs/Examples/CharacterControllerMovingBodies), provides and overview of how to use: +- [`NetworkPrefabHandler`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkPrefabHandler.html) as a way to dynamically control overriding network prefabs and how they are instantiated. + - For this example, the prefab handler is overriding the player prefab. + - *You will only see the end result of this portion of the example by running a server instance (i.e. not host) as that will create instances of the ServerPlayer network prefab instead of the ClientPlayer network prefab.* +- [`NetworkSceneManager.SetClientSynchronizationMode`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkSceneManager.html#Unity_Netcode_NetworkSceneManager_SetClientSynchronizationMode_UnityEngine_SceneManagement_LoadSceneMode_) to change the default client synchronization mode (SingleMode) to an additive client synchronization mode. + - Additive client synchronization mode will prevent already existing preloaded scenes from being unloaded and will use them, as opposed to reloading the same scene, during a client's initial synchronization. + - *This is a server-side only setting that gets sent to the clients during the initial synchronization process.* +- [`NetworkSceneManager.VerifySceneBeforeLoading`](https://docs.unity3d.com/Packages/com.unity.netcode.gameobjects@2.0/api/Unity.Netcode.NetworkSceneManager.html#Unity_Netcode_NetworkSceneManager_VerifySceneBeforeLoading) in order to control what scenes the server will include when sending the synchronization message to newly connecting clients. + +## Building The Project +This example uses unity services. Upon loading the project for the first time, you will want to set your organization and create a new cloud project. This is the only required setting to create stand alone builds for this project. +![image](Images/ServiceSettings.png) + +## Terminology + +### Shared Scenes +These are scenes that will be synchronized between a server or session owner and used when a client runs through the initial synchronization process. +- You can populate these scenes with in-scene placed or dynamically spawned NetworkObjects. +- These scenes **must be** within the scenes in build list. + +### Local Scenes +These are scenes that are always only local to the application instances (server or client) and will not be synchronized. +- You should not populate these scenes with NetworkObjects. + -However, this example includes one of several ways you can associate a `MonoBehaviour` with a `NetworkBehaviour`. +- These scenes can be dynamically created, included in the scenes in build list, or be an addressable loaded at some point prior to connecting or while connected to a session. + +## Client Synchronization and Scene Validation +By combining these two scene management features, you can preload scenes: +- That should not be synchronized and/or are specific to the server or client side of a network session. +- That you know will be synchronized in order to reduce the client synchronization process. + +This approach can be useful if you: +- Want to have server-side only content that is loaded only on a server. +- Want to load local scenes for UI purposes or content that you don't need to synchronize. + - *This example separates the colliders of the scene geometry from the mesh filters and renderers. Clients are the only instances that load the graphics related scene assets. Both clients and server load a shared scene that contains in-scene placed NetworkObjects and the colliders for the "floor"* + [Read the documentation for more information about client synchronization mode.](https://docs-multiplayer.unity3d.com/netcode/current/basics/scenemanagement/client-synchronization-mode/) -This example uses an additive client synchronization mode in order to use already loaded scenes during client synchronization. + +### Note on Distributed Authority +Since a distributed authority network topology is designed to keep all clients synchronized enough with the SDK level states in order to allow for rapid session owner promotion, the most common design approach (relative to this example) is to have local client scenes and the scenes to be synchronized between clients. However, there could be edge case scenarios where perhaps you only want there to only ever be a single session owner and upon the session owner disconnecting all clients will disconnect themselves too. Under this type of design, it would be valid to have local "server-side" (i.e. session owner) scenes. This example implements this by default for example purposes only. If you want your project to use session owner promotion, then it is highly recommended to only use the have client-side local and shared scenes approach. ## The Bootstrap Loading Process -![image](https://github.com/user-attachments/assets/fe04e058-3c5f-42dd-b55f-b0caea2d7f84) +![image](Images/ScenesView.png) ### BootstrapScene -The first scene loaded. Contains the `NetworkManagerBootstrapper` in-scene placed `GameObject`. -![image](https://github.com/user-attachments/assets/061d5c60-0fea-4209-a2d0-2e2ec425eb60) +The first scene loaded. Contains a `NetworkManagerBootstrapper` in-scene placed `GameObject`. +![image](Images/NetworkManagerBootstrapper.png) + +#### NetworkManager Bootstrapper (component) +![image](Images/NetworkManagerBootstrapperProperties.png) + +Handles the pre-network session menu interface along with connect and disconnect events. Since it is derived from `NetworkManager`, it also defines the network session configuration (i.e. `NetworkConfig`). The `NetworkManagerBootstrapper` in-scene placed `GameObject` gets loaded into the DDOL scene automatically and will persist throughout the application life time. This derived class requires the `SceneBootstrapLoader` component. #### Scene Bootstrap Loader (component) -![image](https://github.com/user-attachments/assets/24d37c38-75a7-42cb-a42f-13e5ce856a63) +![image](Images/SceneBootstrapLoader.png) -This component handles preloading scenes for both the client(s) and server. The `NetworkManagerBootstrapper` is an extended `NetworkManager` that requires the `SceneBootstrapLoader` component which upon being started will invoke `SceneBootstrapLoader.LoadMainMenu`. -- **Default Active Scene Asset:** There is always an active scene. For this example, the default active scene is the same on both the client and server relative properties. +This component handles preloading scenes for both the client(s) and server. Upon being started, the `NetworkManagerBootstrapper` component will invoke `SceneBootstrapLoader.LoadMainMenu` method that kicks off the scene preloading process. +- **Default Active Scene Asset:** There is always an active scene. For this example, the default active scene is the same on both the client and server relative properties. *The active scene is always (and should always) be a "shared scene".* - This could represent a lobby or network session main menu (i.e. create or join session). - Both the client and the server preload this scene prior to starting a network session. - **Local Scene Assets:** There could be times where you want to load scenes specific to the `NetworkManager` instance type (i.e. client, host, or server). @@ -44,15 +80,31 @@ The `NetworkManagerBootstrapper` uses the `SceneBootstrapLoader` component to st - _Server or Session Owner only:_ - If any, load the shared (i.e. synchronized) scene assets using the `NetworkSceneManager` -#### NetworkManager Bootstrapper (component) -![image](https://github.com/user-attachments/assets/54d0695f-87d2-4626-bdf6-9cf72b82d7f8) +#### Network Prefab Override Handler (component) +![image](Images/NetworkPrefabOverrideHandler.png) -Handles the pre-network session menu interface along with connect and disconnect events. Since it is derived from `NetworkManager`, it also defines the network session configuration (i.e. `NetworkConfig`). +This `MonoBehaviour` component implements the `INetworkPrefabInstanceHandler` interface and registers with the `NetworkManafer.PrefabHandler` when started. It contains two network prefab properties: +- Network Prefab: This is the network prefab that you want to override. In this example, it is what is used to spawn a server-side player prefab and is what is defined within the `NetworkManagerBootstrapper` component. +- Network Prefab Override: This is what is used to spawn a player prefab on the client-side. -#### Network Prefab Override Handler (component) -![image](https://github.com/user-attachments/assets/c382c3ff-bc72-4a6f-b2f2-04e0e70b1fa8) +At runtime the local `NetworkManager` instance is a client/host or server and will spawn either the ClientPlayer or ServerPlayer prefab. The `NetworkPrefabOverrideHandler` does not need to be a `NetworkBehaviour` and sometimes (especially for overriding the player prefab) it is better to handle prefab handlers prior to starting the `NetworkManager`. + +## Input Controls +The following is a list of the input controls used in this project: +### Clients Only +- `W,A,S,D`: Movement (forward, backward, turn left, turn right) + - *Arrow keys can be used as well.* +- `SPACE`: Jumps +- `P`: Enable disable player name and information. +- `C`: Toggles the player child object movement (continuous or only when the player moves). + +### Server Only +- `[,]`: Right and left bracket keys will follow spawned players. +- `Backspace`: Stop following a player. + +## Example Limitations +This example is primarily to provide a starting point for anyone interested in exploring how to override (customize) the scene loading and/or prefab instantiation. It does not cover all possible use case scenarios. It is recommended to explore this example, modify it, and read the [Netcode for GameObjects documentation](https://docs-multiplayer.unity3d.com/netcode/current/about/) for more details. -This prefab handler determines at runtime where the local `NetworkManager` instance is a client/host or server and will spawn either the ClientPlayer or ServerPlayer prefab. The `NetworkPrefabOverrideHandler` does not need to be a `NetworkBehaviour` and sometimes (especially for overriding the player prefab) it is better to handle prefab handlers prior to starting the `NetworkManager`.

$xV_Q%ka%T+>5h9B^llW;|Xo`_aRDBOFix1z7) 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