Формула для матрицы ортогональной проекции? - PullRequest
8 голосов
/ 27 марта 2009

Я немного осмотрелся и, похоже, не смог найти именно то, что искал. Я нашел "канонические формулы", но как лучше всего их использовать? Нужно ли масштабировать каждое вершина вниз? Или есть лучший способ?

Формула действительно помогла бы мне, но я также ищу объяснение о ближних и дальних плоскостях z относительно позиции зрителя

Ответы [ 2 ]

9 голосов
/ 12 мая 2009

Вот разумный источник, который выводит ортогональную матрицу проекта :

Рассмотрим несколько моментов: во-первых, в глаза пространство, ваша камера расположена в происхождение и глядя прямо вниз ось Z. А во-вторых, вы обычно хотите расширить свое поле зрения так же далеко налево, как и до право, и в равной степени намного выше Ось Z, как показано ниже. Если это так, ось Z проходит непосредственно через центр вашего объема просмотра, и поэтому вы иметь r = –l и t = –b. В других слова, вы можете забыть о г, л, т, и вообще, и просто определить ваш объем просмотра с точки зрения ширины ш, а высота ч вместе с вашим другие плоскости отсечения f и n. если ты сделать эти замены в матрица ортографической проекции выше, вы получаете это довольно упрощенно версия:

Все вышеперечисленное дает вам матрицу, которая выглядит следующим образом (добавьте вращение и перевод в зависимости от ситуации, если хотите, чтобы получающаяся матрица преобразования обрабатывала произвольное положение и ориентацию камеры).

A LaTeX rendering of the orthographic projection matrix
(источник: codeguru.com )

...