Предыдущая Следующая
Смысловая нагрузка оси Ъ заключается в том, чтобы на двухмерной плоскости экрана правильно представить трехмерный объект, или, как часто говорят,
264 Основы программирования трехмерной графики
модель. Ось Z позволяет организовать глубину в двухмерном пространстве. Для начала это дает нам возможность отдалять или приближать объекты по этой оси. В более сложных операциях ось Z принимает участие в трансформации и масштабировании объектов, в различных видовых и мировых преобразованиях, вычислении перспективы и многом другом, о чем мы, несомненно, поговорим в этой главе.
Сейчас посмотрите на рис. 15.1, где изображена трехмерная система координат. В DirectX и OpenGL имеются две различные ориентации трехмерных координат. Это так называемая правосторонняя система координат и левосторонняя система координат. В DirectX ранее использовалась только левосторонняя система, а в OpenGL основной была правосторонняя система координат. В XNA Framework для представления трехмерного пространства применяется исключительно правосторонняя система координат. В чем разница между этими двумя ориента-циями?
Рис. 15.1. Трехмерная система координат
Разница небольшая, но она существенна и может повлиять на неправильное определение точки вывода объекта в пространстве. В правосторонней системе координат положительная ось Ъ идет в направлении прямо к вам. То есть если вы сейчас смотрите на страницу этой книги, то положительная часть оси Ъ выходит прямо со страницы книги и направляется в вашу сторону. В свою очередь, отрицательная часть плоскости оси Ъ удаляется от вас, и все то, что находится за книгой, - это уже есть отрицательная часть оси Ъ. На рис. 15.2 представлена правосторонняя система координат.
В левосторонней системе координат все наоборот. Положительная часть оси Ъ удаляется от вас, тогда как отрицательная часть оси Ъ направлена в вашу сторону. Поэтому если вы перепутаете эти две системы координат между собой и дадите объекту неправильные координаты по оси Ъ, то можете этот объект просто не увидеть на экране.
Например, вы указываете для вывода объекта по оси Ъ координату со значением минус 100 пикселей. В этом случае в правосторонней системе координат (на-
Точки и вершины 265
Рис. 15.2. Правосторонняя система координат
шей основной системе координат) объект будет располагаться как бы внутри телевизора и будет удален от поверхности экрана в его глубь на 100 пикселей. Если вы перепутаете значения и укажите положительные 100 пикселей, то объекта на экране вы не увидите, поскольку он будет находиться где-то между поверхностью экрана и вашими глазами, то есть вне зоны видимости. Предыдущая Следующая
|