1
resposta

Como eu faço meu personagem andar pra frente SOZINHO na Unity?

Como eu faço meu personagem andar pra frente sozinho ?

Eu estou fazendo um jogo no estilo RUN (tentando), mas não sei como fazer pro meu carro andar pra frente sozinho, pq o estilo do jogo vai ser tipo vc desviar de objetos pela direita, esquerda e pa, mas credo, não consigo nem fazer o negócio andar sozinho kkk. Não quero q o jogador acelere ou freie, mas sim que só va pra frente e desvie não controlando a frenagem ou aceleração. Ah e eu tentei usar o Character Controller, mas não deu certo não, na real até deu, mas o collider ficou todo errado e não deu pra arrumar, já que o collider é em formato de capsule e eu precisava do formato box, ou tem como mudar ? Enfim alguem me ajuda ?

1 resposta

Fala Davyd, tudo bem?

Vamos lá, considerando que você está falando de um jogo 3D, e a direção em frente será o eixo z, primeiramente você deverá ter um chão com colisor, para o seu carro não cair, como deve saber, e claro, seu carro deverá ter colisor e rigidbody. O script ficará mais ou menos assim:

CharacterController.cs

public class CharacterController : MonoBehaviour
{
        [SerializeField] float forwardSpeed;
        [SerializeField] float movementSpeed;

        Rigidbody rb;

        void Start()
        {
                rb = GetComponent<Rigidbody>();
        }

        void FixedUpdate()
        {
                // Moverá o carro automaticamente no eixo z, use o forwardSpeed para configurar esta velocidade.
                rb.AddForce(Vector3.forward * Time.fixedDeltaTime * forwardSpeed);

                // Captura os inputs de movimento na vertical, ou seja, 'A' e 'D' ou as setas da esquerda e direita.
                // Esses inputs variam de -1 a 1.
                float inputX = Input.GetAxisRaw("Vertical");
                Vector3 movement = new Vector3(inputX, 0, 0);
                rb.AddForce(movement * Time.fixedDeltaTime * movementSpeed);
        }
}

Esse não é o melhor código possível, mas deve funcionar. Eu to em um pc que não tem Unity, então não consegui testar, e tive que fazer na correria. Então qualquer problema, pode perguntar que assim que eu conseguir respondo.

ps: Você pode remover o capsule collider e adicionar o box collider sem problemas, só selecionar o carro e ir no Inspector e remover ou adicionar estes componentes.