Alguém pode me ajudar por gentileza
toda vez que tento movimentar meu personagem para frente ou para trás ele vai apenas em direções diagonais, já vi o video 2x revisei o código, mas não consigo resolver. Se alguém puder me ajudar eu agradeço.
abaixo o código
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);
// Start is called before the first frame update
void Start()
{
characterController = GetComponent<CharacterController>();
}
// Update is called once per frame
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);
}
}
}