Как повернуть свой угол на чью-то позицию (в луа)? - PullRequest
0 голосов
/ 23 мая 2011

Допустим, у нас есть функция setAngle (x, y, z), которая отлично работает. Теперь у нас тоже есть положение о себе и о курице. Как мы можем использовать setAngle (), чтобы нацелить курицу? Это будет сделано в игре FPS? Я понятия не имею, как преобразовать позиции в угол ...>. <</p>

Ответы [ 2 ]

0 голосов
/ 23 мая 2011

Есть математика? Позволь себе быть в точке

A(x, y, z)

и курица в

B(x, y, z)

A является частью плоскости E; его точки, удовлетворяющие уравнению

a * x + b * y + c * z = d

Учитывая вашу игру, E возможно параллелен плоскости XY, поэтому у нас есть

E : c * z = d

Тогда угол, окруженный вектором AB и плоскостью XY, является арксинусом

c * ( B[z] - A[z] ) / ( mag(n) * mag(AB) )

где mag(n) - величина нормали поверхности E соотв. вектора AB.

Учитывая вашу функцию, это может оказаться ненужным, поскольку мне кажется, что вам уже нужно что-то настраивать.

0 голосов
/ 23 мая 2011

Это точка наклона линии между вами и курицей.Используйте aTan2, хотя, он будет работать лучше в отношении вертикальных направлений (Спасибо, LHF)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...