Conteúdo do Curso
Jogo de Luta no Unity
Jogo de Luta no Unity
Mova Seu Jogador
FixedUpdate e Update
Update()
O método Update()
, chamado uma vez por quadro, lida com atualizações regulares como entrada do jogador e interação do usuário. Sua frequência de execução varia com a taxa de quadros, levando a potenciais inconsistências entre dispositivos.
FixedUpdate()
O método FixedUpdate()
, chamado em intervalos fixos, é ideal para atualizações relacionadas à física, proporcionando um manuseio confiável e previsível de forças, colisões e movimento.
Use Update()
para atualizações regulares que não envolvem física, como verificar a entrada do usuário ou atualizar animações. Use FixedUpdate()
para atualizações relacionadas à física, como mover objetos com Rigidbody ou lidar com colisões, para garantir um comportamento mais suave e confiável.
Código de Movimento
O trecho de código envolve várias verificações e atribuições para controlar o movimento de um personagem de jogo. Ele começa verificando se a variável de movimento horizontal x
não é zero e, em seguida, cria uma variável Vector2
para armazenar a velocidade atual do componente Rigidbody. Também verifica se a animação atual não é "attack" para determinar se o personagem está em um estado de ataque. Se não estiver atacando, define a velocidade horizontal com base na entrada, tempo decorrido e velocidade; caso contrário, para o movimento horizontal. Finalmente, atualiza a velocidade do Rigidbody com os novos valores.
Obrigado pelo seu feedback!