7.2. Снова о камере Это добавляет остроту зрения.

Вильям Шекспир

В главе 5 мы использовали камеру, которая осуществляет параллельные проекции. Ее отображаемый объем - это параллелепипед, ограниченный шестью стенками, включая ближнюю плоскость и дальнюю плоскость. Кроме этого, OpenGL поддерживает работу камеры, создающей перспективные виды трехмерных сцен. Во многих отношениях это похоже на камеру, использованную нами раньше, за исключением того, что ее отображаемый объем имеет другую форму.

На рис. 7.1 показан общий вид такой камеры. Она имеет глаз (eye), расположенный в некоторой точке пространства, а ее отображаемый объем (view volume) представляет собой часть четырехугольной пирамиды, вершина которой совпадает с глазом. Раствор (opening) этой пирамиды задается углом зрения (viewangle) 6 (см. рис. 7.1, б). Перпендикулярно к оси пирамиды определены две плоскости: ближняя плоскость (near plane) и дальняя плоскость (far plane). Там, где эти две плоскости пересекают пирамиду, они образуют прямоугольные окна. Эти окна имеют определенное форматное соотношение (aspect ratio), которое может задаваться программно. OpenGL отсекает все те части сцены, которые располагаются вне отображаемого объема. Точки, лежащие внутри отображаемого объема, проецируются на плоскость просмотра (viewplane) в соответствующую точку Р', как показано на рис. 7.1, е. (В дальнейшем мы увидим, что не имеет значения, какая плоскость используется в качестве плоскости просмотра, однако сейчас пусть она совпадает с ближней плоскостью.) При использовании перепек-

Трехмерный просмотр

тивной проекции точка Р' задается как точка пересечения прямой, соединяющей глаз с точкой Р, с плоскостью просмотра. (Сравните это с работой параллельной проекции.) Наконец, изображение, полученное в плоскости просмотра, преобразуется в порт просмотра, как показано на рис. 7.1, в, после чего оно становится видимым на устройстве отображения.

Камера для создания перспективных видов сцены

Рис. 7.1. Камера для создания перспективных видов сцены

7.2.1. Установка отображаемого объема


⇐ Предыдущая| |Следующая ⇒