список индексов вершин.

В упражнениях в конце следующего раздела дается более подробное описание необходимых структур данных для таких типов сеток.

8.5.2. Визуализация текстуры

Визуализация текстуры на грани F напоминает закраску Гуро: она осуществляется пиксел за пикселом по всей грани. Для каждого пиксела нужно определить соответствующие текстурные координаты (s, г), получить значение текстуры и придать пикселу нужный цвет, заданный этой текстурой. Мы увидим, что нахождение координат (s, г) следует производить очень аккуратно.

На рис. 8.37 показана камера, делающая снимок грани Fe наклеенной на нее текстурой, а также сам процесс визуализации. Строка развертки у заполняется от точки xleh до точки х^ы. Для каждого значения х вдоль строки развертки мы должны правильно вычислить положение на грани (на рисунке оно обозначено Р(х,у)) и уже из него получить нужные текстурные координаты (s*, г*).

Визуализация грани, сфотографированной камерой

Рис. 8.37. Визуализация грани, сфотографированной камерой Если мы определили отображение «текстура-объект», то нам известны текстурные координаты для каждой вершины области Б, как показано на рис. 8.38. В таком случае естественно вычислить координаты (5|сЛ, £|е(1) и (5г|(,Ь1, гг|(,Ь[) для каждой строки развертки быстрым инкрементным методом (методом приращений), а затем, двигаясь вдоль строки развертки, интерполировать между этими значениями. Однако нам следует быть внимательными"images/tmp8E4A-559.png" alt="Инкрементное вычисление текстурных координат">

Рис. 8.38. Инкрементное вычисление текстурных координат

Рисунок 8.39 иллюстрирует эту задачу. На рис. 8.39, а показана грань р, рассматриваемая из такой точки, что ее левое ребро находится ближе к наблюдателю, чем правое. На рис. 8.39, б показана проекция этой грани Р на экран. Отметим для строки развертки г/ = 170 равноотстоящие точки на проекции Р, подразумевая последовательные пикселы на грани. Соответствующее расположение этих отметок на текущей грани показано на рис. 8.39, а. Видно, что на дальнем конце грани р эти отметки располагаются ближе друг к другу, что является следствием обычного перспективного укорачивания.


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