Предыдущая Следующая
Матрица проекции - это более сложная матрица, которая создает проекцию трехмерного объекта на плоскость двумерного экрана монитора. С помощью этой матрицы определяются передняя и задняя области отсечения трехмерного пространства, что позволяет регулировать пространство отсечения невидимых на экране объектов, а заодно и снизить нагрузку процессора видеокарты. На рис. 16.4 изображены механизм проекции объекта в плоскости и отсечение пространства.
Рис. 16.4. Работа матрицы преобразования
262 Основы программирования трехмерной графики
Шейдеры 263
16.6. Свет
Понятия свет и освещенность в компьютерных играх идентичны понятиям окружающего нас с вами мира. В компьютерной графике применяются три типа освещения. Первый - это параллельный, или направленный, источник света. Этот тип освещения не имеет определенного источника света и светит отовсюду, но в определенном направлении. Второй тип освещения имеет название точечный. Этот тип освещения уже имеет источник света, но светит во всех направлениях. Пример: лампочка, люстра, торшер и т. д. Третий источник освещения носит название прожекторный. По названию этого типа освещения легко догадаться, что он собой представляет, а именно направленный конусообразный источник света (пример простого прожектора или фонарика).
Освещение или свет задается цветовой компонентой, или просто цветом в формате ARGB, где A - это альфа-канал для определения степени прозрачности цветов, R представляет красный цвет (red), G - это зеленый цвет (green), B - синий цвет (blue). Сумма всех цветов в итоге приводит вас к одному из оттенков того или иного цвета. Здесь все по аналогии со школьными уроками рисования, где все мы смешивали краски разных цветов и получали, как правило, одну большую черную кляксу. К слову, цвет можно использовать не только для освещения, но и для прямого закрашивания вершин полигонов цветом. В этом случае вы можете закрасить всю модель или ее отдельные части (помним, что модель состоит из полигонов) одним из цветов.
Для расчета правильности отображения освещения используются нормали. Нормаль - это единичный вектор, расположенный перпендикулярно от плоскости полигона или вершины (рис. 16.5). На базе расположения нормалей происходит расчет освещения объекта. Грубо говоря, те нормали, которые не попадают под источник света, дают понять механизму освещения, какие части объекта будут освещаться источником света, а какие - нет.
Нормаль Предыдущая Следующая
|