3
respostas

Erro na colisão

Estou na parte de por física no cenário e no player, fiz as coisas de acordo com a instrução do professor, mas, por algum motivo, meu personagem ainda atravessa a colisão do cenário e a câmera continua tremendo, o que foi algo comentado pelo professor em vídeo.

Eu estou usando a versão 2021.3.18f1 Personal, aparentemente. Segue abaixo meu código do personagem:

using System.Collections; using System.Collections.Generic; using UnityEngine;

public class movimentoPlayer : MonoBehaviour {

public float velocidade;
Vector3 victor;

void Update(){ //roda a cada frame do jogo

    float eixoX = Input.GetAxis("Horizontal");
    float eixoZ = Input.GetAxis("Vertical");

    victor = new Vector3(eixoX, 0, eixoZ);

    //transform.Translate(victor * Time.deltaTime); diz pra andar 1 grid por sec. Delta time tem a ver com o run time da unity



    if(victor != Vector3.zero) //gatilhos pra começar ou parar animações de correr e parado
    {
        GetComponent<Animator>().SetBool("Correndo", true);
    }
    else
    {
        GetComponent<Animator>().SetBool("Correndo", false);
    }
}

private void FixedUpdate() //roda em tempo fixo (0,02 sec)
{
    GetComponent<Rigidbody>().MovePosition(GetComponent<Rigidbody>().position + (victor * velocidade * Time.deltaTime));
}

}

O player está com uma colisão de cápsula e com o Rigdbody travado na posição Y e a rotação nos eixos X, Y e Z. O Cenário está com um Box Colider nas laterais, que é onde eu acabo por entrar. Desde já, obrigado.

3 respostas

Oi, Davi, tudo bem?

Dá uma olhada nesse tópico aqui tem várias sugestões do que melhorar. Mas não se preocupa com esses detalhes tanto agora não, foca mais no desenrolar do jogo, a medida que a gente avançar várias coisas vão mudar.

Ah, sim. Acho que eu me apressei muito então kkkk. Obrigado, professor.

Vai de cada um mas eu acho mais produtivo evoluir o jogo rápido e depois ir voltando pra fazer as modificações finas, assim acaba que você aprende várias coisas e melhorias que pode aplicar ao invés de gastar esse tempo no inicio.

Mas é a minha percepção, depois você me conta o que achou :)

Bons estudos!