2016-03-17 8 views
0

Я прочитал документацию, и он говорит, что он создает матрицу орфографической проекции. Однако, как выглядит матрица, используемая для расчетов?Что делает ортоМ() делать под капотом?

ввода I значения в методе:

0, 105.0, 495.0, 190.0, 410.0, 0, 1 

и выводит:

0.0051282053, 0.0, 0.0, 0.0, 
0.0, 0.009090909, 0.0, 0.0, 
0.0, 0.0, -2.0, 0.0, 
-1.5384616, -2.7272727, -1.0, 1.0 

Что бы результирующая матрица выглядеть при рисовании?

ответ

0

orthoM наследует свой API от glOrtho, который документирован на соответствующей странице руководства; на основе быстрого Googling, Microsoft's reproduction, казалось, сохранил правильное форматирование.

Итак:

2/(right - left)  0       0      tx 
0       2/(top - bottom)  0      ty 
0       0       2/(far - near)  tz 
0       0       0      1 

... где tx = - (right + left)/(right - left), ty = - (top + bottom)/(top - bottom) и tz = - (far + near)/(far - near).

Значение, которое вы напечатали, состоит в том, что матрица транспонирована, поскольку OpenGL является столбцом.

 Смежные вопросы

  • Нет связанных вопросов^_^