Moves the character with speed
.
Velocity along the y-axis is ignored. Speed is in units/s. Gravity is automatically applied. Returns true if the character is grounded. It is recommended that you make only one call to Move or SimpleMove per frame.
using UnityEngine; [RequireComponent(typeof(CharacterController))] public class CharacterMover : MonoBehaviour { private float speed = 3.0f; private float rotationSpeed = 90.0f; // degrees per second private CharacterController characterController; void Start() { characterController = GetComponent<CharacterController>(); } void Update() { float horizontalInput = Input.GetAxis("Horizontal"); float verticalInput = Input.GetAxis("Vertical"); // Rotate character transform.Rotate(Vector3.up, horizontalInput * rotationSpeed * Time.deltaTime); // Move character Vector3 moveDirection = transform.forward * verticalInput * speed; characterController.SimpleMove(moveDirection); } }