
Брундасов. Компьютерная графика. Лекции / lesson06
.pdf
Матрицы преобразований
void glTranslated(GLdouble x,GLdouble y,GLdouble z);
void glScaled(GLdouble x,GLdouble y,GLdouble z);
void glRotated(GLdouble angle,GLdouble ax,GLdouble ay,GLdouble az);
void gluPerspective(GLdouble fov, GLdouble aspect, GLdouble znear, GLdouble zfar);

Видовое преобразование
Настройка виртуальной камеры
eye – координаты наблюдателя
aim – координаты “цели”
up – направление вверх

Модельно-видовое преобразование

Проективное преобразование
•glMatrixModel(GL_PROJECTION);
•glFrustum(...) и gluPerspective(…)
•glOrtho(...) и glOrtho2D(...)

Как работает glOrtho
Вызов glOrtho(left, right, bottom, top, near, far) формирует матрицу:

Как работает gluPerspective

Итоговая последовательность преобразований
Комбинированные преобразования
•M =Mproj * Mview * Mmodel
•Pproj = M * P
•Т.е. можно посчитать матрицу M и применить ее ко всем точкам объекта
Примечание: как правило Mproj применяется отдельно, т.к. в видовом пространстве производится расчет освещения и других атрибутов вершин