diff --git a/Assets/Input/Player.inputactions b/Assets/Input/Player.inputactions index e5b32af221b5c1f1a2ace85e5a496da55b5cc9b5..a3ff0e4363f9f17d48969a76e52636d61edeb85b 100644 --- a/Assets/Input/Player.inputactions +++ b/Assets/Input/Player.inputactions @@ -180,7 +180,7 @@ { "name": "", "id": "8c8e490b-c610-4785-884f-f04217b23ca4", - "path": "<Pointer>/delta", + "path": "<Mouse>/delta", "interactions": "", "processors": "", "groups": ";Keyboard&Mouse;Touch", diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index dbb8a5eb19b285c705b11ed5bff54a87916ed253..3434960338807a3d66fb5fcf8b5fdb1a5a25dfb5 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -178,6 +178,103 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &76902365 +GameObject: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 76902366} + - component: {fileID: 76902369} + - component: {fileID: 76902368} + - component: {fileID: 76902370} + m_Layer: 0 + m_Name: cm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &76902366 +Transform: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76902365} + m_LocalRotation: {x: 0.08717229, y: -0.89959055, z: 0.21045254, w: -0.3726226} + m_LocalPosition: {x: 7.071068, y: -833.9341, z: 429.1351} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 974670748} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &76902368 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76902365} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3} + m_Name: + m_EditorClassIdentifier: + m_TrackedObjectOffset: {x: 0, y: 2, z: 0} + m_LookaheadTime: 0 + m_LookaheadSmoothing: 0 + m_LookaheadIgnoreY: 0 + m_HorizontalDamping: 0.5 + m_VerticalDamping: 0.5 + m_ScreenX: 0.5 + m_ScreenY: 0.5 + m_DeadZoneWidth: 0 + m_DeadZoneHeight: 0 + m_SoftZoneWidth: 0.8 + m_SoftZoneHeight: 0.8 + m_BiasX: 0 + m_BiasY: 0 + m_CenterOnActivate: 1 +--- !u!114 &76902369 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76902365} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &76902370 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76902365} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bd6043bde05a7fc4cba197d06915c1e3, type: 3} + m_Name: + m_EditorClassIdentifier: + Damping: {x: 0.1, y: 0.5, z: 0.3} + ShoulderOffset: {x: 0, y: 0, z: 0} + VerticalArmLength: 3 + CameraSide: 1 + CameraDistance: 10 + CameraCollisionFilter: + serializedVersion: 2 + m_Bits: 0 + IgnoreTag: + CameraRadius: 0.2 + DampingIntoCollision: 0 + DampingFromCollision: 2 --- !u!1 &231393954 GameObject: m_ObjectHideFlags: 0 @@ -366,10 +463,9 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 963194228} - {fileID: 1226279781} m_Father: {fileID: 0} - m_RootOrder: 9 + m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!143 &437356320 CharacterController: @@ -403,7 +499,9 @@ MonoBehaviour: m_EditorClassIdentifier: control: {fileID: 437356320} speed: 1 + lookPower: 0.1 currentMovement: {x: 0, y: 0, z: 0} + currentLook: {x: 0, y: 0, z: 0} gravity: {x: 0, y: -9.81, z: 0} gravityVelocity: {x: 0, y: 0, z: 0} --- !u!114 &437356322 @@ -448,7 +546,19 @@ MonoBehaviour: m_ActionId: c86b1a4e-7070-45b6-ba73-b33ddb63fe90 m_ActionName: Player/Move[/Keyboard/w,/Keyboard/upArrow,/Keyboard/s,/Keyboard/downArrow,/Keyboard/a,/Keyboard/leftArrow,/Keyboard/d,/Keyboard/rightArrow] - m_PersistentCalls: - m_Calls: [] + m_Calls: + - m_Target: {fileID: 437356321} + m_TargetAssemblyTypeName: PlayerControl, Assembly-CSharp + m_MethodName: OnLook + m_Mode: 0 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 m_ActionId: 0711f46b-0fc3-4947-a028-b7c3b7357385 m_ActionName: Player/Look[/Mouse/delta] - m_PersistentCalls: @@ -699,6 +809,7 @@ GameObject: - component: {fileID: 963194228} - component: {fileID: 963194227} - component: {fileID: 963194226} + - component: {fileID: 963194229} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -764,13 +875,149 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 963194225} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 3, z: -10} + m_LocalRotation: {x: 0.04981371, y: 0, z: 0, w: 0.99875855} + m_LocalPosition: {x: 0, y: 928, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 437356319} - m_RootOrder: 0 + m_Father: {fileID: 0} + m_RootOrder: 9 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &963194229 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 72ece51f2901e7445ab60da3685d6b5f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ShowDebugText: 0 + m_ShowCameraFrustum: 1 + m_IgnoreTimeScale: 0 + m_WorldUpOverride: {fileID: 0} + m_UpdateMethod: 2 + m_BlendUpdateMethod: 1 + m_DefaultBlend: + m_Style: 1 + m_Time: 2 + m_CustomCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_CustomBlends: {fileID: 0} + m_CameraCutEvent: + m_PersistentCalls: + m_Calls: [] + m_CameraActivatedEvent: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &974670745 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 974670748} + - component: {fileID: 974670747} + - component: {fileID: 974670746} + m_Layer: 0 + m_Name: CM vcam1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &974670746 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 974670745} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e501d18bb52cf8c40b1853ca4904654f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_CollideAgainst: + serializedVersion: 2 + m_Bits: 8 + m_IgnoreTag: + m_TransparentLayers: + serializedVersion: 2 + m_Bits: 0 + m_MinimumDistanceFromTarget: 0.1 + m_AvoidObstacles: 1 + m_DistanceLimit: 0 + m_MinimumOcclusionTime: 0 + m_CameraRadius: 0.1 + m_Strategy: 1 + m_MaximumEffort: 4 + m_SmoothingTime: 0 + m_Damping: 0 + m_DampingWhenOccluded: 0 + m_OptimalTargetDistance: 0 +--- !u!114 &974670747 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 974670745} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ExcludedPropertiesInInspector: + - m_Script + m_LockStageInInspector: + m_StreamingVersion: 20170927 + m_Priority: 10 + m_StandbyUpdate: 2 + m_LookAt: {fileID: 437356319} + m_Follow: {fileID: 437356319} + m_Lens: + FieldOfView: 45 + OrthographicSize: 5 + NearClipPlane: 0.3 + FarClipPlane: 1000 + Dutch: 0 + ModeOverride: 0 + LensShift: {x: 0, y: 0} + GateFit: 2 + m_SensorSize: {x: 1, y: 1} + m_Transitions: + m_BlendHint: 0 + m_InheritPosition: 0 + m_OnCameraLive: + m_PersistentCalls: + m_Calls: [] + m_LegacyBlendHint: 0 + m_ComponentOwner: {fileID: 76902366} +--- !u!4 &974670748 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 974670745} + m_LocalRotation: {x: 0.04981371, y: 0, z: 0, w: 0.99875855} + m_LocalPosition: {x: 0, y: 928, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 76902366} + m_Father: {fileID: 0} + m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1129702281 GameObject: @@ -859,7 +1106,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 437356319} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &1226279782 MeshRenderer: @@ -1181,7 +1428,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 10 + m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1796874583 GameObject: @@ -1194,7 +1441,7 @@ GameObject: - component: {fileID: 1796874586} - component: {fileID: 1796874587} - component: {fileID: 1796874588} - m_Layer: 0 + m_Layer: 3 m_Name: Mathematics m_TagString: Untagged m_Icon: {fileID: 0} diff --git a/Assets/Scripts/PlayerControl.cs b/Assets/Scripts/PlayerControl.cs index 9d43a85d5b98d5fd32043a99417ead1652959218..d2c7bf9a9ad1aaa9224877a225d94f01cbe8794f 100644 --- a/Assets/Scripts/PlayerControl.cs +++ b/Assets/Scripts/PlayerControl.cs @@ -9,9 +9,13 @@ public class PlayerControl : MonoBehaviour public float speed = 10; + public float lookPower = 0.1f; + [Header("Autogenerated values")] public Vector3 currentMovement; + public Vector3 currentLook; + [Tooltip("Gravitational acceleration.")] public Vector3 gravity = new(0, -9.81f, 0); @@ -26,7 +30,8 @@ public class PlayerControl : MonoBehaviour public void OnLook(InputAction.CallbackContext context) { - + Vector2 rawLook = context.ReadValue<Vector2>(); + currentLook = new(0, rawLook.x * lookPower, 0); } private void FixedUpdate() @@ -41,5 +46,7 @@ public class PlayerControl : MonoBehaviour } control.Move(currentMovement + gravityVelocity); + + transform.Rotate(currentLook); } } \ No newline at end of file diff --git a/Assets/Scripts/TerrainGeneration/TerrainGenerator.cs b/Assets/Scripts/TerrainGeneration/TerrainGenerator.cs index 225f4018cd362b4d45c218f417ce684f675c1ca8..02a2f210bf8b94e22373b1f13f018405aaeac2d6 100644 --- a/Assets/Scripts/TerrainGeneration/TerrainGenerator.cs +++ b/Assets/Scripts/TerrainGeneration/TerrainGenerator.cs @@ -68,6 +68,7 @@ public class TerrainGenerator : MonoBehaviour GameObject obj = Terrain.CreateTerrainGameObject(genThread.TerrainData); obj.name = genThread.InitialCrawlPosition.ToString() + "Terrain"; + obj.layer = LayerMask.NameToLayer("Terrain"); obj.transform.SetParent(transform, false); Vector3 offset = new Vector3(genThread.GridPosition.x, 0, genThread.GridPosition.y) * genThread.TerrainData.size.x; diff --git a/Packages/manifest.json b/Packages/manifest.json index 9d281ac1d3ef3c0494dcd7bdb29ccd4d76902282..3226adfb51875453046ed801ce6063d8d9080aab 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,5 +1,6 @@ { "dependencies": { + "com.unity.cinemachine": "2.8.9", "com.unity.collab-proxy": "1.17.6", "com.unity.feature.development": "1.0.1", "com.unity.ide.rider": "3.0.15", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 57cea94a5c0d36378c6591d2ec13ab7d2c6f90b8..9a90a0188e60ea97e026a90cfd8466fa1de34d8b 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,5 +1,14 @@ { "dependencies": { + "com.unity.cinemachine": { + "version": "2.8.9", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.31" + }, + "url": "https://packages.unity.com" + }, "com.unity.collab-proxy": { "version": "1.17.6", "depth": 0, diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 1c92a7840ec11895c76785f65d949a3d20d53355..32ca3c321b241a13ee96857e36d245e4a01afcd5 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -8,7 +8,7 @@ TagManager: - Default - TransparentFX - Ignore Raycast - - + - Terrain - Water - UI -