
- •1. Зарождение компьютерной графики.
- •2. 1960-е годы. Становление КГ.
- •1.2. Области применения компьютерной графики
- •1.4. Устройства вывода компьютерной графики
- •Контрольные вопросы и упражнения
- •2. АРХИТЕКТУРА ГРАФИЧЕСКИХ РАБОЧИХ СТАНЦИЙ
- •2.1. Рабочие станции
- •2.2. Графический ускоритель
- •2.4. Технология 3D-графики
- •Контрольные вопросы и упражнения
- •3.1. Общие положения методов представления видеоинформации
- •3.2. Алгоритмы архивации без потерь
- •3.3. Алгоритмы архивации с потерями
- •Контрольные вопросы и упражнения
- •4. ГЕОМЕТРИЧЕСКОЕ МОДЕЛИРОВАНИЕ
- •4.1. Представление моделей
- •4.2. Способы представления объектов
- •Представление поверхностных моделей
- •4.4. Алгоритмы построения геометрических моделей тел
- •4.4.1. Построение правильных многогранников
- •4.4.2. Построение икосаэдра
- •4.4.3. Построение додекаэдра и сферы
- •Аффинные преобразования на плоскости
- •Однородные координаты точки
- •Аффинные преобразования в пространстве
- •Изометрическая проекция
- •Пример:
- •Перспективная проекция
- •5.4. Этапы создания графического объекта
- •Преобразования положения объекта
- •5.5. Работа с матрицами и векторами
- •Контрольные вопросы и упражнения
- •6.1.2. Простой метод устранения ступенчатости
- •6.1.3. Алгоритм Ву для растеризации отрезка с антиалиасингом
- •6.3. Закраска области, заданной цветом границы
- •Контрольные вопросы и упражнения
- •7. ЗАДАЧА ОТСЕЧЕНИЯ
- •7.1. Отсечение отрезков
- •7.1.4. Двумерный алгоритм Кируса-Бека
- •7.1.5. Проверка выпуклости и определение нормалей
- •7.2. Разбиение невыпуклых многоугольников
- •Алгоритм Сазерленда-Ходгмана
- •Контрольные вопросы и упражнения
- •8.4. Задача вычисления точек пересечений
- •8.4.1. Пересечение луча со сферой
- •8.4.3. Пересечение луча с многоугольником
- •8.4.4. Пересечение луча с треугольником
- •Решение будет состоять из следующих шагов:
- •Если мы вычислим единичные векторы Pa1, Pa2, Pa3
- •тогда углы будут равны
- •8.4.5. Пересечение с прямоугольным параллелепипедом
- •Контрольные вопросы и упражнения
- •9. АЛГОРИТМЫ УДАЛЕНИЯ СКРЫТЫХ ЛИНИЙ И ПОВЕРХНОСТЕЙ
- •9.1. Классификация методов удаления невидимых частей
- •9.2.1. Отсечение нелицевых граней
- •9.2.2. Ограничивающие тела (Bounding Volumes)
- •9.2.4. Иерархические структуры (Hierarchies)
- •9.3. Алгоритмы удаления линий
- •9.4.1. Алгоритм удаления поверхностей с Z-буфером
- •Построчный z-буфер
- •9.4.2. Алгоритм разбиения области Варнока
- •9.4.3. Построчный алгоритм Уоткинса
- •9.4.4. Алгоритм трассировки лучей
- •9.4.5. Алгоритмы упорядочения
- •9.4.6. Метод сортировки по глубине. Алгоритм художника
- •9.4.7. Метод двоичного разбиения пространства
- •9.5. Пример реализации алгоритма удаления невидимых граней
- •Контрольные вопросы и упражнения
- •10. ПОСТРОЕНИЕ РЕАЛИСТИЧЕСКИХ ИЗОБРАЖЕНИЙ
- •10.1. Модели освещения
- •10.1.1. Механизм диффузного и зеркального отражения света
- •10.1.2. Модели закраски
- •10.1.3. Прозрачность
- •10.1.4. Тени
- •10.2. Фактура (текстурирование)
- •10.4. Трассировка лучей
- •10.5. Излучательность
- •Контрольные вопросы и упражнения
- •11. ИНТЕРАКТИВНЫЕ СИСТЕМЫ. СОВРЕМЕННЫЕ СТАНДАРТЫ 3D-ГРАФИКИ
- •Аппаратно-независимые графические протоколы
- •Контрольные вопросы и упражнения
- •ЗАКЛЮЧЕНИЕ
- •СПИСОК ЛИТЕРАТУРЫ
- •ИСТОЧНИКИ ИНТЕРНЕТ
209
10. ПОСТРОЕНИЕ РЕАЛИСТИЧЕСКИХ ИЗОБРАЖЕНИЙ
Реалистические изображения нужны: в конструировании, в архитектуре, в биологии и медицине, в компьютерном моделировании, в масс-медиа, в тренажерах, играх.
Основные направления:
-синтез реалистичных изображений;
-реалистическое оживление синтезированных объектов.
Сточки зрения практических приложений в науке и промышленности наиболее важно первое направление. Ключевая проблема – реалистическое представление освещенности:
- модели освещения, прозрачность, тени, фактура; - глобальная модель освещения с трассировкой лучей; - метод излучательности.
10.1.Модели освещения
Сточки зрения физики поверхность материального тела может излучать световую энергию, отражать свет, падающий от внешнего источника. Цвет точки материального объекта определяется множеством элементарных актов взаимодействий со светом, падающим на объект как непосредственно от источников света, так и от других отражающих поверхностей. Последовательность этих элементарных актов можно представить в виде рекурсивного процесса, который математически описывается интегральными уравнениями, называемыми
глобальными уравнениями заполнения (rendering equation). В об-
щем случае они не поддаются решению, даже численными методами. Существует множество подходов, основанных на разных вариантах их аппроксимации (например, метод обратной трассировки лучей или метод излучательности), каждый из которых позволяет найти решение уравнений для определенного типа объектов. Но эти подходы требуют значительных временных затрат, что не позволяет их использовать в реальном времени даже для сцен средней сложности. Поэтому основное внимание следует уделить более простым локальным моделям освещения, основанным на модели отражения Фонга (Phong), которая на сегодняшний день представляет вполне приемлемый компромисс между физической корректностью и объемом необходимых вычислений.
Эта модель анализирует световые лучи, испускаемые светоизлучающими поверхностями – источниками света (light sources), – и их

210
взаимодействие с отражающими поверхностями объектов сцены. В отличие от алгоритмов трассировки лучей анализируется только один акт отражения от отдельной поверхности, а не рекурсивный процесс.
Проблема разделяется на две независимые части:
-представление источников света;
-формирование модели процесса отражения, адекватно пере-
дающей взаимодействие материала поверхностей объектов сцены и света.
Можно выделить три основных типа взаимодействия света и материала поверхности:
1.Зеркальное отражение. Поверхности выглядят блестящими, поскольку большая часть падающей на них световой энергии отражается или рассеивается в узком диапазоне углов, близких к углу отражения. Зеркало – это идеально отражающая поверхность. Хотя небольшая часть энергии и поглощается, остальной свет отражается под одним углом, равным углу падения.
2.Диффузное отражение. При диффузном отражении падающий свет рассеивается в разных направлениях. Такой тип взаимодействия характерен для равномерно окрашенной поверхности.
3.Преломление. Этот процесс рефракции характерен для стекла и воды. Как правило, при этом отражается часть падающе-
го света.
Свет может исходить от поверхности в двух случаях: объект яв-
ляется источником света или отражает |
y |
|
|
|||
свет, падающий на него извне. Как прави- |
|
|
||||
ло, источниками |
считаются |
излучающие |
|
θ |
l |
|
объекты. |
|
|
|
|||
|
|
|
|
φ |
||
Рассматривая |
источник |
света, такой |
|
|
||
P |
|
x |
|
|||
как показан на рис. 10.1, надо учитывать, |
|
|||||
z |
|
|
||||
что этот объект имеет определенную по- |
|
|
||||
верхность. Каждая точка этой поверхности |
Рис. 10.1. Источник света |
|||||
(x, y, z) может испускать световой луч, ко- |
торый характеризуется направлением эмиссии (θ, ϕ) и распределением световой энергии по длинам волн λ. Таким образом, элементарный источник света в общем случае характеризуется функцией излучения
211
(illumination function), f(x, y, z, θ, ϕ, λ), зависящей от шести параметров.
Рассматривая освещаемую таким источником поверхность, можно получить освещенность каждой ее точки, интегрируя функцию излучения по поверхности источника света.
Создать адекватную модель источника довольно сложно, поскольку в ней нужно учитывать, что от длины волны зависит не только интенсивность, но и направление излучения. Т.к. для получения цветовой гаммы достаточно использовать три основные цветовые составляющие (красную, синюю, зеленую), будем рассматривать любой источник, как три независимых источника первичных цветов и соответственно описывать его трехкомпонентной функцией излучения:
I =[IR IG IB ]T .
Идеальный точечный источник света (point source) излучает свет одинаково во всех направлениях.
10.1.1. Механизм диффузного и зеркального отражения света
Диффузное отражение света точечного источника от идеального рассеивателя определяется по закону Ламберта, согласно которому падающий свет рассеивается во все стороны с одинаковой интенсивностью. В этом случае освещенность точки пропорциональна доле ее площади, видимой от источника:
Ir = I p Kd cos(ϕ) ,
где Ir – интенсивность отраженного света, Ip – интенсивность точечного источника, 0 ≤ Kd ≤ 1 – коэффициент диффузного отражения, зависящий от материала поверхности и длины волны, 0 ≤ ϕ ≤ π/2 – угол между направлением света и нормалью к поверхности.
В реальных сценах, кроме света от точечных источников, присутствует и рассеянный свет, который упрощенно учитывается с помощью коэффициента рассеяния:
I = Ir Kr + I p Kd cos(ϕ),
где Ir – интенсивность рассеянного света, 0 ≤ Kr ≤ 1 – коэффициент диффузного отражения рассеянного света.
Субъективно достаточно реалистичный учет расстояния от центра проекции до объекта обеспечивается линейным затуханием:
I = Ir Kr |
+ |
I p Kd cos(ϕ) |
, |
|
d + K |
||||
|
|
|

212
где d – расстояние от центра проекции до объекта, а K – произвольная константа.
При параллельной проекции, когда точка наблюдения находится в бесконечности, учет расстояния обеспечивается тем, что объект, ближайший к точке наблюдения, освещается полностью, далее расположенные – с уменьшенной освещенностью, и в качестве d берется расстояние от объекта, ближайшего к наблюдателю.
Свет, отраженный от идеального зеркала, виден, только если угол между направлениями наблюдения и отражения равен нулю. Для неидеальных отражающих поверхностей используется модель Фонга:
IS = I p W (λ,ϕ) cosn (α),
где W (λ,ϕ) – кривая отражения, зависящая от длины волны λ света источника и угла падения ϕ; -π/1≤α≤π/2 – угол между направлениями наблюдения и отражения; 1≤n≤200 – показатель степени, определяющий убывание интенсивности при изменении угла.
Часто W (λ,ϕ) заменяется константой Ks, такой, чтобы получен-
ная картина была субъективно приемлема. Суммарная модель освещения имеет вид:
I = Ir Kr + d I+p K (Kd cos(ϕ) +W (λ,ϕ) cosn (α)) .
При использовании вместо W (λ,ϕ) константы Ks и нормирован-
ных векторов направлений падения L, нормали N, отражения R и наблюдения V модель освещения для одного источника принимает вид:
I = Ir Kr + d I+p K (Kd L N + KS (R V )n ) .
Если источник света находится в бесконечности, то для данного плоского многоугольника L·N равно константе, а R·V меняется в пределах многоугольника. Для поверхностей, представленных, например, в виде бикубических фрагментов, каждое произведение меняется в пределах фрагмента. Так как эти вычисления требуется производить для каждого пикселя строки, то вычислительные затраты могут быть очень велики. Фонг предложил алгоритм пошагового вычисления по рассмотренной модели, существенно снижающий затраты.
Кроме эмпирической модели освещенности Фонга, используются модели, представляющие отражающую поверхность в виде плоских микроскопических граней. Ориентации нормалей к граням отно-