CharacterController
CharacterController Ă€r en komponent för att hantera spelkaraktĂ€rer i 3D-spel. Med en CharacterController behöver karaktĂ€ren ingen RigidBody eller Collider â istĂ€llet sköter CharacterControllern kollisioner med hjĂ€lp av vad som i princip Ă€r en Capsule Collider.
CharacterControllers har ingen automatisk gravitation och pÄverkas normalt inte heller av andra fysik-krafter.
Move()
Flytta objektet, ungefÀr som transform.Translate men arbetar normalt sett i den globala rymden, dvs förflyttningen Àr inte relativt objektets rotation.
Vector3 movement = inputVector.x * movementSpeed * transform.right
+ inputVector.y * movementSpeed * transform.forward;
GetComponent<CharacterController>().Move(movement * Time.deltaTime);
isGrounded
Kolla ifall karaktÀren stÄr pÄ marken.
if (characterController.isGrounded)
{
verticalVelocity = -1;
if (jumpPressed)
{
verticalVelocity = jumpForce;
}
}
velocity
En Vector3 som Ă€r den hastighet karaktĂ€ren har â eller snarare, hade föregĂ„ende frame. Kan inte Ă€ndras pĂ„; Ă€r bara ett passivt utrĂ€knat vĂ€rde.
if (characterController.velocity.y > 0)
{
// Hoppar
}
else if (characterController.isGrounded)
{
// StÄr pÄ marken
}
else
{
// Ramlar nedÄt
}
Last updated
Was this helpful?