diff --git a/Assets/Scenes/5. Gameplay.unity b/Assets/Scenes/5. Gameplay.unity index 19585ff..25b1d65 100644 --- a/Assets/Scenes/5. Gameplay.unity +++ b/Assets/Scenes/5. Gameplay.unity @@ -475,6 +475,184 @@ Mesh: - serializedVersion: 1 m_IndexStart: 0 m_IndexCount: 0 +--- !u!43 &48094519 +Mesh: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: pb_Mesh-110620 + serializedVersion: 12 + m_SubMeshes: + - serializedVersion: 2 + firstByte: 0 + indexCount: 36 + topology: 0 + baseVertex: 0 + firstVertex: 0 + vertexCount: 24 + localAABB: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 6, y: 0.25, z: 2} + 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: 000001000200010003000200040005000600050007000600080009000a0009000b000a000c000d000e000d000f000e00100011001200110013001200140015001600150017001600 + m_VertexData: + serializedVersion: 3 + m_VertexCount: 24 + 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: 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: 1152 + _typelessdata: 0000c0c0000080be0000004000000000000000000000803f000080bf0000000000000000000080bf000040410000003f0000c040000080be0000004000000000000000000000803f000080bf0000000000000000000080bf000000000000003f0000c0c00000803e0000004000000000000000000000803f000080bf0000000000000000000080bf000040410000803f0000c0400000803e0000004000000000000000000000803f000080bf0000000000000000000080bf000000000000803f0000c040000080be000000400000803f000000000000000000000000000000000000803f000080bf000080400000003f0000c040000080be000000c00000803f000000000000000000000000000000000000803f000080bf000000000000003f0000c0400000803e000000400000803f000000000000000000000000000000000000803f000080bf000080400000803f0000c0400000803e000000c00000803f000000000000000000000000000000000000803f000080bf000000000000803f0000c040000080be000000c00000000000000000000080bf0000803f0000000000000000000080bf000040410000003f0000c0c0000080be000000c00000000000000000000080bf0000803f0000000000000000000080bf000000000000003f0000c0400000803e000000c00000000000000000000080bf0000803f0000000000000000000080bf000040410000803f0000c0c00000803e000000c00000000000000000000080bf0000803f0000000000000000000080bf000000000000803f0000c0c0000080be000000c0000080bf00000000000000000000000000000000000080bf000080bf000080400000003f0000c0c0000080be00000040000080bf00000000000000000000000000000000000080bf000080bf000000000000003f0000c0c00000803e000000c0000080bf00000000000000000000000000000000000080bf000080bf000080400000803f0000c0c00000803e00000040000080bf00000000000000000000000000000000000080bf000080bf000000000000803f0000c0c00000803e00000040000000000000803f000000000000803f0000000000000000000080bf000000000000803f0000c0400000803e00000040000000000000803f000000000000803f0000000000000000000080bf000040410000803f0000c0c00000803e000000c0000000000000803f000000000000803f0000000000000000000080bf00000000000040c00000c0400000803e000000c0000000000000803f000000000000803f0000000000000000000080bf00004041000040c00000c0c0000080be000000c000000000000080bf00000000000080bf0000000000000000000080bf00004041000040c00000c040000080be000000c000000000000080bf00000000000080bf0000000000000000000080bf00000000000040c00000c0c0000080be0000004000000000000080bf00000000000080bf0000000000000000000080bf000040410000803f0000c040000080be0000004000000000000080bf00000000000080bf0000000000000000000080bf000000000000803f + 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: 6, y: 0.25, z: 2} + 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 &120209649 GameObject: m_ObjectHideFlags: 0 @@ -726,13 +904,191 @@ Mesh: - serializedVersion: 1 m_IndexStart: 0 m_IndexCount: 0 +--- !u!43 &225808856 +Mesh: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: pb_Mesh-145120 + serializedVersion: 12 + m_SubMeshes: + - serializedVersion: 2 + firstByte: 0 + indexCount: 36 + topology: 0 + baseVertex: 0 + firstVertex: 0 + vertexCount: 24 + localAABB: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 4, y: 0.25, z: 4} + 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: 000001000200010003000200040005000600050007000600080009000a0009000b000a000c000d000e000d000f000e00100011001200110013001200140015001600150017001600 + m_VertexData: + serializedVersion: 3 + m_VertexCount: 24 + 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: 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: 1152 + _typelessdata: 000080c0000080be0000804000000000000000000000803f000080bf0000000000000000000080bf000000410000003f00008040000080be0000804000000000000000000000803f000080bf0000000000000000000080bf000000000000003f000080c00000803e0000804000000000000000000000803f000080bf0000000000000000000080bf000000410000803f000080400000803e0000804000000000000000000000803f000080bf0000000000000000000080bf000000000000803f00008040000080be000080400000803f000000000000000000000000000000000000803f000080bf000000410000003f00008040000080be000080c00000803f000000000000000000000000000000000000803f000080bf000000000000003f000080400000803e000080400000803f000000000000000000000000000000000000803f000080bf000000410000803f000080400000803e000080c00000803f000000000000000000000000000000000000803f000080bf000000000000803f00008040000080be000080c00000000000000000000080bf0000803f0000000000000000000080bf000000410000003f000080c0000080be000080c00000000000000000000080bf0000803f0000000000000000000080bf000000000000003f000080400000803e000080c00000000000000000000080bf0000803f0000000000000000000080bf000000410000803f000080c00000803e000080c00000000000000000000080bf0000803f0000000000000000000080bf000000000000803f000080c0000080be000080c0000080bf00000000000000000000000000000000000080bf000080bf000000410000003f000080c0000080be00008040000080bf00000000000000000000000000000000000080bf000080bf000000000000003f000080c00000803e000080c0000080bf00000000000000000000000000000000000080bf000080bf000000410000803f000080c00000803e00008040000080bf00000000000000000000000000000000000080bf000080bf000000000000803f000080c00000803e00008040000000000000803f000000000000803f0000000000000000000080bf000000000000803f000080400000803e00008040000000000000803f000000000000803f0000000000000000000080bf000000410000803f000080c00000803e000080c0000000000000803f000000000000803f0000000000000000000080bf000000000000e0c0000080400000803e000080c0000000000000803f000000000000803f0000000000000000000080bf000000410000e0c0000080c0000080be000080c000000000000080bf00000000000080bf0000000000000000000080bf000000410000e0c000008040000080be000080c000000000000080bf00000000000080bf0000000000000000000080bf000000000000e0c0000080c0000080be0000804000000000000080bf00000000000080bf0000000000000000000080bf000000410000803f00008040000080be0000804000000000000080bf00000000000080bf0000000000000000000080bf000000000000803f + 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: 4, y: 0.25, z: 4} + 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!1001 &266816713 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 651339733} m_Modifications: - target: {fileID: 1597087542051609407, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: sizeX @@ -760,15 +1116,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -1236,8 +1592,8 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 320298439} - m_Layer: 31 - m_Name: Prototype + m_Layer: 0 + m_Name: Prototyping m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -1256,13 +1612,8 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1937505011} - - {fileID: 1988610236} - - {fileID: 266816714} - - {fileID: 790089626} - - {fileID: 1143872956} - - {fileID: 1706011559} - - {fileID: 1175802558} + - {fileID: 651339733} + - {fileID: 1501201613} m_Father: {fileID: 1187971236} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &347886466 @@ -1314,6 +1665,128 @@ MonoBehaviour: dash: {fileID: 3938472908730161291, guid: 208cb7d0ce6444ed7b55f4c4b4e632aa, type: 3} speed: 35 targetTimeMS: 100 +--- !u!1001 &348157483 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 651339733} + m_Modifications: + - target: {fileID: 1597087542051609407, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: sizeX + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 1597087542051609407, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: sizeZ + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalPosition.y + value: 15.5 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalPosition.z + value: 9.5 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 225808856} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_VersionIndex + value: 265 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Tangents.Array.size + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Textures0.Array.size + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Faces.Array.data[0].m_Uv.m_Anchor + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Faces.Array.data[1].m_Uv.m_Anchor + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Faces.Array.data[2].m_Uv.m_Anchor + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Faces.Array.data[3].m_Uv.m_Anchor + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Faces.Array.data[4].m_Uv.m_Anchor + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Faces.Array.data[5].m_Uv.m_Anchor + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6392326082573612157, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Size.x + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 6392326082573612157, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Size.z + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 6524376507900539265, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Name + value: Ground_Slab_Prototype (4) + objectReference: {fileID: 0} + - target: {fileID: 7186094041257591047, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 225808856} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} +--- !u!4 &348157484 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} + m_PrefabInstance: {fileID: 348157483} + m_PrefabAsset: {fileID: 0} --- !u!1001 &367797782 PrefabInstance: m_ObjectHideFlags: 0 @@ -2003,7 +2476,7 @@ Mesh: - serializedVersion: 1 m_IndexStart: 0 m_IndexCount: 0 ---- !u!1 &619394800 +--- !u!1 &651339732 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -2011,81 +2484,35 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 619394802} - - component: {fileID: 619394801} - m_Layer: 0 - m_Name: Global Light 2D + - component: {fileID: 651339733} + m_Layer: 31 + m_Name: Grounds m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!114 &619394801 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 619394800} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 073797afb82c5a1438f328866b10b3f0, type: 3} - m_Name: - m_EditorClassIdentifier: - m_ComponentVersion: 2 - m_LightType: 4 - m_BlendStyleIndex: 0 - m_FalloffIntensity: 0.5 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Intensity: 1 - m_LightVolumeIntensity: 1 - m_LightVolumeEnabled: 0 - m_ApplyToSortingLayers: 00000000 - m_LightCookieSprite: {fileID: 0} - m_DeprecatedPointLightCookieSprite: {fileID: 0} - m_LightOrder: 0 - m_AlphaBlendOnOverlap: 0 - m_OverlapOperation: 0 - m_NormalMapDistance: 3 - m_NormalMapQuality: 2 - m_UseNormalMap: 0 - m_ShadowsEnabled: 0 - m_ShadowIntensity: 0.75 - m_ShadowSoftness: 0 - m_ShadowSoftnessFalloffIntensity: 0.5 - m_ShadowVolumeIntensityEnabled: 0 - m_ShadowVolumeIntensity: 0.75 - m_LocalBounds: - m_Center: {x: 0, y: -0.00000011920929, z: 0} - m_Extent: {x: 0.9985302, y: 0.99853027, z: 0} - m_PointLightInnerAngle: 360 - m_PointLightOuterAngle: 360 - m_PointLightInnerRadius: 0 - m_PointLightOuterRadius: 1 - m_ShapeLightParametricSides: 5 - m_ShapeLightParametricAngleOffset: 0 - m_ShapeLightParametricRadius: 1 - m_ShapeLightFalloffSize: 0.5 - m_ShapeLightFalloffOffset: {x: 0, y: 0} - m_ShapePath: - - {x: -0.5, y: -0.5, z: 0} - - {x: 0.5, y: -0.5, z: 0} - - {x: 0.5, y: 0.5, z: 0} - - {x: -0.5, y: 0.5, z: 0} ---- !u!4 &619394802 +--- !u!4 &651339733 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 619394800} + m_GameObject: {fileID: 651339732} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} + m_Children: + - {fileID: 1937505011} + - {fileID: 1988610236} + - {fileID: 266816714} + - {fileID: 790089626} + - {fileID: 348157484} + - {fileID: 1143872956} + - {fileID: 1706011559} + m_Father: {fileID: 320298439} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &790089625 PrefabInstance: @@ -2093,7 +2520,7 @@ PrefabInstance: serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 651339733} m_Modifications: - target: {fileID: 1597087542051609407, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: sizeX @@ -2121,15 +2548,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -2146,10 +2573,10 @@ PrefabInstance: - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Mesh value: - objectReference: {fileID: 2128936067} + objectReference: {fileID: 48094519} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_VersionIndex - value: 287 + value: 309 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Tangents.Array.size @@ -2161,7 +2588,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[0].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[0].z @@ -2169,7 +2596,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[1].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[1].z @@ -2177,7 +2604,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[2].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[2].z @@ -2185,7 +2612,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[3].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[3].z @@ -2193,7 +2620,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[4].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[4].z @@ -2201,7 +2628,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[5].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[5].z @@ -2209,7 +2636,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[6].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[6].z @@ -2217,7 +2644,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[7].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[7].z @@ -2225,7 +2652,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[8].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[8].z @@ -2233,7 +2660,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[9].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[9].z @@ -2241,11 +2668,11 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[0].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[2].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[4].x @@ -2257,11 +2684,11 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[8].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[10].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[10].z @@ -2269,7 +2696,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[11].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[11].z @@ -2277,7 +2704,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[12].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[12].z @@ -2285,7 +2712,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[13].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[13].z @@ -2293,7 +2720,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[14].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[14].z @@ -2301,7 +2728,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[15].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[15].z @@ -2309,7 +2736,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[16].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[16].z @@ -2317,7 +2744,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[17].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[17].z @@ -2325,7 +2752,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[18].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[18].z @@ -2333,7 +2760,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[19].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[19].z @@ -2341,7 +2768,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[20].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[20].z @@ -2349,7 +2776,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[21].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[21].z @@ -2357,7 +2784,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[22].x - value: -6 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[22].z @@ -2365,7 +2792,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[23].x - value: 6 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Positions.Array.data[23].z @@ -2373,7 +2800,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[10].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[12].x @@ -2385,7 +2812,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[17].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[18].y @@ -2393,7 +2820,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[19].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[19].y @@ -2401,7 +2828,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[20].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[20].y @@ -2413,7 +2840,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Textures0.Array.data[22].x - value: 12 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2212457409070270700, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Faces.Array.data[0].m_Uv.m_Anchor @@ -2454,7 +2881,7 @@ PrefabInstance: - target: {fileID: 7186094041257591047, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_Mesh value: - objectReference: {fileID: 2128936067} + objectReference: {fileID: 48094519} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -3370,7 +3797,7 @@ PrefabInstance: serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 651339733} m_Modifications: - target: {fileID: 4038726635026844703, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_Size.x @@ -7878,15 +8305,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -8301,7 +8728,7 @@ Transform: m_GameObject: {fileID: 1372692861} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -26, y: 0, z: 12} + m_LocalPosition: {x: -57, y: 0, z: 55} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -8320,6 +8747,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: Assembly-CSharp::Intrepid.Core.Camera.CameraBoundary boxCollider: {fileID: 1372692865} + cameraPadding: 0.5 + triggerHeight: 5 --- !u!65 &1372692865 BoxCollider: m_ObjectHideFlags: 0 @@ -8339,8 +8768,8 @@ BoxCollider: m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 - m_Size: {x: 31.474396, y: 16.040924, z: 24.259834} - m_Center: {x: -8.219414, y: 7.778635, z: 3.783043} + m_Size: {x: 33.888885, y: 13, z: 22.16597} + m_Center: {x: 21, y: 8, z: -35.991127} --- !u!1 &1405163853 GameObject: m_ObjectHideFlags: 0 @@ -8557,6 +8986,38 @@ CapsuleCollider: m_Height: 2 m_Direction: 1 m_Center: {x: 0, y: 1, z: 0} +--- !u!1 &1501201612 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1501201613} + m_Layer: 0 + m_Name: Contacts + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1501201613 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1501201612} + 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: 1175802558} + m_Father: {fileID: 320298439} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1524378542 GameObject: m_ObjectHideFlags: 0 @@ -8583,8 +9044,8 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1524378542} serializedVersion: 2 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -18, y: 0, z: 0} + 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: [] @@ -8603,6 +9064,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: Assembly-CSharp::Intrepid.Core.Camera.CameraBoundary boxCollider: {fileID: 1524378546} + cameraPadding: 0.5 + triggerHeight: 5 --- !u!65 &1524378546 BoxCollider: m_ObjectHideFlags: 0 @@ -8622,8 +9085,8 @@ BoxCollider: m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 - m_Size: {x: 7.999547, y: 4.956458, z: 34.4506} - m_Center: {x: 17.990416, y: 1.978229, z: 13.269833} + m_Size: {x: 25.88889, y: 5, z: 17.165964} + m_Center: {x: 0, y: 0, z: -18.00013} --- !u!1 &1532299328 GameObject: m_ObjectHideFlags: 0 @@ -8688,7 +9151,7 @@ Mesh: vertexCount: 24 localAABB: m_Center: {x: 0, y: 0, z: 0} - m_Extent: {x: 2, y: 4.25, z: 8.5} + m_Extent: {x: 2, y: 4.5, z: 9} m_Shapes: vertices: [] shapes: [] @@ -8767,7 +9230,7 @@ Mesh: format: 0 dimension: 0 m_DataSize: 1152 - _typelessdata: 000000c0000088c0000008c100000000000080bf00000000000080bf0000000000000000000080bf00000040000008c100000040000088c0000008c100000000000080bf00000000000080bf0000000000000000000080bf000000c0000008c100000040000088c00000084100000000000080bf00000000000080bf0000000000000000000080bf000000c000000841000000c0000088c0000008c100000000000080bf00000000000080bf0000000000000000000080bf00000040000008c100000040000088c00000084100000000000080bf00000000000080bf0000000000000000000080bf000000c000000841000000c0000088c00000084100000000000080bf00000000000080bf0000000000000000000080bf0000004000000841000000c0000088c0000008c1000000002ef9643f2ef9e4be0000803f0000000000000000000080bf000000c0790d18c1000000c00000884000000841000000002ef9643f2ef9e4be0000803f0000000000000000000080bf000000c0790d1841000000400000884000000841000000002ef9643f2ef9e4be0000803f0000000000000000000080bf00000040790d1841000000c0000088c0000008c1000000002ef9643f2ef9e4be0000803f0000000000000000000080bf000000c0790d18c1000000400000884000000841000000002ef9643f2ef9e4be0000803f0000000000000000000080bf00000040790d184100000040000088c0000008c1000000002ef9643f2ef9e4be0000803f0000000000000000000080bf00000040790d18c1000000c0000088c00000084100000000000000000000803f000080bf0000000000000000000080bf00000040000088c000000040000088c00000084100000000000000000000803f000080bf0000000000000000000080bf000000c0000088c000000040000088400000084100000000000000000000803f000080bf0000000000000000000080bf000000c000008840000000c0000088c00000084100000000000000000000803f000080bf0000000000000000000080bf00000040000088c000000040000088400000084100000000000000000000803f000080bf0000000000000000000080bf000000c000008840000000c0000088400000084100000000000000000000803f000080bf0000000000000000000080bf0000004000008840000000c0000088c0000008c1000080bf00000000000000000000000000000000000080bf000080bf00000841000088c0000000c0000088c000000841000080bf00000000000000000000000000000000000080bf000080bf000008c1000088c0000000c00000884000000841000080bf00000000000000000000000000000000000080bf000080bf000008c10000884000000040000088c0000008c10000803f000000000000000000000000000000000000803f000080bf000008c1000088c00000004000008840000008410000803f000000000000000000000000000000000000803f000080bf000008410000884000000040000088c0000008410000803f000000000000000000000000000000000000803f000080bf00000841000088c0 + _typelessdata: 000000c0000090c0000010c100000000000080bf00000000000080bf0000000000000000000080bf00000040000010c100000040000090c0000010c100000000000080bf00000000000080bf0000000000000000000080bf000000c0000010c100000040000090c00000104100000000000080bf00000000000080bf0000000000000000000080bf000000c000001041000000c0000090c0000010c100000000000080bf00000000000080bf0000000000000000000080bf00000040000010c100000040000090c00000104100000000000080bf00000000000080bf0000000000000000000080bf000000c000001041000000c0000090c00000104100000000000080bf00000000000080bf0000000000000000000080bf0000004000001041000000c0000090c0000010c1000000002ff9643f2ff9e4be0000803f0000000000000000000080bf000000c034ff20c1000000c00000904000001041000000002ff9643f2ff9e4be0000803f0000000000000000000080bf000000c034ff2041000000400000904000001041000000002ff9643f2ff9e4be0000803f0000000000000000000080bf0000004034ff2041000000c0000090c0000010c1000000002ff9643f2ff9e4be0000803f0000000000000000000080bf000000c034ff20c1000000400000904000001041000000002ff9643f2ff9e4be0000803f0000000000000000000080bf0000004034ff204100000040000090c0000010c1000000002ff9643f2ff9e4be0000803f0000000000000000000080bf0000004034ff20c1000000c0000090c00000104100000000000000000000803f000080bf0000000000000000000080bf00000040000090c000000040000090c00000104100000000000000000000803f000080bf0000000000000000000080bf000000c0000090c000000040000090400000104100000000000000000000803f000080bf0000000000000000000080bf000000c000009040000000c0000090c00000104100000000000000000000803f000080bf0000000000000000000080bf00000040000090c000000040000090400000104100000000000000000000803f000080bf0000000000000000000080bf000000c000009040000000c0000090400000104100000000000000000000803f000080bf0000000000000000000080bf0000004000009040000000c0000090c0000010c1000080bf00000000000000000000000000000000000080bf000080bf00001041000090c0000000c0000090c000001041000080bf00000000000000000000000000000000000080bf000080bf000010c1000090c0000000c00000904000001041000080bf00000000000000000000000000000000000080bf000080bf000010c10000904000000040000090c0000010c10000803f000000000000000000000000000000000000803f000080bf000010c1000090c00000004000009040000010410000803f000000000000000000000000000000000000803f000080bf000010410000904000000040000090c0000010410000803f000000000000000000000000000000000000803f000080bf00001041000090c0 m_CompressedMesh: m_Vertices: m_NumItems: 0 @@ -8822,7 +9285,7 @@ Mesh: m_UVInfo: 0 m_LocalAABB: m_Center: {x: 0, y: 0, z: 0} - m_Extent: {x: 2, y: 4.25, z: 8.5} + m_Extent: {x: 2, y: 4.5, z: 9} m_MeshUsageFlags: 0 m_CookingOptions: 30 m_BakedConvexCollisionMesh: @@ -8915,7 +9378,7 @@ PrefabInstance: serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 651339733} m_Modifications: - target: {fileID: 4038726635026844703, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_Size.x @@ -8923,7 +9386,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4038726635026844703, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_Size.z - value: 19.007063 + value: 20.125126 objectReference: {fileID: 0} - target: {fileID: 4461476242845816847, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_Mesh @@ -13079,7 +13542,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 5444869158768317327, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalPosition.y - value: 4.25 + value: 4.5 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalPosition.x @@ -13091,7 +13554,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalPosition.z - value: 11 + value: 11.5 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.w @@ -13099,15 +13562,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 6264813173883718416, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -13135,7 +13598,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8928756976934595604, guid: d5f09e3d9ca134424b1900c7865fca19, type: 3} propertyPath: sizeZ - value: 17 + value: 18 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] @@ -13566,7 +14029,7 @@ PrefabInstance: serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 651339733} m_Modifications: - target: {fileID: 1597087542051609407, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: sizeX @@ -13594,15 +14057,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -13978,7 +14441,7 @@ PrefabInstance: serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 651339733} m_Modifications: - target: {fileID: 1597087542051609407, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: sizeX @@ -13998,7 +14461,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalPosition.z - value: 37.5 + value: 29.5 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.w @@ -14006,15 +14469,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2109134711161568785, guid: 28468bc4d76574c58b20f1a932bdaf62, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -14789,191 +15252,13 @@ MonoBehaviour: zoomLevel: 1 enterZoomVelocity: 0.5 exitZoomVelocity: 0.5 ---- !u!43 &2128936067 -Mesh: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh-110620 - serializedVersion: 12 - m_SubMeshes: - - serializedVersion: 2 - firstByte: 0 - indexCount: 36 - topology: 0 - baseVertex: 0 - firstVertex: 0 - vertexCount: 24 - localAABB: - m_Center: {x: 0, y: 0, z: 0} - m_Extent: {x: 6, y: 0.25, z: 2} - 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: 000001000200010003000200040005000600050007000600080009000a0009000b000a000c000d000e000d000f000e00100011001200110013001200140015001600150017001600 - m_VertexData: - serializedVersion: 3 - m_VertexCount: 24 - 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: 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: 1152 - _typelessdata: 0000c0c0000080be0000004000000000000000000000803f000080bf0000000000000000000080bf000040410000003f0000c040000080be0000004000000000000000000000803f000080bf0000000000000000000080bf000000000000003f0000c0c00000803e0000004000000000000000000000803f000080bf0000000000000000000080bf000040410000803f0000c0400000803e0000004000000000000000000000803f000080bf0000000000000000000080bf000000000000803f0000c040000080be000000400000803f000000000000000000000000000000000000803f000080bf000080400000003f0000c040000080be000000c00000803f000000000000000000000000000000000000803f000080bf000000000000003f0000c0400000803e000000400000803f000000000000000000000000000000000000803f000080bf000080400000803f0000c0400000803e000000c00000803f000000000000000000000000000000000000803f000080bf000000000000803f0000c040000080be000000c00000000000000000000080bf0000803f0000000000000000000080bf000040410000003f0000c0c0000080be000000c00000000000000000000080bf0000803f0000000000000000000080bf000000000000003f0000c0400000803e000000c00000000000000000000080bf0000803f0000000000000000000080bf000040410000803f0000c0c00000803e000000c00000000000000000000080bf0000803f0000000000000000000080bf000000000000803f0000c0c0000080be000000c0000080bf00000000000000000000000000000000000080bf000080bf000080400000003f0000c0c0000080be00000040000080bf00000000000000000000000000000000000080bf000080bf000000000000003f0000c0c00000803e000000c0000080bf00000000000000000000000000000000000080bf000080bf000080400000803f0000c0c00000803e00000040000080bf00000000000000000000000000000000000080bf000080bf000000000000803f0000c0c00000803e00000040000000000000803f000000000000803f0000000000000000000080bf000000000000803f0000c0400000803e00000040000000000000803f000000000000803f0000000000000000000080bf000040410000803f0000c0c00000803e000000c0000000000000803f000000000000803f0000000000000000000080bf00000000000040c00000c0400000803e000000c0000000000000803f000000000000803f0000000000000000000080bf00004041000040c00000c0c0000080be000000c000000000000080bf00000000000080bf0000000000000000000080bf00004041000040c00000c040000080be000000c000000000000080bf00000000000080bf0000000000000000000080bf00000000000040c00000c0c0000080be0000004000000000000080bf00000000000080bf0000000000000000000080bf000040410000803f0000c040000080be0000004000000000000080bf00000000000080bf0000000000000000000080bf000000000000803f - 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: 6, y: 0.25, z: 2} - 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!1001 &6311911318197520487 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 - m_TransformParent: {fileID: 320298439} + m_TransformParent: {fileID: 1501201613} m_Modifications: - target: {fileID: 38626685057237282, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_Mesh @@ -15857,7 +16142,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7939123536182165016, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_LocalPosition.z - value: 5 + value: 13 objectReference: {fileID: 0} - target: {fileID: 7939123536182165016, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_LocalRotation.w @@ -15865,15 +16150,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7939123536182165016, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_LocalRotation.x - value: -0 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7939123536182165016, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_LocalRotation.y - value: -0 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7939123536182165016, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_LocalRotation.z - value: -0 + value: 0 objectReference: {fileID: 0} - target: {fileID: 7939123536182165016, guid: a3d0064b09c33436da55429c472fc6bd, type: 3} propertyPath: m_LocalEulerAnglesHint.x @@ -15903,6 +16188,5 @@ SceneRoots: - {fileID: 1663952117} - {fileID: 1761661293} - {fileID: 295562928} - - {fileID: 619394802} - {fileID: 2054429927} - {fileID: 1943926653} diff --git a/Assets/Scripts/Intrepid/Core/Camera/CameraBoundary.cs b/Assets/Scripts/Intrepid/Core/Camera/CameraBoundary.cs index 4caa188..c4aac3a 100644 --- a/Assets/Scripts/Intrepid/Core/Camera/CameraBoundary.cs +++ b/Assets/Scripts/Intrepid/Core/Camera/CameraBoundary.cs @@ -2,6 +2,7 @@ using System; using Intrepid.Core.Camera.Events; using Intrepid.GameManagers; using Intrepid.Utilities; +using Sirenix.OdinInspector; using UnityEngine; #if UNITY_EDITOR using UnityEditor; @@ -9,13 +10,38 @@ using UnityEditor; namespace Intrepid.Core.Camera { + [ExecuteAlways] [DisallowMultipleComponent] [RequireComponent(typeof(BoxCollider))] public sealed class CameraBoundary : MonoBehaviour { [GroupInjections, SerializeField] private BoxCollider boxCollider; + [GroupConfigurations, SerializeField, Min(0f)] private float cameraPadding = 0.5f; + [GroupConfigurations, SerializeField, Min(0.1f)] private float triggerHeight = 5f; public Bounds WorldBounds => boxCollider.bounds; + + private void Reset() + { + boxCollider = GetComponent(); + ConfigureAsTrigger(); + } + + private void OnValidate() + { + if (boxCollider.IsNull()) + boxCollider = GetComponent(); + + ConfigureAsTrigger(); + } + + private void ConfigureAsTrigger() + { + if (boxCollider.IsNull()) + return; + + boxCollider.isTrigger = true; + } private void OnTriggerEnter(Collider other) { @@ -33,10 +59,148 @@ namespace Intrepid.Core.Camera }); } + [GroupDebug, Button(ButtonSizes.Medium)] + private void SetToCameraMinimumSize() + { + if (!TryGetCameraFootprintLocalBounds(out var localBounds)) + return; + + var size = boxCollider.size; + + size.x = localBounds.size.x + cameraPadding * 2f; + size.y = triggerHeight; + size.z = localBounds.size.z + cameraPadding * 2f; + + boxCollider.size = size; + } + + [GroupDebug, Button(ButtonSizes.Medium)] + private void ClampToCameraMinimumSize() + { + if (!TryGetCameraFootprintLocalBounds(out var localBounds)) + return; + + var size = boxCollider.size; + + size.x = Mathf.Max(size.x, localBounds.size.x + cameraPadding * 2f); + size.y = triggerHeight; + size.z = Mathf.Max(size.z, localBounds.size.z + cameraPadding * 2f); + + boxCollider.size = size; + } + + [GroupDebug, Button(ButtonSizes.Medium)] + private void FitToCurrentCameraView() + { + if (!TryGetCameraFootprintLocalBounds(out var localBounds)) + return; + + boxCollider.center = new Vector3( + localBounds.center.x, + 0f, + localBounds.center.z + ); + + boxCollider.size = new Vector3( + localBounds.size.x + cameraPadding * 2f, + triggerHeight, + localBounds.size.z + cameraPadding * 2f + ); + } + + [GroupDebug, Button(ButtonSizes.Medium)] + private void ApplyTriggerHeight() + { + var size = boxCollider.size; + size.y = triggerHeight; + boxCollider.size = size; + } + + [GroupDebug, Button(ButtonSizes.Medium)] + private void ResetColliderCenter() + { + boxCollider.center = Vector3.zero; + } + + private bool TryGetCameraFootprintLocalBounds(out Bounds localBounds) + { + localBounds = default; + + if (!TryGetReferenceCamera(out var cam)) + return false; + + if (!cam.orthographic) + { + Debug.LogWarning($"{nameof(CameraBoundary)} only supports orthographic cameras for boundary utilities.", this); + return false; + } + + var planeY = boxCollider.transform.TransformPoint(boxCollider.center).y; + var groundPlane = new Plane(Vector3.up, new Vector3(0f, planeY, 0f)); + + var viewportCorners = new[] + { + new Vector3(0f, 0f, 0f), + new Vector3(0f, 1f, 0f), + new Vector3(1f, 1f, 0f), + new Vector3(1f, 0f, 0f), + }; + + var hasPoint = false; + + foreach (var viewportCorner in viewportCorners) + { + var ray = cam.ViewportPointToRay(viewportCorner); + + if (!groundPlane.Raycast(ray, out var distance)) + continue; + + var worldPoint = ray.GetPoint(distance); + var localPoint = boxCollider.transform.InverseTransformPoint(worldPoint); + + if (!hasPoint) + { + localBounds = new Bounds(localPoint, Vector3.zero); + hasPoint = true; + } + else + { + localBounds.Encapsulate(localPoint); + } + } + + return hasPoint; + } + + private bool TryGetReferenceCamera(out UnityEngine.Camera cam) + { + cam = CameraSystem.Instance?.MainCamera; + + if (cam.IsNotNull()) + return true; + + cam = UnityEngine.Camera.main; + + if (cam.IsNotNull()) + return true; + +#if UNITY_EDITOR + if (SceneView.lastActiveSceneView.IsNotNull()) + { + cam = SceneView.lastActiveSceneView.camera; + return cam.IsNotNull(); + } +#endif + + Debug.LogWarning($"{nameof(CameraBoundary)} could not find a reference camera.", this); + return false; + } + #if UNITY_EDITOR private void OnDrawGizmosSelected() { if (boxCollider.IsNull()) return; + DrawBoxFill(); DrawHatchedBoxXZ(); DrawBoxWire(); @@ -46,7 +210,7 @@ namespace Intrepid.Core.Camera { var b = boxCollider.bounds; - Gizmos.color = new Color(1f, 0f, 1f, 0.10f); // alpha + Gizmos.color = new Color(1f, 0f, 1f, 0.10f); Gizmos.DrawCube(b.center, b.size); } @@ -62,7 +226,7 @@ namespace Intrepid.Core.Camera { const float hatchSpacing = .5f; - Handles.color = new Color(1f, 0f, 1f, 0.65f); // alpha + Handles.color = new Color(1f, 0f, 1f, 0.65f); var size = boxCollider.size; var center = boxCollider.center; @@ -113,27 +277,19 @@ namespace Intrepid.Core.Camera var xAtMinZ = c + minZ; if (xAtMinZ >= minX && xAtMinZ <= maxX) - { points[count++] = new Vector3(xAtMinZ, y, minZ); - } var xAtMaxZ = c + maxZ; if (xAtMaxZ >= minX && xAtMaxZ <= maxX) - { points[count++] = new Vector3(xAtMaxZ, y, maxZ); - } var zAtMinX = minX - c; if (zAtMinX >= minZ && zAtMinX <= maxZ) - { points[count++] = new Vector3(minX, y, zAtMinX); - } var zAtMaxX = maxX - c; if (zAtMaxX >= minZ && zAtMaxX <= maxZ) - { points[count++] = new Vector3(maxX, y, zAtMaxX); - } if (count < 2) {