Системы координат графических библиотек Некоторые из систем координат уже упоминались ранее. Так, на картинке, применяемой в качестве текстуры, задана прямоугольная система координат ее начало находится в нижнем левом углу картинки, а оси направлены вверх и вправо. Положение объектов виртуального мира задано в мировой системе координат Коль других систем координат в процессе функционирования графической системы иллюстрируется рис. 21.5, на котором изображен вид сцены сверху, со стороны положительного направления оси ^.

Модели объектов могут быть созданы для использования в разных виртуальных мирах при помощи различных графических редакторов и сохранены на диске в известных графических форматах. Они импортируются с диска в состав сцены при старте графической системы. Поэтому с каждым объектом связана своя, объектная система координат. В ней заданы координаты вершин объекта при его хранении во внешней памяти. Положение объекта р в сцене характеризуется координатами (Х5р, У5р1 2^ начала объектной системы в мировой системе координат. Начало объектной системы (его называют точкой привязки объекта) закрепляет объект за конкретной точкой виртуального мира.

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

Объект может переводиться в мировую систему при загрузке сцены, но можно применять такое описание сцены, в котором после загрузки объект хранится в собственной, объектной системе, а его описание дополнительно содержит координаты точки привязки и углы поворота вокруг осей объектной системы. При этом переход к мировым координатам придется выполнять не один раз в процессе загрузки, а в каждом цикле рендеринга. Но последний вариант удобен при включении в состав сцены нескольких экземпляров объекта, различающихся точками привязки, а также для подвижных объектов.


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