Предыдущая Следующая
Работа любой видеокарты по рисованию трехмерной графики на экране монитора состоит в том, чтобы собрать из вершин полигоны и затем сформировать из этих полигонов конечную модель. Большое количество полигонов трехмерного объекта дает возможность создавать более детализированную модель. С другой стороны, большое количество полигонов одной модели может повлиять на скорость прорисовки графики на экране монитора. На сегодняшний день модель
даже с несколькими десятками тысяч полигонов будет по силам большинству современных видеоадаптеров.
16.4. Матрицы
Программирование трехмерной графики невозможно себе представить без использования матриц. Матрица - это двухмерный массив данных, заполненный определенными значениями. Матрицы позволяют легко и быстро производить любые манипуляции с вершинами объектов в пространстве. С помощью матриц можно связать несколько однородных операций над вершинами, что в результате позволяет выполнить колоссальные по объему математические вычисления за небольшой промежуток времени. Более того, матрицы можно использовать и в описании координатных систем для переноса, масштабирования, вращения и трансформации объектов в пространстве.
Размерность матрицы может быть любой, но в компьютерной графике типичной размерностью является матрица 4 х 4, где имеются четыре строки и четыре столбца.
Если вам необходимо определить положение элемента внутри матрицы, то нужно сначала указать, в какой именно строке находится этот элемент, а затем указать, в каком столбце он располагается. В итоге получается, что искомый элемент матрицы с размерностью m х п находится в строке m столбца п.
16.4.1. Сложение и вычитание матриц
Все математические операции над матрицами основаны на знаниях, которые мы изучали в школе. Единственным условием в сложениях и вычитаниях матриц является их одинаковая размерность. Чтобы сложить между собой две матрицы, необходимо просто сложить поэлементно обе матрицы между собой, а результат записать в отдельную матрицу:
Вычитание двух матриц происходит по той же схеме:
Рис. 16.3. Полигоны модели
258 Основы программирования трехмерной графики
Матричные преобразования 259
16.4.2. Умножение матриц
Умножение матриц бывает двух видов. Это скалярное произведение и матричное произведение. Скалярное произведение матрицы - это умножение матрицы на любое скалярное значение. В этом случае элементы матрицы поочередно перемножаются на это самое скалярное значение, а результат записывается в итоговую матрицу. При такой операции размерность матриц не имеет абсолютно никакого значения. Предыдущая Следующая
|