diff --git a/Assets/Unheimlich_POC/Datas/Camera.meta b/Assets/Unheimlich_POC/Datas/Camera.meta
new file mode 100644
index 00000000..d52a9ab8
--- /dev/null
+++ b/Assets/Unheimlich_POC/Datas/Camera.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5817eb2becd42c043a50551c7fd25feb
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Datas/Camera/DefaultCameraPanSettings.asset b/Assets/Unheimlich_POC/Datas/Camera/DefaultCameraPanSettings.asset
new file mode 100644
index 00000000..9eec3d97
--- /dev/null
+++ b/Assets/Unheimlich_POC/Datas/Camera/DefaultCameraPanSettings.asset
@@ -0,0 +1,44 @@
+%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: 3e231c75dddecc0469543c190a9234b1, type: 3}
+ m_Name: DefaultCameraPanSettings
+ m_EditorClassIdentifier: Assembly-CSharp::Unheimlich.Data.CameraSettings.CameraPanSettings
+ PanSpeed: 3
+ PanBorderSize: 0.05
+ MaxPanAngle: 10
+ AlignmentSpeed: 3
+ AlignmentThreshold: 0.5
+ UseSmoothStep: 1
+ AlignmentCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 2
+ outSlope: 2
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
diff --git a/Assets/Unheimlich_POC/Datas/Camera/DefaultCameraPanSettings.asset.meta b/Assets/Unheimlich_POC/Datas/Camera/DefaultCameraPanSettings.asset.meta
new file mode 100644
index 00000000..f2067aa1
--- /dev/null
+++ b/Assets/Unheimlich_POC/Datas/Camera/DefaultCameraPanSettings.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9973a518f73c3c1489819494e37d0980
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Datas/Camera/SlowInspectionPanSettings.asset b/Assets/Unheimlich_POC/Datas/Camera/SlowInspectionPanSettings.asset
new file mode 100644
index 00000000..c9dfd770
--- /dev/null
+++ b/Assets/Unheimlich_POC/Datas/Camera/SlowInspectionPanSettings.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: 3e231c75dddecc0469543c190a9234b1, type: 3}
+ m_Name: SlowInspectionPanSettings
+ m_EditorClassIdentifier: Assembly-CSharp::Unheimlich.Data.CameraSettings.CameraPanSettings
+ PanSpeed: 1
+ PanBorderSize: 0.15
+ MaxPanAngle: 20
+ AlignmentSpeed: 1.5
+ AlignmentThreshold: 0.5
+ UseSmoothStep: 1
+ AlignmentCurve:
+ serializedVersion: 2
+ m_Curve: []
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
diff --git a/Assets/Unheimlich_POC/Datas/Camera/SlowInspectionPanSettings.asset.meta b/Assets/Unheimlich_POC/Datas/Camera/SlowInspectionPanSettings.asset.meta
new file mode 100644
index 00000000..36a56abd
--- /dev/null
+++ b/Assets/Unheimlich_POC/Datas/Camera/SlowInspectionPanSettings.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 32f81135c61c8ce408c2bbb8252f1fa3
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Materials/Rooms/5.meta b/Assets/Unheimlich_POC/Materials/Rooms/5.meta
new file mode 100644
index 00000000..d259a647
--- /dev/null
+++ b/Assets/Unheimlich_POC/Materials/Rooms/5.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b2af0ec17d1ca0e43ba994dfd70a0cd3
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Materials/Rooms/5/DeteciveBoardMaterial.mat b/Assets/Unheimlich_POC/Materials/Rooms/5/DeteciveBoardMaterial.mat
new file mode 100644
index 00000000..e6f660a0
--- /dev/null
+++ b/Assets/Unheimlich_POC/Materials/Rooms/5/DeteciveBoardMaterial.mat
@@ -0,0 +1,137 @@
+%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: DeteciveBoardMaterial
+ m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, 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:
+ RenderType: Opaque
+ disabledShaderPasses:
+ - MOTIONVECTORS
+ 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: 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}
+ - _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:
+ - _AddPrecomputedVelocity: 0
+ - _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: 0
+ - _Glossiness: 0
+ - _GlossyReflections: 0
+ - _Metallic: 0
+ - _OcclusionStrength: 1
+ - _Parallax: 0.005
+ - _QueueOffset: 0
+ - _ReceiveShadows: 1
+ - _Smoothness: 0.5
+ - _SmoothnessTextureChannel: 0
+ - _SpecularHighlights: 1
+ - _SrcBlend: 1
+ - _SrcBlendAlpha: 1
+ - _Surface: 0
+ - _WorkflowMode: 1
+ - _XRMotionVectorsPass: 1
+ - _ZWrite: 1
+ m_Colors:
+ - _BaseColor: {r: 0.6226415, g: 0.6226415, b: 0.6226415, a: 1}
+ - _Color: {r: 0.62264144, g: 0.62264144, b: 0.62264144, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+ - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
+ m_BuildTextureStacks: []
+ m_AllowLocking: 1
+--- !u!114 &2916271140950744041
+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: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
+ version: 10
diff --git a/Assets/Unheimlich_POC/Materials/Rooms/5/DeteciveBoardMaterial.mat.meta b/Assets/Unheimlich_POC/Materials/Rooms/5/DeteciveBoardMaterial.mat.meta
new file mode 100644
index 00000000..14c0ea3e
--- /dev/null
+++ b/Assets/Unheimlich_POC/Materials/Rooms/5/DeteciveBoardMaterial.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 45305197f5572ad40aec449786c26f45
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Materials/Rooms/5/RoomFiveMaterial.mat b/Assets/Unheimlich_POC/Materials/Rooms/5/RoomFiveMaterial.mat
new file mode 100644
index 00000000..9ceebd52
--- /dev/null
+++ b/Assets/Unheimlich_POC/Materials/Rooms/5/RoomFiveMaterial.mat
@@ -0,0 +1,141 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &-6718159044353317607
+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: 10
+--- !u!21 &2100000
+Material:
+ serializedVersion: 8
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: RoomFiveMaterial
+ m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
+ m_Parent: {fileID: 0}
+ m_ModifiedSerializedProperties: 0
+ m_ValidKeywords:
+ - _ENVIRONMENTREFLECTIONS_OFF
+ m_InvalidKeywords:
+ - _GLOSSYREFLECTIONS_OFF
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: -1
+ stringTagMap:
+ RenderType: Opaque
+ disabledShaderPasses:
+ - MOTIONVECTORS
+ 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: 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}
+ - _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:
+ - _AddPrecomputedVelocity: 0
+ - _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: 0
+ - _GlossMapScale: 0
+ - _Glossiness: 0
+ - _GlossyReflections: 0
+ - _Metallic: 1
+ - _Mode: 0
+ - _OcclusionStrength: 1
+ - _Parallax: 0.005
+ - _QueueOffset: 0
+ - _ReceiveShadows: 1
+ - _Smoothness: 0
+ - _SmoothnessTextureChannel: 0
+ - _SpecularHighlights: 1
+ - _SrcBlend: 1
+ - _SrcBlendAlpha: 1
+ - _Surface: 0
+ - _UVSec: 0
+ - _WorkflowMode: 1
+ - _XRMotionVectorsPass: 1
+ - _ZWrite: 1
+ m_Colors:
+ - _BaseColor: {r: 0.7735849, g: 0.48565733, b: 0.19217977, a: 1}
+ - _Color: {r: 0.7735849, g: 0.48565733, b: 0.19217974, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+ - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
+ m_BuildTextureStacks: []
+ m_AllowLocking: 1
diff --git a/Assets/Unheimlich_POC/Materials/Rooms/5/RoomFiveMaterial.mat.meta b/Assets/Unheimlich_POC/Materials/Rooms/5/RoomFiveMaterial.mat.meta
new file mode 100644
index 00000000..1ce87987
--- /dev/null
+++ b/Assets/Unheimlich_POC/Materials/Rooms/5/RoomFiveMaterial.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4b8a2e8e751a67447b90d180836b3878
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 2100000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Prefabs/Player/Main Camera.prefab b/Assets/Unheimlich_POC/Prefabs/Player/Main Camera.prefab
index 272d6333..be431dd5 100644
--- a/Assets/Unheimlich_POC/Prefabs/Player/Main Camera.prefab
+++ b/Assets/Unheimlich_POC/Prefabs/Player/Main Camera.prefab
@@ -45,6 +45,7 @@ GameObject:
- component: {fileID: 739341087101828676}
- component: {fileID: 6449006773219804445}
- component: {fileID: 1210323975715635039}
+ - component: {fileID: 4365653766954783987}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
@@ -200,3 +201,19 @@ MonoBehaviour:
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
m_Version: 2
+--- !u!114 &4365653766954783987
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5147950023760557604}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 69e8150bab500424eb366f0ac8761995, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::Unheimlich.Gameplay.CameraControl.CameraPanController
+ _camera: {fileID: 671466249668048498}
+ _playerTransform: {fileID: 0}
+ _settings: {fileID: 0}
+ _lookAction: {fileID: 0}
diff --git a/Assets/Unheimlich_POC/Prefabs/Rooms/RoomToLoadFive.prefab b/Assets/Unheimlich_POC/Prefabs/Rooms/RoomToLoadFive.prefab
new file mode 100644
index 00000000..7140b74e
--- /dev/null
+++ b/Assets/Unheimlich_POC/Prefabs/Rooms/RoomToLoadFive.prefab
@@ -0,0 +1,1523 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &1426444537624782055
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3812313393986610632}
+ m_Layer: 0
+ m_Name: Items
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &3812313393986610632
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1426444537624782055}
+ 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: 6782646836872321146}
+ m_Father: {fileID: 3965737018690194595}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &1995558577310749644
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 6782646836872321146}
+ - component: {fileID: 2502617234808613813}
+ - component: {fileID: 4691589681962545124}
+ - component: {fileID: 1416958417081911791}
+ m_Layer: 0
+ m_Name: Cube
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &6782646836872321146
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1995558577310749644}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 3.9998748, y: 1, z: 1.9999499}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 3812313393986610632}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &2502617234808613813
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1995558577310749644}
+ m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &4691589681962545124
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1995558577310749644}
+ 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_ForceMeshLod: -1
+ m_MeshLodSelectionBias: 0
+ m_RenderingLayerMask: 1
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 9807d7283b8cfa54ba3fb82adeb011cd, 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_GlobalIlluminationMeshLod: 0
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_MaskInteraction: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!65 &1416958417081911791
+BoxCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1995558577310749644}
+ 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: 1}
+ m_Center: {x: 0, y: 0, z: 0}
+--- !u!1 &2008977777731723696
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 404191218827319330}
+ m_Layer: 0
+ m_Name: Lights
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &404191218827319330
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2008977777731723696}
+ 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: 2951521159404420143}
+ - {fileID: 7661646952748456549}
+ m_Father: {fileID: 3965737018690194595}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &2757010966349118316
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7557062904579759447}
+ - component: {fileID: 308102004899398107}
+ - component: {fileID: 8372318773087887588}
+ - component: {fileID: 6954627091512351276}
+ m_Layer: 0
+ m_Name: Cube
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &7557062904579759447
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2757010966349118316}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: -2.17, z: 0}
+ m_LocalScale: {x: 7, y: 5, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 3941506515996401395}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &308102004899398107
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2757010966349118316}
+ m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &8372318773087887588
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2757010966349118316}
+ 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_ForceMeshLod: -1
+ m_MeshLodSelectionBias: 0
+ m_RenderingLayerMask: 1
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 45305197f5572ad40aec449786c26f45, 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_GlobalIlluminationMeshLod: 0
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_MaskInteraction: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!65 &6954627091512351276
+BoxCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2757010966349118316}
+ 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: 1}
+ m_Center: {x: 0, y: 0, z: 0}
+--- !u!1 &3210101827131705135
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 5831650301161165405}
+ m_Layer: 0
+ m_Name: DetectiveBoard
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &5831650301161165405
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3210101827131705135}
+ serializedVersion: 2
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: -0.38435, y: 6.36425, z: 13.13094}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 3941506515996401395}
+ m_Father: {fileID: 3965737018690194595}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &3669803179848655488
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 2951521159404420143}
+ - component: {fileID: 1259933304253263975}
+ - component: {fileID: 8967965565644899159}
+ m_Layer: 0
+ m_Name: Spot Light
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &2951521159404420143
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3669803179848655488}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
+ m_LocalPosition: {x: 0, y: 17.72, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 404191218827319330}
+ m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
+--- !u!108 &1259933304253263975
+Light:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3669803179848655488}
+ m_Enabled: 1
+ serializedVersion: 12
+ m_Type: 0
+ m_Color: {r: 0.74213827, g: 0.4505881, b: 0.15169488, a: 1}
+ m_Intensity: 1000
+ m_Range: 30.78
+ m_SpotAngle: 58.2
+ m_InnerSpotAngle: 19.8
+ m_CookieSize2D: {x: 10, y: 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!114 &8967965565644899159
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3669803179848655488}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalLightData
+ m_UsePipelineSettings: 1
+ m_AdditionalLightsShadowResolutionTier: 2
+ m_CustomShadowLayers: 0
+ m_LightCookieSize: {x: 1, y: 1}
+ m_LightCookieOffset: {x: 0, y: 0}
+ m_SoftShadowQuality: 0
+ m_RenderingLayersMask:
+ serializedVersion: 0
+ m_Bits: 1
+ m_ShadowRenderingLayersMask:
+ serializedVersion: 0
+ m_Bits: 1
+ m_Version: 4
+ m_LightLayerMask: 1
+ m_ShadowLayerMask: 1
+ m_RenderingLayers: 1
+ m_ShadowRenderingLayers: 1
+--- !u!1 &4459682163590834316
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7428994820789890090}
+ - component: {fileID: 8209576767969738346}
+ - component: {fileID: 3183872434840784399}
+ - component: {fileID: 5984932440182486461}
+ - component: {fileID: 1308658098883283559}
+ - component: {fileID: 6433754577218517818}
+ - component: {fileID: 7697102470713238675}
+ m_Layer: 0
+ m_Name: Plane
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &7428994820789890090
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ serializedVersion: 2
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: -8.919849, y: -8.039558, z: -0.7953472}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 7656844688830104809}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &8209576767969738346
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 8233d90336aea43098adf6dbabd606a2, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_MeshFormatVersion: 2
+ m_Faces:
+ - m_Indexes: 000000000100000002000000010000000300000002000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 040000000500000006000000050000000700000006000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 08000000090000000a000000090000000b0000000a000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 0c0000000d0000000e0000000d0000000f0000000e000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 120000001100000010000000120000001300000011000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 160000001500000014000000160000001700000015000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 1a00000019000000180000001a0000001b00000019000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 1e0000001d0000001c0000001e0000001f0000001d000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 220000002100000020000000220000002300000021000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 260000002500000024000000260000002700000025000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 2a00000029000000280000002a0000002b00000029000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 2e0000002d0000002c0000002e0000002f0000002d000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 320000003100000030000000320000003300000031000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ - m_Indexes: 360000003500000034000000360000003700000035000000
+ m_SmoothingGroup: 0
+ m_Uv:
+ m_UseWorldSpace: 0
+ m_FlipU: 0
+ m_FlipV: 0
+ m_SwapUV: 0
+ m_Fill: 1
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Rotation: 0
+ m_Anchor: 9
+ m_Material: {fileID: 0}
+ m_SubmeshIndex: 0
+ m_ManualUV: 0
+ elementGroup: -1
+ m_TextureGroup: -1
+ m_SharedVertices:
+ - m_Vertices: 000000002400000029000000
+ - m_Vertices: 01000000040000002000000025000000
+ - m_Vertices: 0200000008000000280000002d000000
+ - m_Vertices: 0300000006000000090000000c000000
+ - m_Vertices: 050000001c00000021000000
+ - m_Vertices: 070000000d000000180000001d000000
+ - m_Vertices: 0a000000110000002c000000
+ - m_Vertices: 0b0000000e0000001000000015000000
+ - m_Vertices: 0f0000001400000019000000
+ - m_Vertices: 1200000017000000
+ - m_Vertices: 130000002e000000
+ - m_Vertices: 160000001b000000
+ - m_Vertices: 1a0000001f000000
+ - m_Vertices: 1e0000002300000035000000
+ - m_Vertices: 22000000270000003100000034000000
+ - m_Vertices: 260000002b00000030000000
+ - m_Vertices: 2a0000002f000000
+ - m_Vertices: 32000000
+ - m_Vertices: 3300000036000000
+ - m_Vertices: 37000000
+ m_SharedTextures: []
+ m_Positions:
+ - {x: -14.391752, y: 0, z: -13.130945}
+ - {x: -14.391752, y: 0, z: 0}
+ - {x: 0, y: 0, z: -13.130945}
+ - {x: 0, y: 0, z: 0}
+ - {x: -14.391752, y: 0, z: 0}
+ - {x: -14.391752, y: 0, z: 13.130945}
+ - {x: 0, y: 0, z: 0}
+ - {x: 0, y: 0, z: 13.130945}
+ - {x: 0, y: 0, z: -13.130945}
+ - {x: 0, y: 0, z: 0}
+ - {x: 14.391752, y: 0, z: -13.130945}
+ - {x: 14.391752, y: 0, z: 0}
+ - {x: 0, y: 0, z: 0}
+ - {x: 0, y: 0, z: 13.130945}
+ - {x: 14.391752, y: 0, z: 0}
+ - {x: 14.391752, y: 0, z: 13.130945}
+ - {x: 14.391752, y: 0, z: 0}
+ - {x: 14.391752, y: 0, z: -13.130945}
+ - {x: 14.391752, y: 14.541088, z: 0}
+ - {x: 14.391752, y: 14.541088, z: -13.130943}
+ - {x: 14.391752, y: 0, z: 13.130945}
+ - {x: 14.391752, y: 0, z: 0}
+ - {x: 14.391752, y: 14.541088, z: 13.130943}
+ - {x: 14.391752, y: 14.541088, z: 0}
+ - {x: 0, y: 0, z: 13.130945}
+ - {x: 14.391752, y: 0, z: 13.130945}
+ - {x: 0, y: 14.541088, z: 13.130943}
+ - {x: 14.391752, y: 14.541088, z: 13.130943}
+ - {x: -14.391752, y: 0, z: 13.130945}
+ - {x: 0, y: 0, z: 13.130945}
+ - {x: -14.391752, y: 14.541088, z: 13.130943}
+ - {x: 0, y: 14.541088, z: 13.130943}
+ - {x: -14.391752, y: 0, z: 0}
+ - {x: -14.391752, y: 0, z: 13.130945}
+ - {x: -14.391752, y: 14.541088, z: 0}
+ - {x: -14.391752, y: 14.541088, z: 13.130943}
+ - {x: -14.391752, y: 0, z: -13.130945}
+ - {x: -14.391752, y: 0, z: 0}
+ - {x: -14.391752, y: 14.541088, z: -13.130943}
+ - {x: -14.391752, y: 14.541088, z: 0}
+ - {x: 0, y: 0, z: -13.130945}
+ - {x: -14.391752, y: 0, z: -13.130945}
+ - {x: 0, y: 14.541088, z: -13.130943}
+ - {x: -14.391752, y: 14.541088, z: -13.130943}
+ - {x: 14.391752, y: 0, z: -13.130945}
+ - {x: 0, y: 0, z: -13.130945}
+ - {x: 14.391752, y: 14.541088, z: -13.130943}
+ - {x: 0, y: 14.541088, z: -13.130943}
+ - {x: -14.391752, y: 14.541088, z: -13.130943}
+ - {x: -14.391752, y: 14.541088, z: 0}
+ - {x: 14.459042, y: 14.541088, z: -13.130943}
+ - {x: 14.459042, y: 14.541088, z: 0}
+ - {x: -14.391752, y: 14.541088, z: 0}
+ - {x: -14.391752, y: 14.541088, z: 13.130943}
+ - {x: 14.459042, y: 14.541088, z: 0}
+ - {x: 14.459042, y: 14.541088, z: 13.130943}
+ m_Textures0:
+ - {x: -14.391752, y: -13.130945}
+ - {x: -14.391752, y: 0}
+ - {x: 0, y: -13.130945}
+ - {x: 0, y: 0}
+ - {x: -14.391752, y: 0}
+ - {x: -14.391752, y: 13.130945}
+ - {x: 0, y: 0}
+ - {x: 0, y: 13.130945}
+ - {x: 0, y: -13.130945}
+ - {x: 0, y: 0}
+ - {x: 14.391752, y: -13.130945}
+ - {x: 14.391752, y: 0}
+ - {x: 0, y: 0}
+ - {x: 0, y: 13.130945}
+ - {x: 14.391752, y: 0}
+ - {x: 14.391752, y: 13.130945}
+ - {x: 0, y: 0}
+ - {x: 13.130945, y: 0}
+ - {x: 0, y: 14.541088}
+ - {x: 13.130943, y: 14.541088}
+ - {x: -13.130945, y: 0}
+ - {x: 0, y: 0}
+ - {x: -13.130943, y: 14.541088}
+ - {x: 0, y: 14.541088}
+ - {x: 0, y: -0.0000017223806}
+ - {x: 14.391752, y: -0.0000017223806}
+ - {x: 0, y: 14.541086}
+ - {x: 14.391752, y: 14.541086}
+ - {x: -14.391752, y: -0.0000017223806}
+ - {x: 0, y: -0.0000017223806}
+ - {x: -14.391752, y: 14.541086}
+ - {x: 0, y: 14.541086}
+ - {x: 0, y: 0}
+ - {x: 13.130945, y: 0}
+ - {x: 0, y: 14.541088}
+ - {x: 13.130943, y: 14.541088}
+ - {x: -13.130945, y: 0}
+ - {x: 0, y: 0}
+ - {x: -13.130943, y: 14.541088}
+ - {x: 0, y: 14.541088}
+ - {x: 0, y: -0.0000017223806}
+ - {x: 14.391752, y: -0.0000017223806}
+ - {x: 0, y: 14.541086}
+ - {x: 14.391752, y: 14.541086}
+ - {x: -14.391752, y: -0.0000017223806}
+ - {x: 0, y: -0.0000017223806}
+ - {x: -14.391752, y: 14.541086}
+ - {x: 0, y: 14.541086}
+ - {x: 14.391752, y: -13.130943}
+ - {x: 14.391752, y: 0}
+ - {x: -14.459042, y: -13.130943}
+ - {x: -14.459042, y: 0}
+ - {x: 14.391752, y: 0}
+ - {x: 14.391752, y: 13.130943}
+ - {x: -14.459042, y: 0}
+ - {x: -14.459042, y: 13.130943}
+ m_Textures2:
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ m_Textures3:
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ - {x: 0, y: 0, z: 0, w: 0}
+ m_Tangents:
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 0, y: 0, z: -1, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 1, y: 0, z: 0, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: 0, y: 0, z: 1, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ - {x: -1, y: 0, z: 0, w: -1}
+ m_Colors: []
+ m_UnwrapParameters:
+ m_HardAngle: 88
+ m_PackMargin: 20
+ m_AngleError: 8
+ m_AreaError: 15
+ m_PreserveMeshAssetOnDestroy: 0
+ assetGuid:
+ m_Mesh: {fileID: 0}
+ m_VersionIndex: 5866
+ m_IsSelectable: 1
+ m_SelectedFaces:
+ m_SelectedEdges: []
+ m_SelectedVertices:
+--- !u!114 &3183872434840784399
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 1ca002da428252441b92f28d83c8a65f, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Shape:
+ rid: 6514884969572335616
+ m_ShapeRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_UnmodifiedMeshVersion: 4801
+ m_Size: {x: 28.783504, y: 0, z: 26.26189}
+ m_LocalCenter: {x: 0, y: 0, z: 0}
+ references:
+ version: 2
+ RefIds:
+ - rid: 6514884969572335616
+ type: {class: Plane, ns: UnityEngine.ProBuilder.Shapes, asm: Unity.ProBuilder}
+ data:
+ m_HeightSegments: 1
+ m_WidthSegments: 1
+--- !u!23 &5984932440182486461
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ m_Enabled: 1
+ m_CastShadows: 0
+ 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_ForceMeshLod: -1
+ m_MeshLodSelectionBias: 0
+ m_RenderingLayerMask: 1
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 4b8a2e8e751a67447b90d180836b3878, 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: 2
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_GlobalIlluminationMeshLod: 0
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_MaskInteraction: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &1308658098883283559
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ m_Mesh: {fileID: 0}
+--- !u!64 &6433754577218517818
+MeshCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ 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: 0}
+--- !u!65 &7697102470713238675
+BoxCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4459682163590834316}
+ 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: 28.783504, y: 14.541088, z: 26.26189}
+ m_Center: {x: 0, y: 7.270544, z: 0}
+--- !u!1 &5852353150564838653
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7661646952748456549}
+ - component: {fileID: 1818484647828107321}
+ - component: {fileID: 8103420780813044637}
+ m_Layer: 0
+ m_Name: Spot Light (1)
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &7661646952748456549
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5852353150564838653}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0.14620669, y: -0, z: -0, w: 0.9892541}
+ m_LocalPosition: {x: 0, y: 10.36, z: -0.58}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 404191218827319330}
+ m_LocalEulerAnglesHint: {x: 16.814, y: 0, z: 0}
+--- !u!108 &1818484647828107321
+Light:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5852353150564838653}
+ m_Enabled: 1
+ serializedVersion: 12
+ m_Type: 0
+ m_Color: {r: 0.57861626, g: 0.52007496, b: 0.08551871, a: 1}
+ m_Intensity: 1000
+ m_Range: 30.78
+ m_SpotAngle: 58.2
+ m_InnerSpotAngle: 19.8
+ m_CookieSize2D: {x: 10, y: 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!114 &8103420780813044637
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5852353150564838653}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalLightData
+ m_UsePipelineSettings: 1
+ m_AdditionalLightsShadowResolutionTier: 2
+ m_CustomShadowLayers: 0
+ m_LightCookieSize: {x: 1, y: 1}
+ m_LightCookieOffset: {x: 0, y: 0}
+ m_SoftShadowQuality: 0
+ m_RenderingLayersMask:
+ serializedVersion: 0
+ m_Bits: 1
+ m_ShadowRenderingLayersMask:
+ serializedVersion: 0
+ m_Bits: 1
+ m_Version: 4
+ m_LightLayerMask: 1
+ m_ShadowLayerMask: 1
+ m_RenderingLayers: 1
+ m_ShadowRenderingLayers: 1
+--- !u!1 &7625879407957162159
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7656844688830104809}
+ m_Layer: 0
+ m_Name: Render
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &7656844688830104809
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7625879407957162159}
+ serializedVersion: 2
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 8.919849, y: 8.039558, z: 0.7953472}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 7428994820789890090}
+ m_Father: {fileID: 3965737018690194595}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &7904602484025268702
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8686293093389133775}
+ m_Layer: 0
+ m_Name: Portals
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 0
+--- !u!4 &8686293093389133775
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7904602484025268702}
+ serializedVersion: 2
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 8.919849, y: 8.039558, z: 0.7953472}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 89030420073598835}
+ m_Father: {fileID: 3965737018690194595}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &7994283466214186746
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3965737018690194595}
+ m_Layer: 0
+ m_Name: RoomToLoadFive
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &3965737018690194595
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7994283466214186746}
+ 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: 8686293093389133775}
+ - {fileID: 3812313393986610632}
+ - {fileID: 404191218827319330}
+ - {fileID: 7656844688830104809}
+ - {fileID: 5831650301161165405}
+ m_Father: {fileID: 0}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &8358850242504541279
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3941506515996401395}
+ m_Layer: 0
+ m_Name: Render
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &3941506515996401395
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 8358850242504541279}
+ 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: 7557062904579759447}
+ m_Father: {fileID: 5831650301161165405}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1001 &6429269889663292092
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 3
+ m_TransformParent: {fileID: 8686293093389133775}
+ m_Modifications:
+ - target: {fileID: 4967478502310356297, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_VersionIndex
+ value: 3841
+ objectReference: {fileID: 0}
+ - target: {fileID: 5627569817145768567, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: _portalId
+ value: room5_from_room4
+ objectReference: {fileID: 0}
+ - target: {fileID: 5627569817145768567, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: _linkedPortalId
+ value: room4_to_room5
+ objectReference: {fileID: 0}
+ - target: {fileID: 5627569817145768567, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: _loadRoomDistance
+ value: 100
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: -8.919849
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: -6.1295586
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: -12.595347
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8609694097640656311, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ propertyPath: m_Name
+ value: PortalExit
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_RemovedGameObjects: []
+ m_AddedGameObjects: []
+ m_AddedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+--- !u!4 &89030420073598835 stripped
+Transform:
+ m_CorrespondingSourceObject: {fileID: 6342500202952138191, guid: e21058d2724cc5645a8770f341df17ed, type: 3}
+ m_PrefabInstance: {fileID: 6429269889663292092}
+ m_PrefabAsset: {fileID: 0}
diff --git a/Assets/Unheimlich_POC/Prefabs/Rooms/RoomToLoadFive.prefab.meta b/Assets/Unheimlich_POC/Prefabs/Rooms/RoomToLoadFive.prefab.meta
new file mode 100644
index 00000000..27537ff7
--- /dev/null
+++ b/Assets/Unheimlich_POC/Prefabs/Rooms/RoomToLoadFive.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 69f9e42d2acbf0344981fcdffd02d588
+PrefabImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Scenes/MainScene/MainScene.unity b/Assets/Unheimlich_POC/Scenes/MainScene/MainScene.unity
index 62388fcd..15172107 100644
--- a/Assets/Unheimlich_POC/Scenes/MainScene/MainScene.unity
+++ b/Assets/Unheimlich_POC/Scenes/MainScene/MainScene.unity
@@ -166,6 +166,87 @@ MonoBehaviour:
m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.InputActionReference
m_Asset: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3}
m_ActionId: a3ec6166-3b8f-4545-9fa4-40583be0fc66
+--- !u!1001 &102351984
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 3
+ m_TransformParent: {fileID: 0}
+ m_Modifications:
+ - target: {fileID: 1308658098883283559, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_Mesh
+ value:
+ objectReference: {fileID: 1949684909}
+ - target: {fileID: 1450394912075574427, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_Mesh
+ value:
+ objectReference: {fileID: 297438471}
+ - target: {fileID: 2146349534604163061, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_Mesh
+ value:
+ objectReference: {fileID: 297438471}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 20.412663
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: -0.00000034271943
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 70.89683
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3965737018690194595, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6433754577218517818, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_Mesh
+ value:
+ objectReference: {fileID: 1949684909}
+ - target: {fileID: 7994283466214186746, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_Name
+ value: RoomToLoadFive
+ objectReference: {fileID: 0}
+ - target: {fileID: 8209576767969738346, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_Mesh
+ value:
+ objectReference: {fileID: 1949684909}
+ - target: {fileID: 8209576767969738346, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
+ propertyPath: m_VersionIndex
+ value: 5887
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_RemovedGameObjects: []
+ m_AddedGameObjects: []
+ m_AddedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: 69f9e42d2acbf0344981fcdffd02d588, type: 3}
--- !u!43 &183470776
Mesh:
m_ObjectHideFlags: 0
@@ -344,6 +425,184 @@ Mesh:
- serializedVersion: 1
m_IndexStart: 0
m_IndexCount: 0
+--- !u!43 &297438471
+Mesh:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: pb_Mesh-21770
+ serializedVersion: 12
+ m_SubMeshes:
+ - serializedVersion: 2
+ firstByte: 0
+ indexCount: 0
+ topology: 0
+ baseVertex: 0
+ firstVertex: 0
+ vertexCount: 0
+ localAABB:
+ m_Center: {x: 0, y: 0, z: 0}
+ m_Extent: {x: 0, y: 0, z: 0}
+ m_Shapes:
+ vertices: []
+ shapes: []
+ channels: []
+ fullWeights: []
+ m_BindPose: []
+ m_BoneNameHashes:
+ m_RootBoneNameHash: 0
+ m_BonesAABB: []
+ m_VariableBoneCountWeights:
+ m_Data:
+ m_MeshCompression: 0
+ m_IsReadable: 1
+ m_KeepVertices: 1
+ m_KeepIndices: 1
+ m_IndexFormat: 0
+ m_IndexBuffer:
+ m_VertexData:
+ serializedVersion: 3
+ m_VertexCount: 0
+ m_Channels:
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ m_DataSize: 0
+ _typelessdata:
+ m_CompressedMesh:
+ m_Vertices:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_UV:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_Normals:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_Tangents:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_Weights:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_NormalSigns:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_TangentSigns:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_FloatColors:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_BoneIndices:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_Triangles:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_UVInfo: 0
+ m_LocalAABB:
+ m_Center: {x: 0, y: 0, z: 0}
+ m_Extent: {x: 0, y: 0, z: 0}
+ m_MeshUsageFlags: 0
+ m_CookingOptions: 30
+ m_BakedConvexCollisionMesh:
+ m_BakedTriangleCollisionMesh:
+ 'm_MeshMetrics[0]': 1
+ 'm_MeshMetrics[1]': 1
+ m_MeshOptimizationFlags: 1
+ m_StreamData:
+ serializedVersion: 2
+ offset: 0
+ size: 0
+ path:
+ m_MeshLodInfo:
+ serializedVersion: 2
+ m_LodSelectionCurve:
+ serializedVersion: 1
+ m_LodSlope: 0
+ m_LodBias: 0
+ m_NumLevels: 1
+ m_SubMeshes:
+ - serializedVersion: 2
+ m_Levels:
+ - serializedVersion: 1
+ m_IndexStart: 0
+ m_IndexCount: 0
--- !u!43 &362502328
Mesh:
m_ObjectHideFlags: 0
@@ -745,6 +1004,17 @@ MonoBehaviour:
serializedVersion: 2
m_Bits: 96
_autoCreateDialogueCamera: 1
+--- !u!114 &436513853 stripped
+MonoBehaviour:
+ m_CorrespondingSourceObject: {fileID: 953069181646740290, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
+ m_PrefabInstance: {fileID: 5090177222934034458}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 436513833}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 69e8150bab500424eb366f0ac8761995, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::Unheimlich.Gameplay.CameraControl.CameraPanController
--- !u!95 &451500111 stripped
Animator:
m_CorrespondingSourceObject: {fileID: 3326093237010115507, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
@@ -2033,6 +2303,198 @@ Mesh:
- serializedVersion: 1
m_IndexStart: 0
m_IndexCount: 0
+--- !u!114 &1891814281
+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: fc1515ab76e54f068e2f2207940fab32, type: 3}
+ m_Name: Player/Look
+ m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.InputActionReference
+ m_Asset: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3}
+ m_ActionId: 6b444451-8a00-4d00-a97e-f47457f736a8
+--- !u!43 &1949684909
+Mesh:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: pb_Mesh-21838
+ serializedVersion: 12
+ m_SubMeshes:
+ - serializedVersion: 2
+ firstByte: 0
+ indexCount: 84
+ topology: 0
+ baseVertex: 0
+ firstVertex: 0
+ vertexCount: 39
+ localAABB:
+ m_Center: {x: 0.033644676, y: 7.270544, z: 0}
+ m_Extent: {x: 14.425397, y: 7.270544, z: 13.130945}
+ m_Shapes:
+ vertices: []
+ shapes: []
+ channels: []
+ fullWeights: []
+ m_BindPose: []
+ m_BoneNameHashes:
+ m_RootBoneNameHash: 0
+ m_BonesAABB: []
+ m_VariableBoneCountWeights:
+ m_Data:
+ m_MeshCompression: 0
+ m_IsReadable: 1
+ m_KeepVertices: 1
+ m_KeepIndices: 1
+ m_IndexFormat: 0
+ m_IndexBuffer: 00000100020001000300020001000400030004000500030002000300060003000700060003000500070005000800070009000a000b0009000c000a000d000b000e000d0009000b000f00100011000f001200100013001100140013000f001100150016001700150018001600190017001a001900150017001b001c001d001b001e001c001f001d0020001f001b001d00210022002300210024002200240025002200240026002500
+ m_VertexData:
+ serializedVersion: 3
+ m_VertexCount: 39
+ m_Channels:
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 3
+ - stream: 0
+ offset: 12
+ format: 0
+ dimension: 3
+ - stream: 0
+ offset: 24
+ format: 0
+ dimension: 4
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 40
+ format: 0
+ dimension: 2
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 48
+ format: 0
+ dimension: 4
+ - stream: 0
+ offset: 64
+ format: 0
+ dimension: 4
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ - stream: 0
+ offset: 0
+ format: 0
+ dimension: 0
+ m_DataSize: 3120
+ _typelessdata: 9e4466c1000000005a1852c1000000000000803f000000000000803f0000000000000000000080bf9e4466c15a1852c100000000000000000000000000000000000000000000000000000000000000009e4466c10000000000000000000000000000803f000000000000803f0000000000000000000080bf9e4466c100000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a1852c1000000000000803f000000000000803f0000000000000000000080bf000000005a1852c10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000803f000000000000803f0000000000000000000080bf000000000000000000000000000000000000000000000000000000000000000000000000000000009e4466c1000000005a185241000000000000803f000000000000803f0000000000000000000080bf9e4466c15a185241000000000000000000000000000000000000000000000000000000000000000000000000000000005a185241000000000000803f000000000000803f0000000000000000000080bf000000005a18524100000000000000000000000000000000000000000000000000000000000000009e446641000000005a1852c1000000000000803f000000000000803f0000000000000000000080bf9e4466415a1852c100000000000000000000000000000000000000000000000000000000000000009e4466410000000000000000000000000000803f000000000000803f0000000000000000000080bf9e4466410000000000000000000000000000000000000000000000000000000000000000000000009e446641000000005a185241000000000000803f000000000000803f0000000000000000000080bf9e4466415a18524100000000000000000000000000000000000000000000000000000000000000009e4466414ca8684100000000000080bf00000000000000000000000000000000000080bf000080bf000000004ca8684100000000000000000000000000000000000000000000000000000000000000009e446641000000005a1852c1000080bf00000000000000000000000000000000000080bf000080bf5a1852410000000000000000000000000000000000000000000000000000000000000000000000009e4466410000000000000000000080bf00000000000000000000000000000000000080bf000080bf000000000000000000000000000000000000000000000000000000000000000000000000000000009e4466414ca86841581852c1000080bf00000000000000000000000000000000000080bf000080bf581852414ca8684100000000000000000000000000000000000000000000000000000000000000009e4466414ca8684158185241000080bf00000000000000000000000000000000000080bf000080bf581852c14ca8684100000000000000000000000000000000000000000000000000000000000000009e446641000000005a185241000080bf00000000000000000000000000000000000080bf000080bf5a1852c1000000000000000000000000000000000000000000000000000000000000000000000000000000004ca8684158185241000000009fd70cb4000080bf0000803f0000000000000000000080bf000000004aa8684100000000000000000000000000000000000000000000000000000000000000009e446641000000005a185241000000009fd70cb4000080bf0000803f0000000000000000000080bf9e4466418c2ce7b5000000000000000000000000000000000000000000000000000000000000000000000000000000005a185241000000009fd70cb4000080bf0000803f0000000000000000000080bf000000008c2ce7b500000000000000000000000000000000000000000000000000000000000000009e4466414ca8684158185241000000009fd70cb4000080bf0000803f0000000000000000000080bf9e4466414aa8684100000000000000000000000000000000000000000000000000000000000000009e4466c14ca8684158185241000000009fd70cb4000080bf0000803f0000000000000000000080bf9e4466c14aa8684100000000000000000000000000000000000000000000000000000000000000009e4466c1000000005a185241000000009fd70cb4000080bf0000803f0000000000000000000080bf9e4466c18c2ce7b500000000000000000000000000000000000000000000000000000000000000009e4466c14ca86841000000000000803f000000000000000000000000000000000000803f000080bf000000004ca8684100000000000000000000000000000000000000000000000000000000000000009e4466c1000000005a1852410000803f000000000000000000000000000000000000803f000080bf5a1852410000000000000000000000000000000000000000000000000000000000000000000000009e4466c100000000000000000000803f000000000000000000000000000000000000803f000080bf000000000000000000000000000000000000000000000000000000000000000000000000000000009e4466c14ca86841581852410000803f000000000000000000000000000000000000803f000080bf581852414ca8684100000000000000000000000000000000000000000000000000000000000000009e4466c14ca86841581852c10000803f000000000000000000000000000000000000803f000080bf581852c14ca8684100000000000000000000000000000000000000000000000000000000000000009e4466c1000000005a1852c10000803f000000000000000000000000000000000000803f000080bf5a1852c1000000000000000000000000000000000000000000000000000000000000000000000000000000004ca86841581852c1000000009fd70cb40000803f000080bf0000000000000000000080bf000000004aa8684100000000000000000000000000000000000000000000000000000000000000009e4466c1000000005a1852c1000000009fd70cb40000803f000080bf0000000000000000000080bf9e4466418c2ce7b5000000000000000000000000000000000000000000000000000000000000000000000000000000005a1852c1000000009fd70cb40000803f000080bf0000000000000000000080bf000000008c2ce7b500000000000000000000000000000000000000000000000000000000000000009e4466c14ca86841581852c1000000009fd70cb40000803f000080bf0000000000000000000080bf9e4466414aa8684100000000000000000000000000000000000000000000000000000000000000009e4466414ca86841581852c1000000009fd70cb40000803f000080bf0000000000000000000080bf9e4466c14aa8684100000000000000000000000000000000000000000000000000000000000000009e446641000000005a1852c1000000009fd70cb40000803f000080bf0000000000000000000080bf9e4466c18c2ce7b500000000000000000000000000000000000000000000000000000000000000003c5867414ca86841581852c100000000000080bf00000000000080bf0000000000000000000080bf3c5867c1581852c100000000000000000000000000000000000000000000000000000000000000009e4466c14ca868410000000000000000000080bf00000000000080bf0000000000000000000080bf9e4466410000000000000000000000000000000000000000000000000000000000000000000000009e4466c14ca86841581852c100000000000080bf00000000000080bf0000000000000000000080bf9e446641581852c100000000000000000000000000000000000000000000000000000000000000003c5867414ca868410000000000000000000080bf00000000000080bf0000000000000000000080bf3c5867c10000000000000000000000000000000000000000000000000000000000000000000000009e4466c14ca868415818524100000000000080bf00000000000080bf0000000000000000000080bf9e4466415818524100000000000000000000000000000000000000000000000000000000000000003c5867414ca868415818524100000000000080bf00000000000080bf0000000000000000000080bf3c5867c1581852410000000000000000000000000000000000000000000000000000000000000000
+ m_CompressedMesh:
+ m_Vertices:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_UV:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_Normals:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_Tangents:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_Weights:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_NormalSigns:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_TangentSigns:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_FloatColors:
+ m_NumItems: 0
+ m_Range: 0
+ m_Start: 0
+ m_Data:
+ m_BitSize: 0
+ m_BoneIndices:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_Triangles:
+ m_NumItems: 0
+ m_Data:
+ m_BitSize: 0
+ m_UVInfo: 0
+ m_LocalAABB:
+ m_Center: {x: 0.033644676, y: 7.270544, z: 0}
+ m_Extent: {x: 14.425397, y: 7.270544, z: 13.130945}
+ m_MeshUsageFlags: 0
+ m_CookingOptions: 30
+ m_BakedConvexCollisionMesh:
+ m_BakedTriangleCollisionMesh:
+ 'm_MeshMetrics[0]': 1
+ 'm_MeshMetrics[1]': 1
+ m_MeshOptimizationFlags: 1
+ m_StreamData:
+ serializedVersion: 2
+ offset: 0
+ size: 0
+ path:
+ m_MeshLodInfo:
+ serializedVersion: 2
+ m_LodSelectionCurve:
+ serializedVersion: 1
+ m_LodSlope: 0
+ m_LodBias: 0
+ m_NumLevels: 1
+ m_SubMeshes:
+ - serializedVersion: 2
+ m_Levels:
+ - serializedVersion: 1
+ m_IndexStart: 0
+ m_IndexCount: 0
--- !u!1 &1976498062
GameObject:
m_ObjectHideFlags: 0
@@ -2879,6 +3341,18 @@ PrefabInstance:
propertyPath: _walkBobAmplitude
value: 0.1
objectReference: {fileID: 0}
+ - target: {fileID: 953069181646740290, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
+ propertyPath: _settings
+ value:
+ objectReference: {fileID: 11400000, guid: 9973a518f73c3c1489819494e37d0980, type: 2}
+ - target: {fileID: 953069181646740290, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
+ propertyPath: _lookAction
+ value:
+ objectReference: {fileID: 1891814281}
+ - target: {fileID: 953069181646740290, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
+ propertyPath: _playerTransform
+ value:
+ objectReference: {fileID: 1128970472}
- target: {fileID: 1144804793528068392, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
propertyPath: GraphicsObject
value:
@@ -2955,6 +3429,10 @@ PrefabInstance:
propertyPath: _vignetteIntensity
value: 0.25
objectReference: {fileID: 0}
+ - target: {fileID: 3142789394009655648, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
+ propertyPath: _cameraPanController
+ value:
+ objectReference: {fileID: 436513853}
- target: {fileID: 3142789394009655648, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
propertyPath: _listenableLayers.m_Bits
value: 4294967295
@@ -2973,7 +3451,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 5383576672370031505, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
propertyPath: m_LocalPosition.x
- value: 13.95
+ value: 23.37
objectReference: {fileID: 0}
- target: {fileID: 5383576672370031505, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
propertyPath: m_LocalPosition.y
@@ -2981,7 +3459,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 5383576672370031505, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
propertyPath: m_LocalPosition.z
- value: 31.63
+ value: 39.92
objectReference: {fileID: 0}
- target: {fileID: 5383576672370031505, guid: 92d3cde0c88c75f48a98d082c573338b, type: 3}
propertyPath: m_LocalRotation.w
@@ -3117,3 +3595,4 @@ SceneRoots:
- {fileID: 1287162436}
- {fileID: 673917528}
- {fileID: 996694521}
+ - {fileID: 102351984}
diff --git a/Assets/Unheimlich_POC/Scripts/Datas/Camera.meta b/Assets/Unheimlich_POC/Scripts/Datas/Camera.meta
new file mode 100644
index 00000000..4c2f380e
--- /dev/null
+++ b/Assets/Unheimlich_POC/Scripts/Datas/Camera.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 305406de510d86a439ef94c61b9e08ea
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Scripts/Datas/Camera/CameraPanSettings.cs b/Assets/Unheimlich_POC/Scripts/Datas/Camera/CameraPanSettings.cs
new file mode 100644
index 00000000..25e7d576
--- /dev/null
+++ b/Assets/Unheimlich_POC/Scripts/Datas/Camera/CameraPanSettings.cs
@@ -0,0 +1,37 @@
+using UnityEngine;
+
+namespace Unheimlich.Data.CameraSettings
+{
+ ///
+ /// ScriptableObject configuration for camera pan and player alignment behavior.
+ /// Defines pan speed, borders, angles, alignment parameters, and lerp smoothness.
+ ///
+ [CreateAssetMenu(fileName = "CameraPanSettings", menuName = "Unheimlich/Camera/Camera Pan Settings")]
+ public class CameraPanSettings : ScriptableObject
+ {
+ [Header("Camera Pan")]
+ [Tooltip("Camera pan speed when moving the cursor/look stick")]
+ public float PanSpeed = 2f;
+
+ [Tooltip("Size of the border area for mouse pan (0-1, screen percentage)")]
+ [Range(0f, 0.5f)]
+ public float PanBorderSize = 0.1f;
+
+ [Tooltip("Maximum angle the camera can pan from center")]
+ public float MaxPanAngle = 15f;
+
+ [Header("Player Alignment")]
+ [Tooltip("Speed of player/camera alignment to target")]
+ public float AlignmentSpeed = 3f;
+
+ [Tooltip("Threshold for alignment completion")]
+ public float AlignmentThreshold = 0.5f;
+
+ [Header("Lerp Smoothing")]
+ [Tooltip("Use SmoothStep for smoother interpolation (true) or linear lerp (false)")]
+ public bool UseSmoothStep = true;
+
+ [Tooltip("Custom animation curve for alignment (overrides SmoothStep if set)")]
+ public AnimationCurve AlignmentCurve = null;
+ }
+}
diff --git a/Assets/Unheimlich_POC/Scripts/Datas/Camera/CameraPanSettings.cs.meta b/Assets/Unheimlich_POC/Scripts/Datas/Camera/CameraPanSettings.cs.meta
new file mode 100644
index 00000000..13e74fa8
--- /dev/null
+++ b/Assets/Unheimlich_POC/Scripts/Datas/Camera/CameraPanSettings.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 3e231c75dddecc0469543c190a9234b1
\ No newline at end of file
diff --git a/Assets/Unheimlich_POC/Scripts/Gameplay/Camera.meta b/Assets/Unheimlich_POC/Scripts/Gameplay/Camera.meta
new file mode 100644
index 00000000..cc8da6cd
--- /dev/null
+++ b/Assets/Unheimlich_POC/Scripts/Gameplay/Camera.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b41805f922f09994ebf9845415dab39b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Unheimlich_POC/Scripts/Gameplay/Camera/CameraPanController.cs b/Assets/Unheimlich_POC/Scripts/Gameplay/Camera/CameraPanController.cs
new file mode 100644
index 00000000..703496c3
--- /dev/null
+++ b/Assets/Unheimlich_POC/Scripts/Gameplay/Camera/CameraPanController.cs
@@ -0,0 +1,355 @@
+using System.Collections;
+using UnityEngine;
+using UnityEngine.InputSystem;
+using Unheimlich.Data.CameraSettings;
+
+namespace Unheimlich.Gameplay.CameraControl
+{
+ ///
+ /// Handles camera panning and player/camera alignment to targets.
+ /// Uses CameraPanSettings ScriptableObject for configuration.
+ ///
+ public class CameraPanController : MonoBehaviour
+ {
+ [Header("References")]
+ [SerializeField] private UnityEngine.Camera _camera;
+ [SerializeField] private Transform _playerTransform;
+
+ [Header("Settings")]
+ [SerializeField] private CameraPanSettings _settings;
+
+ [Header("Input Actions")]
+ [SerializeField] private InputActionReference _lookAction;
+
+ private Vector2 _originalCameraRotation;
+ private Vector3 _originalCameraLocalPosition;
+ private Vector3 _originalPlayerPosition;
+ private Vector3 _originalPlayerRotation;
+ private Vector3 _originalCameraLocalRotation;
+ private Coroutine _alignmentCoroutine;
+ private Coroutine _returnCoroutine;
+ private float _timeSinceLastInput;
+ private const float INPUT_IDLE_THRESHOLD = 0.1f;
+
+ public bool IsPanning { get; private set; }
+
+ public CameraPanSettings Settings
+ {
+ get => _settings;
+ set => _settings = value;
+ }
+
+ private void Awake()
+ {
+ if (_camera == null)
+ _camera = UnityEngine.Camera.main;
+
+ if (_playerTransform == null)
+ _playerTransform = transform;
+
+ if (_camera != null)
+ {
+ _originalCameraLocalPosition = _camera.transform.localPosition;
+ _originalCameraLocalRotation = _camera.transform.localEulerAngles;
+ }
+
+ _originalPlayerPosition = _playerTransform.position;
+ _originalPlayerRotation = _playerTransform.eulerAngles;
+ }
+
+ ///
+ /// Starts camera pan mode.
+ ///
+ public void StartPan()
+ {
+ if (_settings == null)
+ {
+ Debug.LogError("[CameraPanController] Settings not assigned!");
+ return;
+ }
+
+ IsPanning = true;
+ _timeSinceLastInput = 0f;
+
+ float currentPitch = _camera.transform.localEulerAngles.x;
+ if (currentPitch > 180f)
+ currentPitch -= 360f;
+
+ _originalCameraRotation = new Vector2(_playerTransform.eulerAngles.y, currentPitch);
+ }
+
+ ///
+ /// Stops camera pan mode and returns to original state.
+ ///
+ public void StopPan()
+ {
+ IsPanning = false;
+ }
+
+ ///
+ /// Updates camera pan based on input (gamepad or mouse).
+ /// Call this from Update when pan is active.
+ ///
+ public void UpdatePan()
+ {
+ if (!IsPanning || _camera == null || _settings == null)
+ return;
+
+ float panX = 0f;
+ float panY = 0f;
+ bool hasInput = false;
+
+ if (_lookAction != null && _lookAction.action != null)
+ {
+ Vector2 lookInput = _lookAction.action.ReadValue();
+ if (lookInput.sqrMagnitude > 0.01f)
+ {
+ panX = lookInput.x;
+ panY = lookInput.y;
+ hasInput = true;
+ }
+ }
+
+ if (!hasInput && Mouse.current != null)
+ {
+ Vector2 mousePos = Mouse.current.position.ReadValue();
+ float screenWidth = Screen.width;
+ float screenHeight = Screen.height;
+
+ float borderPixels = _settings.PanBorderSize * Mathf.Min(screenWidth, screenHeight);
+
+ if (mousePos.x < borderPixels)
+ {
+ panX = -(borderPixels - mousePos.x) / borderPixels;
+ hasInput = true;
+ }
+ else if (mousePos.x > screenWidth - borderPixels)
+ {
+ panX = (mousePos.x - (screenWidth - borderPixels)) / borderPixels;
+ hasInput = true;
+ }
+
+ if (mousePos.y < borderPixels)
+ {
+ panY = -(borderPixels - mousePos.y) / borderPixels;
+ hasInput = true;
+ }
+ else if (mousePos.y > screenHeight - borderPixels)
+ {
+ panY = (mousePos.y - (screenHeight - borderPixels)) / borderPixels;
+ hasInput = true;
+ }
+ }
+
+ if (hasInput)
+ {
+ _timeSinceLastInput = 0f;
+ }
+ else
+ {
+ _timeSinceLastInput += Time.deltaTime;
+ }
+
+ float targetYaw;
+ float targetPitch;
+
+ if (hasInput || _timeSinceLastInput < INPUT_IDLE_THRESHOLD)
+ {
+ targetYaw = _originalCameraRotation.x + panX * _settings.MaxPanAngle;
+ targetPitch = _originalCameraRotation.y - panY * _settings.MaxPanAngle;
+ }
+ else
+ {
+ targetYaw = _originalCameraRotation.x;
+ targetPitch = _originalCameraRotation.y;
+ }
+
+ targetYaw = Mathf.Clamp(targetYaw, _originalCameraRotation.x - _settings.MaxPanAngle, _originalCameraRotation.x + _settings.MaxPanAngle);
+ targetPitch = Mathf.Clamp(targetPitch, _originalCameraRotation.y - _settings.MaxPanAngle, _originalCameraRotation.y + _settings.MaxPanAngle);
+
+ float currentYaw = _playerTransform.eulerAngles.y;
+ float currentPitch = _camera.transform.localEulerAngles.x;
+ if (currentPitch > 180f)
+ currentPitch -= 360f;
+
+ float lerpSpeed = hasInput ? _settings.PanSpeed : _settings.PanSpeed * 2f;
+
+ float newYaw = Mathf.LerpAngle(currentYaw, targetYaw, Time.deltaTime * lerpSpeed);
+ float newPitch = Mathf.LerpAngle(currentPitch, targetPitch, Time.deltaTime * lerpSpeed);
+
+ _playerTransform.eulerAngles = new Vector3(0f, newYaw, 0f);
+ _camera.transform.localEulerAngles = new Vector3(newPitch, 0f, 0f);
+ }
+
+ ///
+ /// Aligns the player and camera to the target object.
+ /// - Player moves along target's local X axis to align with target center
+ /// - Player rotates to face the target
+ /// - Camera pitch adjusts to look at target center
+ ///
+ public void AlignToTarget(Transform target, System.Action onComplete = null)
+ {
+ if (_alignmentCoroutine != null)
+ StopCoroutine(_alignmentCoroutine);
+
+ _alignmentCoroutine = StartCoroutine(AlignCameraToTargetCoroutine(target, onComplete));
+ }
+
+ ///
+ /// Returns player and camera to original position and rotation.
+ ///
+ public void ReturnToOriginalPosition(System.Action onComplete = null)
+ {
+ if (_returnCoroutine != null)
+ StopCoroutine(_returnCoroutine);
+
+ _returnCoroutine = StartCoroutine(ReturnToOriginalPositionCoroutine(onComplete));
+ }
+
+ ///
+ /// Saves current player and camera state as the original position.
+ /// Call this before starting alignment.
+ ///
+ public void SaveOriginalState()
+ {
+ if (_camera != null)
+ {
+ _originalCameraLocalPosition = _camera.transform.localPosition;
+ _originalCameraLocalRotation = _camera.transform.localEulerAngles;
+ }
+
+ _originalPlayerPosition = _playerTransform.position;
+ _originalPlayerRotation = _playerTransform.eulerAngles;
+ }
+
+ private IEnumerator AlignCameraToTargetCoroutine(Transform target, System.Action onComplete)
+ {
+ if (_camera == null || target == null || _settings == null)
+ {
+ onComplete?.Invoke();
+ yield break;
+ }
+
+ SaveOriginalState();
+
+ Vector3 targetCenter = target.position;
+ Renderer targetRenderer = target.GetComponent();
+ if (targetRenderer != null)
+ {
+ targetCenter = targetRenderer.bounds.center;
+ }
+ else
+ {
+ Collider targetCollider = target.GetComponent();
+ if (targetCollider != null)
+ targetCenter = targetCollider.bounds.center;
+ }
+
+ Vector3 startPlayerPos = _playerTransform.position;
+ Vector3 startPlayerRotation = _playerTransform.eulerAngles;
+ Vector3 startCameraLocalRotation = _camera.transform.localEulerAngles;
+
+ float startPitch = startCameraLocalRotation.x;
+ if (startPitch > 180f)
+ startPitch -= 360f;
+
+ float elapsed = 0f;
+ float duration = 1f / _settings.AlignmentSpeed;
+
+ while (elapsed < duration)
+ {
+ elapsed += Time.deltaTime;
+ float t = GetInterpolationValue(elapsed / duration);
+
+ Vector3 currentCameraPos = _camera.transform.position;
+ Vector3 toTarget = targetCenter - currentCameraPos;
+ Vector3 directionToTarget = toTarget.normalized;
+
+ Quaternion targetRotation = Quaternion.LookRotation(directionToTarget);
+ float targetYaw = targetRotation.eulerAngles.y;
+ float targetPitch = -Mathf.Asin(directionToTarget.y) * Mathf.Rad2Deg;
+
+ Vector3 targetRightAxis = target.right;
+ Vector3 playerToTargetCenter = targetCenter - _playerTransform.position;
+ float offsetAlongTargetRight = Vector3.Dot(playerToTargetCenter, targetRightAxis);
+ Vector3 targetPlayerPos = _playerTransform.position + targetRightAxis * offsetAlongTargetRight;
+
+ Vector3 currentPlayerPos = Vector3.Lerp(startPlayerPos, targetPlayerPos, t);
+ _playerTransform.position = currentPlayerPos;
+
+ float currentYaw = Mathf.LerpAngle(startPlayerRotation.y, targetYaw, t);
+ _playerTransform.eulerAngles = new Vector3(0f, currentYaw, 0f);
+
+ float currentPitch = Mathf.LerpAngle(startPitch, targetPitch, t);
+ _camera.transform.localEulerAngles = new Vector3(currentPitch, 0f, 0f);
+
+ yield return null;
+ }
+
+ _alignmentCoroutine = null;
+ onComplete?.Invoke();
+ }
+
+ private IEnumerator ReturnToOriginalPositionCoroutine(System.Action onComplete)
+ {
+ if (_camera == null || _settings == null)
+ {
+ onComplete?.Invoke();
+ yield break;
+ }
+
+ Vector3 startPlayerPos = _playerTransform.position;
+ Vector3 startPlayerRotation = _playerTransform.eulerAngles;
+ Vector3 startCameraLocalPos = _camera.transform.localPosition;
+ Vector3 startCameraLocalRotation = _camera.transform.localEulerAngles;
+
+ float startPitch = startCameraLocalRotation.x;
+ if (startPitch > 180f)
+ startPitch -= 360f;
+
+ float targetPitch = _originalCameraLocalRotation.x;
+ if (targetPitch > 180f)
+ targetPitch -= 360f;
+
+ float elapsed = 0f;
+ float duration = 1f / _settings.AlignmentSpeed;
+
+ while (elapsed < duration)
+ {
+ elapsed += Time.deltaTime;
+ float t = GetInterpolationValue(elapsed / duration);
+
+ _playerTransform.position = Vector3.Lerp(startPlayerPos, _originalPlayerPosition, t);
+
+ float currentYaw = Mathf.LerpAngle(startPlayerRotation.y, _originalPlayerRotation.y, t);
+ _playerTransform.eulerAngles = new Vector3(0f, currentYaw, 0f);
+
+ float currentPitch = Mathf.LerpAngle(startPitch, targetPitch, t);
+ _camera.transform.localEulerAngles = new Vector3(currentPitch, 0f, 0f);
+
+ _camera.transform.localPosition = Vector3.Lerp(startCameraLocalPos, _originalCameraLocalPosition, t);
+
+ yield return null;
+ }
+
+ _playerTransform.position = _originalPlayerPosition;
+ _playerTransform.eulerAngles = _originalPlayerRotation;
+ _camera.transform.localPosition = _originalCameraLocalPosition;
+ _camera.transform.localEulerAngles = _originalCameraLocalRotation;
+
+ _returnCoroutine = null;
+ onComplete?.Invoke();
+ }
+
+ private float GetInterpolationValue(float t)
+ {
+ if (_settings.AlignmentCurve != null && _settings.AlignmentCurve.length > 0)
+ return _settings.AlignmentCurve.Evaluate(t);
+
+ if (_settings.UseSmoothStep)
+ return Mathf.SmoothStep(0f, 1f, t);
+
+ return t;
+ }
+ }
+}
diff --git a/Assets/Unheimlich_POC/Scripts/Gameplay/Camera/CameraPanController.cs.meta b/Assets/Unheimlich_POC/Scripts/Gameplay/Camera/CameraPanController.cs.meta
new file mode 100644
index 00000000..091cfce7
--- /dev/null
+++ b/Assets/Unheimlich_POC/Scripts/Gameplay/Camera/CameraPanController.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 69e8150bab500424eb366f0ac8761995
\ No newline at end of file
diff --git a/Assets/Unheimlich_POC/Scripts/Gameplay/GameObjects/Player/DiapasonListeningHandler.cs b/Assets/Unheimlich_POC/Scripts/Gameplay/GameObjects/Player/DiapasonListeningHandler.cs
index ddffa372..5526ba31 100644
--- a/Assets/Unheimlich_POC/Scripts/Gameplay/GameObjects/Player/DiapasonListeningHandler.cs
+++ b/Assets/Unheimlich_POC/Scripts/Gameplay/GameObjects/Player/DiapasonListeningHandler.cs
@@ -5,6 +5,8 @@ using Unheimlich.Audio;
using Unheimlich.Core;
using Unheimlich.Utility;
using Unheimlich.Gameplay.Player;
+using Unheimlich.Gameplay.CameraControl;
+using Unheimlich.Data.CameraSettings;
using InputManager = Unheimlich.Managers.PlayerInputManager;
namespace Unheimlich.Gameplay.Player
@@ -14,7 +16,7 @@ namespace Unheimlich.Gameplay.Player
/// Handles:
/// - Equipping/unequipping the diapason with tween animations
/// - Concentration phase (breathing sound and duration)
- /// - Listening mode with camera pan control
+ /// - Listening mode with camera pan control (via CameraPanController)
/// - Tapping the diapason on listenable objects
/// - Visual feedback (vignette, cursor, particles)
/// - Preventing multiple taps on the same emitter
@@ -27,7 +29,8 @@ namespace Unheimlich.Gameplay.Player
[Header("References")]
[SerializeField] private GameObject _diapasonObject;
[SerializeField] private Animator _diapasonAnimator;
- [SerializeField] private Camera _playerCamera;
+ [SerializeField] private UnityEngine.Camera _playerCamera;
+ [SerializeField] private CameraPanController _cameraPanController;
[Header("Listening Settings")]
[SerializeField] private float _listeningRange = 5f;
@@ -41,13 +44,6 @@ namespace Unheimlich.Gameplay.Player
[SerializeField] private AnimationCurve _diapasonTweenCurve = AnimationCurve.EaseInOut(0, 0, 1, 1);
[SerializeField] private float _vibrationDuration = 15f;
- [Header("Camera Settings")]
- [SerializeField] private float _cameraPanSpeed = 2f;
- [SerializeField] private float _cameraPanBorderSize = 0.1f;
- [SerializeField] private float _maxCameraPanAngle = 15f;
- [SerializeField] private float _cameraAlignmentSpeed = 3f;
- [SerializeField] private float _cameraAlignmentThreshold = 0.5f;
-
[Header("Visual Feedback")]
[SerializeField] private float _vignetteIntensity = 0.5f;
[SerializeField] private ListeningVignetteEffect _vignetteEffect;
@@ -66,7 +62,6 @@ namespace Unheimlich.Gameplay.Player
[Header("Input Action")]
[SerializeField] private InputActionReference _diapasonAction;
- [SerializeField] private InputActionReference _lookAction;
[SerializeField] private InputActionReference _fireAction;
public bool IsListening { get; private set; }
@@ -78,17 +73,11 @@ namespace Unheimlich.Gameplay.Player
private int _diapasonTweenId = -1;
private int _audioListenerFadeTweenId = -1;
private int _playerAudioFadeTweenId = -1;
- private Vector2 _originalCameraRotation;
private float _originalAmbientVolume;
private Vector3 _diapasonEquippedPosition;
private Vector3 _diapasonHiddenPosition;
- private Vector3 _originalCameraLocalPosition;
- private Vector3 _originalPlayerPosition;
- private Vector3 _originalPlayerRotation;
- private Vector3 _originalCameraLocalRotation;
private bool _canUseDiapason;
private bool _isFadingOutConcentration;
- private Coroutine _returnCoroutine;
private Coroutine _vibrationCoroutine;
protected override void OnAwake()
@@ -97,15 +86,16 @@ namespace Unheimlich.Gameplay.Player
if (_playerAudioSource == null)
_playerAudioSource = gameObject.AddComponent();
- if (_playerCamera != null)
+ if (_cameraPanController == null)
{
- _originalCameraLocalPosition = _playerCamera.transform.localPosition;
- _originalCameraLocalRotation = _playerCamera.transform.localEulerAngles;
+ _cameraPanController = GetComponent();
+ if (_cameraPanController == null)
+ {
+ Debug.LogWarning("[Diapason] CameraPanController not found! Adding one automatically.");
+ _cameraPanController = gameObject.AddComponent();
+ }
}
- _originalPlayerPosition = transform.position;
- _originalPlayerRotation = transform.eulerAngles;
-
if (_diapasonObject != null)
{
_diapasonEquippedPosition = _diapasonObject.transform.localPosition;
@@ -154,9 +144,9 @@ namespace Unheimlich.Gameplay.Player
}
}
- if (IsListening)
+ if (IsListening && _cameraPanController != null)
{
- UpdateCursorAndCameraPan();
+ _cameraPanController.UpdatePan();
CheckForListenableObject();
}
}
@@ -252,11 +242,12 @@ namespace Unheimlich.Gameplay.Player
IsConcentrating = true;
InputManager.SetContext(InputManager.InputContext.Listening);
- if (_currentTargetEmitter != null)
+ if (_currentTargetEmitter != null && _cameraPanController != null)
{
_currentTargetEmitter.SetConcentrating(true);
- yield return StartCoroutine(AlignCameraToTarget(_currentTargetEmitter.transform));
+ _cameraPanController.AlignToTarget(_currentTargetEmitter.transform);
+ yield return new WaitForSeconds(1f / 3f);
}
if (_diapasonObject != null)
@@ -288,11 +279,10 @@ namespace Unheimlich.Gameplay.Player
EnableVignette(true);
- float currentPitch = _playerCamera.transform.localEulerAngles.x;
- if (currentPitch > 180f)
- currentPitch -= 360f;
-
- _originalCameraRotation = new Vector2(transform.eulerAngles.y, currentPitch);
+ if (_cameraPanController != null)
+ {
+ _cameraPanController.StartPan();
+ }
Cursor.lockState = CursorLockMode.Confined;
Cursor.visible = false;
@@ -325,11 +315,11 @@ namespace Unheimlich.Gameplay.Player
IsListening = false;
IsConcentrating = false;
- if (_returnCoroutine != null)
+ if (_cameraPanController != null)
{
- StopCoroutine(_returnCoroutine);
+ _cameraPanController.StopPan();
+ _cameraPanController.ReturnToOriginalPosition();
}
- _returnCoroutine = StartCoroutine(ReturnToOriginalPosition());
if (_playerAudioSource != null && _playerAudioSource.isPlaying)
{
@@ -403,182 +393,6 @@ namespace Unheimlich.Gameplay.Player
_isFadingOutConcentration = false;
}
- ///
- /// Aligns the player and camera to the target object:
- /// - Player moves along target's local X axis to align with target center
- /// - Player rotates to face the target
- /// - Camera pitch adjusts to look at target center
- ///
- private IEnumerator AlignCameraToTarget(Transform target)
- {
- if (_playerCamera == null || target == null)
- yield break;
-
- _originalCameraLocalPosition = _playerCamera.transform.localPosition;
- _originalCameraLocalRotation = _playerCamera.transform.localEulerAngles;
- _originalPlayerPosition = transform.position;
- _originalPlayerRotation = transform.eulerAngles;
-
- Vector3 targetCenter = target.position;
- Renderer targetRenderer = target.GetComponent();
- if (targetRenderer != null)
- {
- targetCenter = targetRenderer.bounds.center;
- }
- else
- {
- Collider targetCollider = target.GetComponent();
- if (targetCollider != null)
- targetCenter = targetCollider.bounds.center;
- }
-
- Vector3 startPlayerPos = transform.position;
- Vector3 startPlayerRotation = transform.eulerAngles;
- Vector3 startCameraLocalRotation = _playerCamera.transform.localEulerAngles;
-
- float startPitch = startCameraLocalRotation.x;
- if (startPitch > 180f)
- startPitch -= 360f;
-
- float elapsed = 0f;
- float duration = 1f / _cameraAlignmentSpeed;
-
- while (elapsed < duration)
- {
- elapsed += Time.deltaTime;
- float t = Mathf.SmoothStep(0f, 1f, elapsed / duration);
-
- Vector3 currentCameraPos = _playerCamera.transform.position;
- Vector3 toTarget = targetCenter - currentCameraPos;
- Vector3 directionToTarget = toTarget.normalized;
-
- Quaternion targetRotation = Quaternion.LookRotation(directionToTarget);
- float targetYaw = targetRotation.eulerAngles.y;
- float targetPitch = -Mathf.Asin(directionToTarget.y) * Mathf.Rad2Deg;
-
- Vector3 targetRightAxis = target.right;
- Vector3 playerToTargetCenter = targetCenter - transform.position;
- float offsetAlongTargetRight = Vector3.Dot(playerToTargetCenter, targetRightAxis);
- Vector3 targetPlayerPos = transform.position + targetRightAxis * offsetAlongTargetRight;
-
- Vector3 currentPlayerPos = Vector3.Lerp(startPlayerPos, targetPlayerPos, t);
- transform.position = currentPlayerPos;
-
- float currentYaw = Mathf.LerpAngle(startPlayerRotation.y, targetYaw, t);
- transform.eulerAngles = new Vector3(0f, currentYaw, 0f);
-
- float currentPitch = Mathf.LerpAngle(startPitch, targetPitch, t);
- _playerCamera.transform.localEulerAngles = new Vector3(currentPitch, 0f, 0f);
-
- yield return null;
- }
- }
-
- ///
- /// Returns player and camera to original position and rotation with smooth lerp.
- ///
- private IEnumerator ReturnToOriginalPosition()
- {
- if (_playerCamera == null)
- yield break;
-
- Vector3 startPlayerPos = transform.position;
- Vector3 startPlayerRotation = transform.eulerAngles;
- Vector3 startCameraLocalPos = _playerCamera.transform.localPosition;
- Vector3 startCameraLocalRotation = _playerCamera.transform.localEulerAngles;
-
- float startPitch = startCameraLocalRotation.x;
- if (startPitch > 180f)
- startPitch -= 360f;
-
- float targetPitch = _originalCameraLocalRotation.x;
- if (targetPitch > 180f)
- targetPitch -= 360f;
-
- float elapsed = 0f;
- float duration = 1f / _cameraAlignmentSpeed;
-
- while (elapsed < duration)
- {
- elapsed += Time.deltaTime;
- float t = Mathf.SmoothStep(0f, 1f, elapsed / duration);
-
- transform.position = Vector3.Lerp(startPlayerPos, _originalPlayerPosition, t);
-
- float currentYaw = Mathf.LerpAngle(startPlayerRotation.y, _originalPlayerRotation.y, t);
- transform.eulerAngles = new Vector3(0f, currentYaw, 0f);
-
- float currentPitch = Mathf.LerpAngle(startPitch, targetPitch, t);
- _playerCamera.transform.localEulerAngles = new Vector3(currentPitch, 0f, 0f);
-
- _playerCamera.transform.localPosition = Vector3.Lerp(startCameraLocalPos, _originalCameraLocalPosition, t);
-
- yield return null;
- }
-
- transform.position = _originalPlayerPosition;
- transform.eulerAngles = _originalPlayerRotation;
- _playerCamera.transform.localPosition = _originalCameraLocalPosition;
- _playerCamera.transform.localEulerAngles = _originalCameraLocalRotation;
-
- _returnCoroutine = null;
- }
-
- ///
- /// Updates cursor position and camera panning during listening mode.
- /// Supports both gamepad (look input) and mouse (screen edges).
- ///
- private void UpdateCursorAndCameraPan()
- {
- if (_playerCamera == null)
- return;
-
- float panX = 0f;
- float panY = 0f;
-
- if (_lookAction != null && _lookAction.action != null)
- {
- Vector2 lookInput = _lookAction.action.ReadValue();
- if (lookInput.sqrMagnitude > 0.01f)
- {
- panX = lookInput.x;
- panY = lookInput.y;
- }
- }
-
- if (panX == 0f && panY == 0f && Mouse.current != null)
- {
- Vector2 viewportPos = _playerCamera.ScreenToViewportPoint(Mouse.current.position.ReadValue());
-
- if (viewportPos.x < _cameraPanBorderSize)
- panX = -1f;
- else if (viewportPos.x > 1f - _cameraPanBorderSize)
- panX = 1f;
-
- if (viewportPos.y < _cameraPanBorderSize)
- panY = -1f;
- else if (viewportPos.y > 1f - _cameraPanBorderSize)
- panY = 1f;
- }
-
- float targetYaw = _originalCameraRotation.x + (panX * _maxCameraPanAngle);
- float targetPitch = _originalCameraRotation.y - (panY * _maxCameraPanAngle);
-
- targetYaw = Mathf.Clamp(targetYaw, _originalCameraRotation.x - _maxCameraPanAngle, _originalCameraRotation.x + _maxCameraPanAngle);
- targetPitch = Mathf.Clamp(targetPitch, _originalCameraRotation.y - _maxCameraPanAngle, _originalCameraRotation.y + _maxCameraPanAngle);
- targetPitch = Mathf.Clamp(targetPitch, -89f, 89f);
-
- Vector3 currentRotation = transform.eulerAngles;
- currentRotation.y = Mathf.LerpAngle(currentRotation.y, targetYaw, Time.deltaTime * _cameraPanSpeed);
- transform.eulerAngles = currentRotation;
-
- Vector3 cameraRotation = _playerCamera.transform.localEulerAngles;
- if (cameraRotation.x > 180f)
- cameraRotation.x -= 360f;
- cameraRotation.x = Mathf.LerpAngle(cameraRotation.x, targetPitch, Time.deltaTime * _cameraPanSpeed);
- _playerCamera.transform.localEulerAngles = cameraRotation;
- }
-
///
/// Raycasts from camera center to detect listenable objects.
/// Handles tap input and prevents tapping the same emitter multiple times.