Способы создания фотореалистических изображений

Рассмотренные ранее алгоритмы позволяют строить проекции граней и ребер объектов и удалять скрытые линии. Но каким образом на изображении (Рис. 10.9) получаются плавные переходы цвета, тени, материалы тел, как учитываются источники освещения? Комплекс задач, связанных с визуализацией материалов при заданных условиях освещения, получил название рендеринга(англ. rendering). Более узко в КГ под рендерингом понимают получение фотореалистичного изображения объекта.

Для выполнения рендеринга, помимо собственно 3D сцены, необходимо задать условия освещения и оптические свойства всех задействованных в сцене материалов. Рассмотрим сначала свойства источников света. Мы видим тела либо в отраженном свете (Луна отражает свет Солнца), либо благодаря собственному свечению нагретого тела (Солнце светится само). Глаз человека привык к естественному источнику – Солнцу, температура поверхности которого примерно 6000оС. При этом Солнце имеет избыток лучей в желто-красной зоне спектра. Искусственные источники света обычно несколько искажают цветовосприятие. Например, лампы накаливания дают значительный избыток желтых лучей. Лампы дневного света более сбалансированы по спектральному составу, из-за чего их свет по сравнению с солнечным кажется холодным.

Световой луч, независимо от его источника, падая на поверхность, частично поглощается, частично отражается и частично пропускается. Если часть света проходит сквозь материал, он называется прозрачным. Для визуализации наиболее важен отраженный свет. Он делится на две составляющие: диффузно отраженный и зеркально отраженный. При диффузном отражениилучи отходят от поверхности хаотично во всех направлениях, а поверхность называется матовой. При зеркальном отражениилучи идут строго в заданном направлении в соответствии с законом "угол падения равен углу отражения" (Рис. 11.1).

а) диффузное отражение б) зеркальное отражение

Рис. 8.16 – Отражение от матовой (а) и зеркальной (б) поверхностей.

Свет, падающий на поверхность, может быть рассеянным (англ. ambient light) и направленным (англ. spotlight). Интенсивность рассеянного света одинакова во всех направлениях. Направленным является свет удаленного точечного источника. Например, свет Солнца на Луне при отсутствии атмосферы является направленным, на Земле же он рассеивается атмосферой во всех направлениях и в условиях облачности становится рассеянным.

Таким образом, наблюдатель сцены видит четыре вида света:

- рассеянный, освещающий всю сцену;

- диффузно отраженный то матовых поверхностей;

- зеркально отраженный от зеркальных поверхностей;

- пропущенный через прозрачные материалы.

От каждой точки поверхности в точку наблюдения приходит рассеянный свет одинаковой интенсивности. Интенсивность рассеянного света I в точке наблюдения равна:

, (10)

где - интенсивность источника рассеянного света;

- коэффициент отражения материала(0 для абсолютно черного тела и 1 для идеального зеркала).

Интенсивность диффузно отраженного света от точечного источника определяется по закону Ламберта:

, (11)

где - интенсивность точечного источника направленного света;

- коэффициент диффузного отражения материала(1 для матовой поверхности и 0 для идеального зеркала);

- угол между направлением на точечный источник света и нормалью к поверхности.

Зеркальные поверхности отражают разные количества света в разных направлениях, что вызывает образование бликов. Интенсивность зеркально отраженного света можно определить по закону Фонга:

, (12)

где - коэффициент зеркального отражения материала(0 для матовой поверхности и 1 для идеального зеркала);

- угол между направлением отраженного света и направлением к точке наблюдения;

n – коэффициент блеска. Чем выше n, тем больше блик на материале.

Интенсивность пропущенного света определяется по закону Бугера:

, (13)

где - интенсивность света на входе в прозрачный материал;

l – толщина материала;

m - коэффициент поглощения света данным материалом.

Непосредственно при рендеринге по формулам (10)-(13) для каждой точки поверхности рассчитываются интенсивности четырех видов света. При этом учитываются координаты и характеристики источников освещения. Для создания реалистичного изображения, как правило, нужно применить не менее трех источников света: один дает общую подсветку рассеянным освещением, а два других источника – направленные, обеспечивают светотень.

Рендеринг подразумевает плавную закраску отображаемых поверхностей, которые представлены в виде триангуляционной сетки(Рис. 11.2).

Рис. 8.17 – Представление поверхности в виде триангуляционной сетки.

Такая закраска выполняется одним из следующих основных способов: однотонно, путем интерполяции значений интенсивности и путем интерполяции нормалей.

При однотонной закраске (Рис. 11.3, а) для каждого треугольника рассчитывается величина отраженного от него света, которая считается постоянной для всего треугольника. Также считается, что угол отражения световых лучей постоянен в пределах треугольника. В результате получается "граненое" изображение, поскольку яркость отраженного света у каждого треугольника меняется скачком, резко.

Метод интерполяции значений интенсивности (Рис. 11.3, б) предложен Гуро и часто называется "рендеринг по Гуро" (Gouraud rendering). При этом методе рассчитываются интенсивности отраженного света в углах каждого треугольника, а интенсивности для внутренних точек треугольника находятся методом интерполяции (усреднения значений). Метод Гуро делает визуализацию более гладкой, хотя "граненость" полностью не устраняется.

Метод интерполяции нормалей (Рис. 11.3, в) или метод Фонга(Phong rendering) заключается на интерполяции нормалей к поверхности в пределах треугольника. Нормали в вершинах находятся точно, а нормали во всех остальных точках вычисляются методом интерполяции. При этом нормали плавно меняют направление при переходе от одного треугольника к другому, что позволяет полностью устранить "граненость", но за счет значительного объема вычислений.

а)однотонная закраска б)метод Гуро в)метод Фонга

Рис. 8.18 – Различные виды закраски поверхностей (AutoCAD 2004).

Многие объекты имеют не гладкую, а текстурную поверхность, отличающуюся наличием случайно расположенных цветовых разводов или впадин и выступов. Корка апельсина, мрамор, кожа, дерево – примеры текстурных поверхностей. Текстурные поверхности создаются либо путем случайного смещения нормалей, либо путем наложения на поверхность растровой картинки – текстуры(Рис. 11.4).

а) наложение случайного цветового шума "под мрамор" б) наложение фотографии-текстуры

Рис. 8.19 – Создание текстурных поверхностей (3D Studio Max).

9. тенденции построения современных графических систем: графическое ядро, приложения,
инструментарий для написания приложений

Как было сказано выше, одна из важнейших функций 3D САПР – визуализация проектируемого или анализируемого объекта. Для изображения трехмерных объектов на экране монитора требуется проведение серии процессов (так называемого конвейера) с последующей трансляцией результата в двумерный вид. Первоначально, объект представляется в виде набора точек, или координат, в трехмерном пространстве. Трехмерная система координат определяется тремя осями: горизонтальной, вертикальной и глубины. Объектом может быть дом, человек, машина, самолет или целый 3D мир и координаты определяют положение вершин (узловых точек), из которых состоит объект, в пространстве. Соединив вершины объекта линиями, мы получим каркасную модель, называемую так из-за того, что видимыми являются только края поверхностей трехмерного тела. Каркасная модель определяет области, составляющие поверхности объекта, которые могут быть заполнены цветом, текстурами и освещаться лучами света.

Рис. 9.1- Каркасная модель куба

Даже при таком упрощенном объяснении конвейера 3D графики становится ясно, как много требуется вычислений для прорисовки трехмерного объекта на двумерном экране. Можно представить, насколько увеличивается объем требуемых вычислений над системой координат, если объект движется.

Рис. 9.2 - Модель самолета с закрашенными поверхностями


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: