Gente eu precisei mudar o personagen de lugar, para o jogo fazer sentido, ele está desse jeito:
e o script depois de eu mover fez w ir para direita, o s ir para a esquerda, o d ir para trás e o a ir para frente.
o script:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MovimentoPersonagem : MonoBehaviour
{
private CharacterController characterController;
[SerializeField] private float velocidade;
private Vector3 gravidade = new Vector3(0, -9.81f, 0);
private Animator animator;
void Start()
{
characterController = GetComponent<CharacterController>();
animator = GetComponent<Animator>();
}
void Update()
{
float movimentoHorizontal = Input.GetAxis("Horizontal");
float movimentoVertical = Input.GetAxis("Vertical");
Vector3 movimento = new Vector3(movimentoHorizontal, 0, movimentoVertical);
characterController.Move(movimento.normalized * Time.deltaTime * velocidade);
characterController.Move(gravidade * Time.deltaTime);
if (movimento != Vector3.zero)
{
Quaternion rotacaoAlvo = Quaternion.LookRotation(movimento);
transform.rotation = Quaternion.Slerp(transform.rotation, rotacaoAlvo, Time.deltaTime * 10f);
}
animator.SetBool("Andar", movimento != Vector3.zero);
}
}
tirando isso está tudo certo.