From 94cd3c11c0290531418833ec4a79bc771e20e517 Mon Sep 17 00:00:00 2001 From: mhby1g21 <mhby1g21@soton.ac.uk> Date: Fri, 29 Nov 2024 18:09:57 +0000 Subject: [PATCH] changed active input handling settings in Edit>ProjectSettings>Player to both to fix player controller --- AVVR/Assets/Prefabs/Player.prefab | 181 +++------------------ AVVR/Assets/_Scripts/PlayerController.cs | 76 +++------ AVVR/ProjectSettings/ProjectSettings.asset | 2 +- 3 files changed, 47 insertions(+), 212 deletions(-) diff --git a/AVVR/Assets/Prefabs/Player.prefab b/AVVR/Assets/Prefabs/Player.prefab index 1dd8c25..88da402 100644 --- a/AVVR/Assets/Prefabs/Player.prefab +++ b/AVVR/Assets/Prefabs/Player.prefab @@ -13,6 +13,7 @@ GameObject: - component: {fileID: 8731183819296907094} - component: {fileID: 7747540468615196240} - component: {fileID: 2947511814959443460} + - component: {fileID: 5079021809863753742} m_Layer: 0 m_Name: Player m_TagString: Untagged @@ -135,6 +136,25 @@ CharacterController: m_SkinWidth: 0.08 m_MinMoveDistance: 0.001 m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &5079021809863753742 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2609880478635417835} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 97eb57e70332ba84db6328890cf4fcb5, type: 3} + m_Name: + m_EditorClassIdentifier: + moveSpeed: 5 + sprintSpeed: 10 + jumpForce: 5 + gravity: -9.81 + mouseSensitivity: 2 + upperLookLimit: 80 + lowerLookLimit: -80 --- !u!1 &4647055522530146577 GameObject: m_ObjectHideFlags: 0 @@ -147,9 +167,6 @@ GameObject: - component: {fileID: 3975458510086350902} - component: {fileID: 3046176496849403033} - component: {fileID: 1965954154298978852} - - component: {fileID: 4100345015215687520} - - component: {fileID: 4624752530568560991} - - component: {fileID: 7788176520769696045} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -243,10 +260,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 6fd9ebf1401392e4bbd47fea32f47642, type: 3} m_Name: m_EditorClassIdentifier: - currentBakedListener: {fileID: 4100345015215687520} + currentBakedListener: {fileID: 0} applyReverb: 1 - reverbType: 1 - useAllProbeBatches: 1 + reverbType: 0 + useAllProbeBatches: 0 probeBatches: - {fileID: 0} mTotalDataSize: 1943242 @@ -262,155 +279,3 @@ MonoBehaviour: radius: 0 mProbeBatchesUsed: - {fileID: 0} ---- !u!114 &4100345015215687520 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4647055522530146577} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3d1a2bdfdee8e5b48a9949c674b73640, type: 3} - m_Name: - m_EditorClassIdentifier: - influenceRadius: 7 - useAllProbeBatches: 1 - probeBatches: - - {fileID: 0} - mTotalDataSize: 1933624 - mProbeDataSizes: 38811d00 - mIdentifier: - type: 0 - variation: 2 - endpointInfluence: - center: - x: -0.305 - y: 1.326 - z: -2.949 - radius: 7 - mProbeBatchesUsed: - - {fileID: 0} ---- !u!114 &4624752530568560991 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4647055522530146577} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: c2fadf230d1919748a9aa21d40f74619, type: 3} - m_Name: - m_EditorClassIdentifier: - m_TrackingType: 0 - m_UpdateType: 0 - m_IgnoreTrackingState: 0 - m_PositionInput: - m_UseReference: 1 - m_Action: - m_Name: Position - m_Type: 0 - m_ExpectedControlType: Vector3 - m_Id: d7b6bf2f-0baf-4131-acaf-5450e3322c72 - m_Processors: - m_Interactions: - m_SingletonActionBindings: - - m_Name: - m_Id: b73e96bb-ed24-4e6e-a0c9-4c2fede601b4 - m_Path: <XRHMD>/centerEyePosition - m_Interactions: - m_Processors: - m_Groups: - m_Action: Position - m_Flags: 0 - - m_Name: - m_Id: cb4d10a6-676d-4034-921e-efe64effcb05 - m_Path: <HandheldARInputDevice>/devicePosition - m_Interactions: - m_Processors: - m_Groups: - m_Action: Position - m_Flags: 0 - m_Flags: 0 - m_Reference: {fileID: 7862207684358717888, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_RotationInput: - m_UseReference: 1 - m_Action: - m_Name: Rotation - m_Type: 0 - m_ExpectedControlType: Quaternion - m_Id: a55f11cc-f5e5-49ec-8b2c-24b512f8e0a6 - m_Processors: - m_Interactions: - m_SingletonActionBindings: - - m_Name: - m_Id: d7eca514-205e-4317-80da-47de82de92a6 - m_Path: <XRHMD>/centerEyeRotation - m_Interactions: - m_Processors: - m_Groups: - m_Action: Rotation - m_Flags: 0 - - m_Name: - m_Id: eb932330-9c5b-4b84-83f4-bd7c1011d1b6 - m_Path: <HandheldARInputDevice>/deviceRotation - m_Interactions: - m_Processors: - m_Groups: - m_Action: Rotation - m_Flags: 0 - m_Flags: 0 - m_Reference: {fileID: -530380113134220495, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_TrackingStateInput: - m_UseReference: 1 - m_Action: - m_Name: Tracking State - m_Type: 0 - m_ExpectedControlType: Integer - m_Id: 01cc4ff4-730e-40f2-a563-07c926eb386f - m_Processors: - m_Interactions: - m_SingletonActionBindings: - - m_Name: - m_Id: 64d7f80a-88b8-43d4-bd5d-2a277c90ad60 - m_Path: <XRHMD>/trackingState - m_Interactions: - m_Processors: - m_Groups: - m_Action: Tracking State - m_Flags: 0 - m_Flags: 0 - m_Reference: {fileID: 1031966339891076899, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_PositionAction: - m_Name: - m_Type: 0 - m_ExpectedControlType: - m_Id: 83db96f9-ee58-4293-a9b6-c59eb5605b7c - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Flags: 0 - m_RotationAction: - m_Name: - m_Type: 0 - m_ExpectedControlType: - m_Id: 43a3027b-3bfc-47b6-884e-d43fc62913bf - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Flags: 0 ---- !u!114 &7788176520769696045 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4647055522530146577} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f204e1485c2a75a4fbd198256692e1ce, type: 3} - m_Name: - m_EditorClassIdentifier: - speed: 0.005 - sens: 2 diff --git a/AVVR/Assets/_Scripts/PlayerController.cs b/AVVR/Assets/_Scripts/PlayerController.cs index aae68c4..bd619bf 100644 --- a/AVVR/Assets/_Scripts/PlayerController.cs +++ b/AVVR/Assets/_Scripts/PlayerController.cs @@ -1,90 +1,60 @@ using UnityEngine; -[RequireComponent(typeof(CharacterController))] -public class NonVRPlayerController : MonoBehaviour +public class PlayerController : MonoBehaviour { - [Header("Movement Settings")] + [Header("Movement")] public float moveSpeed = 5f; - public float sprintSpeed = 10f; public float jumpForce = 5f; public float gravity = -9.81f; - [Header("Look Settings")] + [Header("Look")] public float mouseSensitivity = 2f; - public float upperLookLimit = 80f; - public float lowerLookLimit = -80f; - + private CharacterController controller; private Camera playerCamera; - private Vector3 moveDirection; - private Vector3 velocity; private float verticalRotation = 0f; - - private bool isGrounded; - private bool isSprinting; + private Vector3 velocity; void Start() { controller = GetComponent<CharacterController>(); playerCamera = GetComponentInChildren<Camera>(); - - if (playerCamera == null) - { - Debug.LogError("NonVRPlayerController: No camera found as a child of the player object!"); - } - + + // Lock cursor Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; } void Update() { - HandleMovementInput(); - HandleMouseLook(); - ApplyMovement(); - } - - private void HandleMovementInput() - { - float moveHorizontal = Input.GetAxis("Horizontal"); - float moveVertical = Input.GetAxis("Vertical"); + // WASD Movement + float moveX = Input.GetAxis("Horizontal"); + float moveZ = Input.GetAxis("Vertical"); + Vector3 move = transform.right * moveX + transform.forward * moveZ; + controller.Move(move * moveSpeed * Time.deltaTime); - isSprinting = Input.GetKey(KeyCode.LeftShift); - float currentSpeed = isSprinting ? sprintSpeed : moveSpeed; - - moveDirection = transform.right * moveHorizontal + transform.forward * moveVertical; - moveDirection *= currentSpeed; - - // Jumping - if (Input.GetButtonDown("Jump") && isGrounded) - { - velocity.y = Mathf.Sqrt(jumpForce * -2f * gravity); - } - } - - private void HandleMouseLook() - { + // Mouse Look float mouseX = Input.GetAxis("Mouse X") * mouseSensitivity; float mouseY = Input.GetAxis("Mouse Y") * mouseSensitivity; verticalRotation -= mouseY; - verticalRotation = Mathf.Clamp(verticalRotation, lowerLookLimit, upperLookLimit); - + verticalRotation = Mathf.Clamp(verticalRotation, -90f, 90f); + playerCamera.transform.localRotation = Quaternion.Euler(verticalRotation, 0f, 0f); transform.Rotate(Vector3.up * mouseX); - } - private void ApplyMovement() - { - isGrounded = controller.isGrounded; + // Jump + if (Input.GetButtonDown("Jump") && controller.isGrounded) + { + velocity.y = Mathf.Sqrt(jumpForce * -2f * gravity); + } - if (isGrounded && velocity.y < 0) + // Gravity + if (controller.isGrounded && velocity.y < 0) { velocity.y = -2f; } - - controller.Move(moveDirection * Time.deltaTime); - + velocity.y += gravity * Time.deltaTime; controller.Move(velocity * Time.deltaTime); } diff --git a/AVVR/ProjectSettings/ProjectSettings.asset b/AVVR/ProjectSettings/ProjectSettings.asset index ccc7760..4475a10 100644 --- a/AVVR/ProjectSettings/ProjectSettings.asset +++ b/AVVR/ProjectSettings/ProjectSettings.asset @@ -925,7 +925,7 @@ PlayerSettings: hmiLogStartupTiming: 0 hmiCpuConfiguration: apiCompatibilityLevel: 6 - activeInputHandler: 1 + activeInputHandler: 2 windowsGamepadBackendHint: 0 cloudProjectId: framebufferDepthMemorylessMode: 0 -- GitLab