Предыдущая Следующая
Работа любой видеокарты по рисованию трехмерной графики на экране состоит в том, чтобы собрать из вершин полигоны и затем сформировать из этих полигонов конечную модель. Большое количество полигонов трехмерного объекта дает возможность создавать более детализированную модель. С другой стороны, большое количество полигонов одной модели может повлиять на скорость прорисовки графики на экране телевизора. На сегодняшний день множество отдельно взятых моделей с несколькими десятками тысяч полигонов будет по силам приставке Xbox 360.
15.4. Матрицы
Программирование трехмерной графики невозможно себе представить без использования матриц. Матрица - это двухмерный массив данных, заполненный определенными значениями. Матрицы позволяют легко и быстро производить любые манипуляции с вершинами объектов в пространстве. С помощью матриц можно связать несколько однородных операций над вершинами, что в результате позволяет выполнить колоссальные по объему математические вычисления за небольшой промежуток времени. Более того, матрицы можно использовать и в описании координатных систем для переноса, масштабирования, вращения и трансформации объектов в пространстве.
Размерность матрицы может быть любой, но в компьютерной графике типичной размерностью является матрица 4x4, где имеются четыре строки и четыре столбца.
Матрицы 267
Рис. 15.3. Полигоны модели
Если вам необходимо определить положение элемента внутри матрицы, то нужно сначала указать, в какой именно строке находится этот элемент, а затем указать, в каком столбце он располагается. В итоге получается, что искомый элемент матрицы с размерностью шхл находится в строке m столбца п.
15.4.1. Сложение и вычитание матриц
Все математические операции над матрицами основаны на знаниях, которые мы изучали в школе. Единственным условием в сложении и вычитании матриц является их одинаковая размерность. Чтобы сложить между собой две матрицы, необходимо просто сложить поэлементно обе матрицы между собой, а результат записать в отдельную матрицу.
268 Основы программирования трехмерной графики
Вычитание двух матриц происходит по той же схеме.
15.4.2. Умножение матриц
Умножение матриц бывает двух видов. Это скалярное произведение и матричное произведение. Скалярное произведение матрицы - это умножение матрицы на любое скалярное значение. В этом случае элементы матрицы поочередно перемножаются на это самое скалярное значение, а результат записывается в итоговую матрицу. При такой операции размерность матриц не имеет абсолютно никакого значения. Предыдущая Следующая
|