LookAt Matrix Вопрос - когда они эквивалентны? - PullRequest
0 голосов
/ 02 сентября 2011

Не могли бы вы подтвердить или опровергнуть следующие утверждения, которые я считаю верными?

1) Две матрицы LookAt

 glLookAt(eye, center1, up)

и

 glLookAt(eye, center2, up)

эквивалентны, если center1 - eye == k(center2 - eye) для некоторого положительного k.

2) Матрицы LookAt никогда не эквивалентны, если их вектор eye отличается.

1 Ответ

3 голосов
/ 02 сентября 2011

эквивалентны, если center1 - глаз == k (center2 - глаз) для некоторого положительного значения k.

Это правильно.Вектор направления вычисляется по центру глаза, а затем нормализуется, поэтому длина не имеет значения, если направление одно и то же.

Обратите внимание, что в результирующих матрицах могут быть очень небольшие численные различия из-заокругления.Для всех практических целей, однако, матрицы одинаковы.

...