diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index afc8c3c..171c16e 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -25,8 +25,8 @@ RenderSettings: m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 - m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} - m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_SubtractiveShadowColor: {r: 0.41960785, g: 0.47843137, b: 0.627451, a: 1} + m_SkyboxMaterial: {fileID: 2100000, guid: 63c7f212f60aadc47945b935dc40e7c0, type: 2} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 @@ -94,7 +94,7 @@ LightmapSettings: m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} - m_LightingSettings: {fileID: 0} + m_LightingSettings: {fileID: 4890085278179872738, guid: 56d13d8d8e47a444289d2b75153e599a, type: 2} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 @@ -483,6 +483,11 @@ MonoBehaviour: paintCamera: {fileID: 0} updateColliderEveryFrame: 1 previewShader: {fileID: 0} +--- !u!4 &158823480 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + m_PrefabInstance: {fileID: 607565146} + m_PrefabAsset: {fileID: 0} --- !u!4 &159373527 stripped Transform: m_CorrespondingSourceObject: {fileID: 6407192061547581319, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} @@ -715,7 +720,7 @@ Transform: m_GameObject: {fileID: 172071430} serializedVersion: 2 m_LocalRotation: {x: 0.1305262, y: -3.7968678e-12, z: 4.3538282e-13, w: 0.9914449} - m_LocalPosition: {x: 33.03, y: 9.514687, z: 29.493334} + m_LocalPosition: {x: 0, y: 1.9146858, z: -4.3466663} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -833,6 +838,84 @@ Transform: m_Children: [] m_Father: {fileID: 686187287} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &208284746 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1198013417640408, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_Name + value: forestpack_stone_large_1 (3) + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.x + value: 1.3788513 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.y + value: 1.3788513 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.z + value: 1.3788513 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.x + value: 27.48 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.y + value: 6.1697764 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.z + value: 9.86 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.w + value: -0.18650882 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.x + value: -0.6689181 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.y + value: 0.18134616 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.z + value: 0.69633085 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -0.17400001 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -87.746 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 210.15599 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} +--- !u!4 &208284747 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + m_PrefabInstance: {fileID: 208284746} + m_PrefabAsset: {fileID: 0} --- !u!1 &238011515 GameObject: m_ObjectHideFlags: 0 @@ -955,6 +1038,99 @@ Transform: m_CorrespondingSourceObject: {fileID: 5233313512616703380, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} m_PrefabInstance: {fileID: 788444} m_PrefabAsset: {fileID: 0} +--- !u!1 &284663423 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 284663426} + - component: {fileID: 284663425} + - component: {fileID: 284663424} + m_Layer: 0 + m_Name: Terrain + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 0 +--- !u!154 &284663424 +TerrainCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 284663423} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_TerrainData: {fileID: 15600000, guid: 9fd0999bcdb5b874882e73d08ff0d45d, type: 2} + m_EnableTreeColliders: 1 +--- !u!218 &284663425 +Terrain: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 284663423} + m_Enabled: 1 + serializedVersion: 6 + m_TerrainData: {fileID: 15600000, guid: 9fd0999bcdb5b874882e73d08ff0d45d, type: 2} + m_TreeDistance: 5000 + m_TreeBillboardDistance: 50 + m_TreeCrossFadeLength: 5 + m_TreeMaximumFullLODCount: 50 + m_DetailObjectDistance: 80 + m_DetailObjectDensity: 1 + m_HeightmapPixelError: 5 + m_SplatMapDistance: 1000 + m_HeightmapMinimumLODSimplification: 0 + m_HeightmapMaximumLOD: 0 + m_ShadowCastingMode: 2 + m_DrawHeightmap: 1 + m_DrawInstanced: 0 + m_DrawTreesAndFoliage: 1 + m_StaticShadowCaster: 0 + m_IgnoreQualitySettings: 0 + m_ReflectionProbeUsage: 1 + m_MaterialTemplate: {fileID: 2100000, guid: 594ea882c5a793440b60ff72d896021e, type: 2} + m_BakeLightProbesForTrees: 1 + m_PreserveTreePrototypeLayers: 0 + m_DeringLightProbesForTrees: 1 + m_ReceiveGI: 1 + m_ScaleInLightmap: 0.0256 + m_LightmapParameters: {fileID: 15203, guid: 0000000000000000f000000000000000, type: 0} + m_GroupingID: 0 + m_RenderingLayerMask: 1 + m_AllowAutoConnect: 1 + m_EnableHeightmapRayTracing: 1 + m_EnableTreesAndDetailsRayTracing: 0 + m_TreeMotionVectorModeOverride: 3 +--- !u!4 &284663426 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 284663423} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &316547577 stripped Transform: m_CorrespondingSourceObject: {fileID: 3016676453106285100, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} @@ -1028,7 +1204,7 @@ Camera: m_GameObject: {fileID: 330585543} m_Enabled: 1 serializedVersion: 2 - m_ClearFlags: 2 + m_ClearFlags: 1 m_BackGroundColor: {r: 0.13333334, g: 0.2, b: 0.26666668, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 @@ -1079,7 +1255,7 @@ Transform: m_GameObject: {fileID: 330585543} serializedVersion: 2 m_LocalRotation: {x: 0.1305262, y: -3.8055076e-12, z: 5.010046e-13, w: 0.9914449} - m_LocalPosition: {x: 33.03, y: 9.514687, z: 29.493334} + m_LocalPosition: {x: 0, y: 1.9146858, z: -4.3466663} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -1319,6 +1495,84 @@ Transform: m_Children: [] m_Father: {fileID: 1129539841} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &417343357 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1198013417640408, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_Name + value: forestpack_stone_large_1 (2) + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.x + value: 2.0942 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.y + value: 2.0942 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.z + value: 2.0942 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.x + value: 28.84 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.y + value: 6.63 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.z + value: 10.58 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9748672 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.z + value: 0.22278671 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 25.746 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} +--- !u!4 &417343358 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + m_PrefabInstance: {fileID: 417343357} + m_PrefabAsset: {fileID: 0} --- !u!1 &437642967 GameObject: m_ObjectHideFlags: 0 @@ -1482,6 +1736,72 @@ Transform: m_CorrespondingSourceObject: {fileID: 5567804142537650916, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} m_PrefabInstance: {fileID: 788444} m_PrefabAsset: {fileID: 0} +--- !u!1001 &571266634 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1451074748068950, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_Name + value: forestpack_stone_medium_1 (1) + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.x + value: 47.67 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.y + value: 2.8640454 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.z + value: 55.91 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 29636f40562819649b730c52f1babbcb, type: 3} +--- !u!4 &576722864 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + m_PrefabInstance: {fileID: 830003388} + m_PrefabAsset: {fileID: 0} --- !u!1 &597997895 stripped GameObject: m_CorrespondingSourceObject: {fileID: -7694449539802768922, guid: 554c0bdf86263754d862d7effd04045b, type: 3} @@ -1509,11 +1829,133 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!1001 &607565146 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1198013417640408, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_Name + value: forestpack_stone_large_1 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.x + value: 48.46 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.y + value: 2.8509295 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.z + value: 55.18 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} --- !u!4 &616570149 stripped Transform: m_CorrespondingSourceObject: {fileID: 6267318123737757797, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} m_PrefabInstance: {fileID: 788444} m_PrefabAsset: {fileID: 0} +--- !u!1001 &639744258 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1451074748068950, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_Name + value: forestpack_stone_medium_1 (2) + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.x + value: 37.73 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.y + value: 8.220929 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.z + value: 36.62 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 29636f40562819649b730c52f1babbcb, type: 3} --- !u!1 &682237518 stripped GameObject: m_CorrespondingSourceObject: {fileID: -8278657895335465921, guid: 554c0bdf86263754d862d7effd04045b, type: 3} @@ -1586,7 +2028,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 2147483647 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &686187287 Transform: m_ObjectHideFlags: 0 @@ -1620,6 +2062,84 @@ Transform: m_CorrespondingSourceObject: {fileID: 8646236745351523921, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} m_PrefabInstance: {fileID: 788444} m_PrefabAsset: {fileID: 0} +--- !u!1001 &696901729 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1198013417640408, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_Name + value: forestpack_stone_large_1 (4) + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.x + value: 2.4791138 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.y + value: 2.4791138 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.z + value: 2.4791138 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.x + value: 47.74 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.y + value: 2.77 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.z + value: 28.06 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.w + value: 0.060083088 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.x + value: 0.011049385 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.y + value: -0.08954447 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.z + value: -0.99410754 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -10.178 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -1.9060001 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -172.91301 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} +--- !u!4 &696901730 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + m_PrefabInstance: {fileID: 696901729} + m_PrefabAsset: {fileID: 0} --- !u!134 &699178043 PhysicsMaterial: m_ObjectHideFlags: 0 @@ -1633,6 +2153,133 @@ PhysicsMaterial: m_Bounciness: 0 m_FrictionCombine: 0 m_BounceCombine: 0 +--- !u!1 &705507993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705507995} + - component: {fileID: 705507994} + - component: {fileID: 705507996} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &705507994 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + serializedVersion: 12 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 0.65 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + 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.1 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &705507995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + serializedVersion: 2 + m_LocalRotation: {x: 0.5659509, y: -0.25098583, z: 0.06319353, w: 0.7827595} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 66.596, y: -54.011, z: -27.785002} +--- !u!114 &705507996 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + 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 &721670969 GameObject: m_ObjectHideFlags: 0 @@ -1995,6 +2642,67 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 829281440} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1001 &830003388 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2110604699} + m_Modifications: + - target: {fileID: 1252687729517630, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_Name + value: forestpack_roadSign_westEast_1 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalPosition.x + value: 46.046 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalPosition.y + value: 2.78 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalPosition.z + value: 55.685 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000021855694 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009941363576130, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a8cba3361c8f7724e8899289f1efa8cc, type: 3} --- !u!1 &832575517 GameObject: m_ObjectHideFlags: 0 @@ -2011,7 +2719,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!114 &832575518 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2044,6 +2752,45 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &835380436 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 835380437} + m_Layer: 0 + m_Name: Stone + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &835380437 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 835380436} + 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: 971309434} + - {fileID: 158823480} + - {fileID: 1759876188} + - {fileID: 2124273557} + - {fileID: 2057779501} + - {fileID: 417343358} + - {fileID: 208284747} + - {fileID: 696901730} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &877999082 stripped Transform: m_CorrespondingSourceObject: {fileID: 4717059443444886204, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} @@ -2192,6 +2939,11 @@ Transform: m_Children: [] m_Father: {fileID: 686187287} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &971309434 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + m_PrefabInstance: {fileID: 1755235551} + m_PrefabAsset: {fileID: 0} --- !u!4 &993938028 stripped Transform: m_CorrespondingSourceObject: {fileID: 2571591903515021705, guid: 930b7a19d446f4b4c9c810e37e84e625, type: 3} @@ -2538,7 +3290,7 @@ Transform: m_GameObject: {fileID: 1141039638} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 33.03, y: 7.6, z: 33.84} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: @@ -2564,13 +3316,13 @@ CharacterController: m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 - m_Height: 1.35 + m_Height: 1 m_Radius: 0.1 m_SlopeLimit: 59 m_StepOffset: 0.3 m_SkinWidth: 0.01 m_MinMoveDistance: 0.001 - m_Center: {x: 0, y: 0.675, z: 0} + m_Center: {x: 0, y: 0.48, z: 0} --- !u!114 &1141039642 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2611,7 +3363,7 @@ MonoBehaviour: wallOffsetFollow: 12 wallExitGrace: 0.15 ceilingGrabDistance: 0.3 - wallTopOutBoost: 1.2 + wallTopOutBoost: 0.5 cameraOrbit: {fileID: 0} --- !u!1 &1238479929 GameObject: @@ -2756,6 +3508,79 @@ Transform: m_Children: [] m_Father: {fileID: 686187287} m_LocalEulerAnglesHint: {x: 55, y: 0, z: 0} +--- !u!1001 &1424346480 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1198013417640408, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_Name + value: forestpack_stone_large_1 (1) + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.x + value: 2.0942 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.y + value: 2.0942 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalScale.z + value: 2.0942 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.x + value: 36.89 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.y + value: 8.330929 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalPosition.z + value: 35.82 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} --- !u!1 &1478475837 GameObject: m_ObjectHideFlags: 0 @@ -3381,6 +4206,72 @@ Transform: m_Children: [] m_Father: {fileID: 686187287} m_LocalEulerAnglesHint: {x: -75, y: 0, z: 0} +--- !u!1001 &1755235551 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 835380437} + m_Modifications: + - target: {fileID: 1451074748068950, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_Name + value: forestpack_stone_medium_1 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.x + value: 29.81 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.y + value: 2.92 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalPosition.z + value: 49.46 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 29636f40562819649b730c52f1babbcb, type: 3} +--- !u!4 &1759876188 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + m_PrefabInstance: {fileID: 571266634} + m_PrefabAsset: {fileID: 0} --- !u!1 &1774267801 GameObject: m_ObjectHideFlags: 0 @@ -3912,6 +4803,11 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2057779501 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4075937848129010, guid: 29636f40562819649b730c52f1babbcb, type: 3} + m_PrefabInstance: {fileID: 639744258} + m_PrefabAsset: {fileID: 0} --- !u!1 &2085077130 GameObject: m_ObjectHideFlags: 0 @@ -4023,6 +4919,43 @@ MonoBehaviour: - {x: -0.000000006221608, y: -0.00000025973634, z: -0.02394664, w: 0.99971324} - {x: -0.0000000029579903, y: 0.0000002014338, z: -0.00929668, w: 0.9999568} - {x: 0.000000005080834, y: -0.00000018263358, z: 0.016970353, w: 0.999856} +--- !u!1 &2110604698 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2110604699} + m_Layer: 0 + m_Name: Sign + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &2110604699 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110604698} + 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: 576722864} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2124273557 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4922444305696846, guid: ac1cc01cb5dbf5d4f869c403b38f8a21, type: 3} + m_PrefabInstance: {fileID: 1424346480} + m_PrefabAsset: {fileID: 0} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 @@ -4038,3 +4971,7 @@ SceneRoots: - {fileID: 1129539841} - {fileID: 1006134333} - {fileID: 686187287} + - {fileID: 705507995} + - {fileID: 2110604699} + - {fileID: 835380437} + - {fileID: 284663426} diff --git a/Assets/Scripts/MeshPainter.Pick.cs b/Assets/Scripts/MeshPainter.Pick.cs index 3105a00..defe685 100644 --- a/Assets/Scripts/MeshPainter.Pick.cs +++ b/Assets/Scripts/MeshPainter.Pick.cs @@ -34,34 +34,66 @@ public partial class MeshPainter private bool _pickHeld; // edge tracking so a held button picks once, not every frame + // A terrain hit higher than this above the heightfield is a tree (trees share the terrain + // collider but stand proud of the ground); on the surface it is bare ground. + private const float TerrainFoliageHeightEpsilon = 0.3f; + /// /// Raycasts at a screen position against ANY collider, samples every channel value at the hit /// (texel-exact where possible) and copies it into the brush, forcing all opacities/alphas to /// 1 and enabling every paint channel. Reads regardless of which channels are currently toggled. + /// Pick paths, by what was hit: + /// - our paint mesh -> texel-exact from the painted maps (full PBR); + /// - terrain ground -> blend of the terrain layers by their splat weights (full PBR); + /// - terrain tree / detail -> the rendered on-screen colour (no per-instance renderer/UV); + /// - readable foreign mat -> texel/scalar from its material (full PBR); + /// - anything else / sky -> the rendered on-screen colour. /// private void PickAtScreen(Vector2 screenPos) { - if (!TryRaycastAny(screenPos, out RaycastHit hit)) return; - - bool ok = (hit.collider == _collider) - ? PickFromPaintTextures(hit) - : PickFromForeignMaterial(hit); + bool ok; + if (TryRaycastAny(screenPos, out RaycastHit hit)) + { + if (hit.collider == _collider) + ok = PickFromPaintTextures(hit); + else + { + Terrain terrain = hit.collider is TerrainCollider ? hit.collider.GetComponent() : null; + if (terrain) + ok = PickFromTerrain(terrain, hit, screenPos); + else + // Foreign object: texel/scalar material where readable, else the screen pixel. + ok = PickFromForeignMaterial(hit) || PickFromScreen(screenPos); + } + } + else + { + // Ray left the scene entirely (e.g. foliage silhouetted against the sky): the + // on-screen pixel is the only thing to sample. + ok = PickFromScreen(screenPos); + } if (!ok) return; - // "Set all alpha values to 1": full-strength adoption across every opacity control. + FinalizePick(); + } + + /// + /// Common tail of every successful pick: forces all opacities/alphas to 1, enables every paint + /// channel (a whole-material pick implies repainting all of it), leaves pipette mode (one-shot) + /// and notifies listeners (the in-game HUD) to re-sync their widgets. + /// + private void FinalizePick() + { metallicSmoothnessOpacity = 1f; occlusionOpacity = 1f; - // Picking a whole material implies repainting all of it, so enable every channel. paintAlbedo = true; paintMetallicSmoothness = true; paintOcclusion = true; paintEmission = true; - // A pick is a one-shot action: leave pipette mode automatically so the next click paints. pipette = false; - // Let listeners (the in-game HUD) refresh their widgets to the adopted values + flags. Picked?.Invoke(); } @@ -168,6 +200,147 @@ public partial class MeshPainter return true; } + /// + /// Picks at a terrain hit. The TerrainCollider also carries the painted TREES (which sit above + /// the heightfield and expose no per-instance renderer/UV here), and grass/mushroom DETAILS have + /// no collider at all: + /// - hit above the surface -> a tree: adopt the rendered on-screen colour; + /// - hit on a cell that has grass/mushroom detail -> adopt the on-screen colour; + /// - otherwise (bare ground) -> blend the terrain layers by their splat weights (full PBR). + /// + private bool PickFromTerrain(Terrain terrain, RaycastHit hit, Vector2 screenPos) + { + TerrainData td = terrain.terrainData; + if (!td) return false; + Vector3 tpos = terrain.transform.position; + Vector3 size = td.size; + if (size.x <= 1e-4f || size.z <= 1e-4f) return false; + + // Trees share the terrain collider but stand proud of the heightfield. + float surfaceY = terrain.SampleHeight(hit.point) + tpos.y; + if (hit.point.y > surfaceY + TerrainFoliageHeightEpsilon) + return PickFromScreen(screenPos); + + Vector3 local = hit.point - tpos; + float nx = Mathf.Clamp01(local.x / size.x); + float nz = Mathf.Clamp01(local.z / size.z); + + // Grass/mushroom detail rendered on this ground cell -> what's visible there is the + // foliage (which has no collider of its own), so trust the screen pixel. + if (TerrainHasDetail(td, nx, nz)) + return PickFromScreen(screenPos); + + return PickFromTerrainLayers(td, local, nx, nz); + } + + /// + /// Blends the terrain's layers at a ground point by their splat (alphamap) weights: the weighted + /// diffuse colour becomes albedo and the weighted per-layer metallic/smoothness scalars feed + /// those channels; occlusion is 1 and emission black. Terrain has no Renderer/material, so this + /// is the only way to read its surface. + /// + private bool PickFromTerrainLayers(TerrainData td, Vector3 local, float nx, float nz) + { + int aw = td.alphamapWidth, ah = td.alphamapHeight; + int mapX = Mathf.Clamp(Mathf.FloorToInt(nx * aw), 0, aw - 1); + int mapZ = Mathf.Clamp(Mathf.FloorToInt(nz * ah), 0, ah - 1); + float[,,] weights = td.GetAlphamaps(mapX, mapZ, 1, 1); + + TerrainLayer[] layers = td.terrainLayers; + int count = Mathf.Min(layers.Length, weights.GetLength(2)); + Color albedo = Color.black; + float metallicVal = 0f, smoothVal = 0f, weightSum = 0f; + for (int i = 0; i < count; i++) + { + TerrainLayer L = layers[i]; + if (L == null) continue; + float w = weights[0, 0, i]; + if (w <= 0f) continue; + + Color col = Color.gray; + if (L.diffuseTexture) + { + // Terrain tiles each layer across the world by tileSize (metres); sample that texel. + Vector2 uv = new Vector2( + (local.x - L.tileOffset.x) / Mathf.Max(1e-4f, L.tileSize.x), + (local.z - L.tileOffset.y) / Mathf.Max(1e-4f, L.tileSize.y)); + col = SampleTexel(L.diffuseTexture, uv, true); + } + albedo += col * w; + metallicVal += L.metallic * w; + smoothVal += L.smoothness * w; + weightSum += w; + } + if (weightSum <= 1e-4f) return false; + float inv = 1f / weightSum; // alphamap weights normally sum to 1, but guard anyway + + brushColor = new Color(Mathf.Clamp01(albedo.r * inv), Mathf.Clamp01(albedo.g * inv), Mathf.Clamp01(albedo.b * inv), 1f); + metallic = Mathf.Clamp01(metallicVal * inv); + smoothness = Mathf.Clamp01(smoothVal * inv); + occlusion = 1f; + emissionColor = new Color(0f, 0f, 0f, 1f); + return true; + } + + /// + /// True when any grass/mushroom detail layer has coverage at the given normalized terrain + /// position - i.e. foliage (which carries no collider) is rendered on that ground cell. + /// + private static bool TerrainHasDetail(TerrainData td, float nx, float nz) + { + int dw = td.detailWidth, dh = td.detailHeight; + if (dw <= 0 || dh <= 0) return false; + int dx = Mathf.Clamp(Mathf.FloorToInt(nx * dw), 0, dw - 1); + int dy = Mathf.Clamp(Mathf.FloorToInt(nz * dh), 0, dh - 1); + int layerCount = td.detailPrototypes.Length; + for (int i = 0; i < layerCount; i++) + { + int[,] d = td.GetDetailLayer(dx, dy, 1, 1, i); + if (d[0, 0] > 0) return true; + } + return false; + } + + /// + /// Fallback colour pick: reads the rendered pixel under the cursor (the paint camera re-rendered + /// to a temporary target, so it works on either render pipeline). Used for surfaces that can't be + /// sampled texel-exact - terrain trees and grass/mushroom details (no per-instance renderer/UV) + /// and anything hit without a readable material, plus rays that miss all geometry. Only albedo is + /// meaningful from a screen pixel; the data channels default to matte/unoccluded/no-emission. + /// + private bool PickFromScreen(Vector2 screenPos) + { + Camera cam = paintCamera; + if (!cam) return false; + int w = Mathf.Max(1, cam.pixelWidth), h = Mathf.Max(1, cam.pixelHeight); + + RenderTexture rt = RenderTexture.GetTemporary(w, h, 24, RenderTextureFormat.ARGB32, RenderTextureReadWrite.sRGB); + RenderTexture prevTarget = cam.targetTexture; + RenderTexture prevActive = RenderTexture.active; + cam.targetTexture = rt; + cam.Render(); + RenderTexture.active = rt; + + var tmp = new Texture2D(1, 1, TextureFormat.RGBA32, false, false); + int px = Mathf.Clamp(Mathf.RoundToInt(screenPos.x), 0, w - 1); + int py = Mathf.Clamp(Mathf.RoundToInt(screenPos.y), 0, h - 1); + tmp.ReadPixels(new Rect(px, py, 1, 1), 0, 0, false); + tmp.Apply(false); + Color c = tmp.GetPixel(0, 0); + + cam.targetTexture = prevTarget; + RenderTexture.active = prevActive; + RenderTexture.ReleaseTemporary(rt); + if (Application.isPlaying) Destroy(tmp); else DestroyImmediate(tmp); + + brushColor = new Color(Mathf.Clamp01(c.r), Mathf.Clamp01(c.g), Mathf.Clamp01(c.b), 1f); + metallic = 0f; + smoothness = 0f; + occlusion = 1f; + emissionColor = new Color(0f, 0f, 0f, 1f); + return true; + } + // --- Material read helpers (name-tolerant: URP and legacy Standard) --- private static Color GetColorProp(Material m, string nameA, string nameB, Color fallback) diff --git a/Assets/Scripts/PlayerCharacterController.cs b/Assets/Scripts/PlayerCharacterController.cs index 07d1799..dba7635 100644 --- a/Assets/Scripts/PlayerCharacterController.cs +++ b/Assets/Scripts/PlayerCharacterController.cs @@ -160,6 +160,7 @@ public class PlayerCharacterController : MonoBehaviour private float _lostContactTimer; private float _wallOffset; // current lean-out distance from the wall (mouse drag) private float _wallYaw; // body yaw offset from facing the wall (mouse drag); held until leaving + private int _wallStrafeSign; // latched sideways direction (camera picks it once per strafe); 0 = unlatched private bool _offsetDragging; // true while the offset/rotation is being set (pauses camera orbit) private bool _climbLeftGround; // true once the capsule has left the ground while climbing (enables ground-detach) private readonly RaycastHit[] _wallProbe = new RaycastHit[8]; @@ -365,6 +366,7 @@ public class PlayerCharacterController : MonoBehaviour _slideSpeed = 0f; _wallOffset = 0f; _wallYaw = 0f; + _wallStrafeSign = 0; _climbLeftGround = false; } } @@ -447,8 +449,21 @@ public class PlayerCharacterController : MonoBehaviour if (wallUp.sqrMagnitude > 1e-6f) wallUp.Normalize(); Vector3 wallRight = Vector3.Cross(_wallNormal, wallUp); if (wallRight.sqrMagnitude > 1e-6f) wallRight.Normalize(); - if (cameraTransform && Vector3.Dot(cameraTransform.right, wallRight) < 0f) + + // Pick the strafe sign ONCE from the camera when a strafe begins, then hold it. + // Re-deciding it every frame flips wallRight while rounding a curved (cylindrical) + // wall: exactly at 90 deg to the camera the dot crosses zero, so the sideways input + // inverts frame-to-frame and you lock there, jittering back and forth. Latching keeps + // a strafe continuous around the curve; it resets when the strafe input releases so + // the next one re-syncs to the camera. + bool strafing = Mathf.Abs(h) > 1e-4f; + if (!strafing) + _wallStrafeSign = 0; + else if (_wallStrafeSign == 0) + _wallStrafeSign = (cameraTransform && Vector3.Dot(cameraTransform.right, wallRight) < 0f) ? -1 : 1; + if (_wallStrafeSign < 0) wallRight = -wallRight; + alongSurface = wallUp * v + wallRight * h; } if (alongSurface.sqrMagnitude > 1f) alongSurface.Normalize(); @@ -760,6 +775,7 @@ public class PlayerCharacterController : MonoBehaviour _verticalVelocity = 0f; _wallOffset = 0f; _wallYaw = 0f; + _wallStrafeSign = 0; _offsetDragging = false; _climbLeftGround = false; _mantling = false; diff --git a/Assets/Supercyan Free Forest Sample/Materials/Mobile/Foliage/forestpack_foliage_low.mat b/Assets/Supercyan Free Forest Sample/Materials/Mobile/Foliage/forestpack_foliage_low.mat index 20d76a9..a878c13 100644 --- a/Assets/Supercyan Free Forest Sample/Materials/Mobile/Foliage/forestpack_foliage_low.mat +++ b/Assets/Supercyan Free Forest Sample/Materials/Mobile/Foliage/forestpack_foliage_low.mat @@ -56,7 +56,7 @@ Material: m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MainTex: - m_Texture: {fileID: 0} + m_Texture: {fileID: 2800000, guid: 1056b8bf593938a4399e74aa632e2a21, type: 3} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MetallicGlossMap: @@ -135,7 +135,7 @@ Material: - _ZWrite: 1 - __dirty: 1 m_Colors: - - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _BaseColor: {r: 1, g: 1, b: 1, a: 0.5} - _Color: {r: 1, g: 1, b: 1, a: 1} - _ColorMultiply: {r: 1, g: 1, b: 1, a: 1} - _ColorOverride: {r: 1, g: 1, b: 1, a: 0} diff --git a/Assets/Supercyan Free Forest Sample/Materials/Mobile/SignAndBridge/forestpack_roadSignAndBridge_low.mat b/Assets/Supercyan Free Forest Sample/Materials/Mobile/SignAndBridge/forestpack_roadSignAndBridge_low.mat index 72eacb5..054059c 100644 --- a/Assets/Supercyan Free Forest Sample/Materials/Mobile/SignAndBridge/forestpack_roadSignAndBridge_low.mat +++ b/Assets/Supercyan Free Forest Sample/Materials/Mobile/SignAndBridge/forestpack_roadSignAndBridge_low.mat @@ -69,7 +69,7 @@ Material: m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MainTex: - m_Texture: {fileID: 0} + m_Texture: {fileID: 2800000, guid: d1de526d00e4052458506ce20689b585, type: 3} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MetallicGlossMap: @@ -149,7 +149,7 @@ Material: - _ZWrite: 1 - __dirty: 1 m_Colors: - - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _BaseColor: {r: 1, g: 1, b: 1, a: 0.5} - _Color: {r: 1, g: 1, b: 1, a: 1} - _ColorMultiply: {r: 1, g: 1, b: 1, a: 1} - _ColorOverride: {r: 1, g: 1, b: 1, a: 0} diff --git a/Assets/Supercyan Free Forest Sample/Scenes/BrightDay.unity b/Assets/Supercyan Free Forest Sample/Scenes/BrightDay.unity index 6204990..71398ab 100644 --- a/Assets/Supercyan Free Forest Sample/Scenes/BrightDay.unity +++ b/Assets/Supercyan Free Forest Sample/Scenes/BrightDay.unity @@ -884,7 +884,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!81 &963194226 AudioListener: m_ObjectHideFlags: 0