Eu tenho um personagem que caminha para pontos aleatórios no meu quarto no Unity. O problema é que ele sempre enfrenta uma direção. Quero escrever em C # um trecho de código que obterá a direção que o personagem está enfrentando no momento e a posição do alvo e, em seguida, calcula o ângulo entre eles para transformar esse caractere em quantidade. Eu tentei a LookAt
função, mas isso faz o personagem andar em forma de arco em direção ao alvo, que parece muito antinatural, pois constantemente olha para o alvo.
9
Respostas:
A função LookAt faz isso por você. Você pode usá-lo de forma inadequada ou algo está errado com sua direção, se estiver tendo problemas com isso. Você pode tentar dessa maneira também:
Agora você pode encaixar nessa rotação ou fazê-lo lentamente ao longo do tempo. (devagar, com o tempo, significa que todo esse código precisa entrar na função de atualização)
Para 2D, outro método alternativo seria Atan2 :
fonte