Освещение компьютерной графики

редактировать
Моделирование света в компьютерной графике

Компьютерная графика s lighting - это набор методов, используемых для имитации света в сценах компьютерной графики. Хотя методы освещения предлагают гибкость в отношении уровня детализации и доступных функций, они также работают на разных уровнях вычислительных требований и сложности. Художники-графики могут выбирать из множества источников света, моделей, методов затенения и эффектов в соответствии с потребностями каждого приложения.

Содержание
  • 1 Источники света
    • 1.1 Точечный
    • 1.2 Направленный
    • 1.3 Прожектор
    • 1.4 Окружающий
  • 2 Взаимодействие с освещением
    • 2.1 Диффузное
    • 2.2 Окружающее
    • 2.3 Зеркальное отражение
  • 3 Модели освещения
    • 3.1 Объектно-ориентированное освещение
      • 3.1.1 Модель освещения Фонга
      • 3.1.2 Модель освещения Блинна-Фонга
    • 3.2 Глобальное освещение
      • 3.2.1 Трассировка лучей
      • 3.2.2 Сияние
      • 3.2.3 Отображение фотонов
  • 4 Полигональное затенение
    • 4.1 Плоское затенение
    • 4.2 Затенение по Гуро
    • 4.3 Затенение по Фонгу
  • 5 Световые эффекты
    • 5.1 Каустика
    • 5.2 Отображение отражений
    • 5.3 Системы частиц
  • 6 См. Также
  • 7 Ссылки
Источники света

Источники света позволяют по-разному вводить свет в графические сцены.

Точка

Точечные источники излучают свет из одной точки во всех направлениях, причем интенсивность света уменьшается с расстоянием. Примером точечного источника является автономная лампочка.

Направленный источник света, освещающий местность.

Направленный

Направленный источник (или удаленный источник) равномерно освещает сцену с одного направления. В отличие от точечного источника, интенсивность света, создаваемого направленным источником, не меняется с расстоянием, так как направленный источник рассматривается как находящийся очень далеко от сцены. Примером направленного источника является солнечный свет.

Прожектор

Прожектор излучает направленный конус света. Свет становится более интенсивным ближе к источнику прожектора и к центру светового конуса. Примером прожектора является фонарик.

Окружающий

Окружающие источники света освещают объекты, даже когда нет другого источника света. Интенсивность окружающего света не зависит от направления, расстояния и других объектов, что означает, что эффект полностью однороден по всей сцене. Этот источник гарантирует, что объекты видны даже в полной темноте.

Взаимодействие освещения

В компьютерной графике свет обычно состоит из нескольких компонентов. Общее воздействие источника света на объект определяется комбинацией взаимодействий объекта с этими компонентами. Три основных компонента освещения (и последующих типов взаимодействия): диффузное, окружающее и зеркальное.

Разложение взаимодействий освещения.

Диффузное

Рассеянное освещение (или диффузное отражение ) - прямое освещение объекта ровным количеством света, взаимодействующего с светорассеивающей поверхностью. После того, как свет попадает на объект, он отражается в зависимости от свойств поверхности объекта, а также от угла падающего света. Это взаимодействие вносит основной вклад в яркость объекта и формирует основу его цвета.

Окружающий свет

Поскольку окружающий свет не имеет направления, он взаимодействует равномерно по всем поверхностям, а его интенсивность определяется сила источников окружающего света и свойства материалов поверхности объектов, а именно их внешние коэффициенты отражения.

Specular

Компонент specular lighting придает объектам блеск и светимость. Это отличается от зеркальных эффектов, потому что другие объекты в окружающей среде не видны в этих отражениях. Вместо этого зеркальное освещение создает яркие пятна на объектах на основе интенсивности компонента зеркального освещения и коэффициента зеркального отражения поверхности.

Модели освещения

Модели освещения используются для воспроизведения световых эффектов в визуализировал среду, в которой свет приблизительно определяется на основе физики света. Без моделей освещения воспроизведение световых эффектов в естественном виде потребует большей вычислительной мощности, чем это практично для компьютерной графики. Эта модель освещения или освещения предназначена для вычисления цвета каждого пикселя или количества света, отраженного от различных поверхностей в сцене. Есть две основные модели освещения: объектно-ориентированное освещение и глобальное освещение. Они отличаются тем, что объектно-ориентированное освещение рассматривает каждый объект индивидуально, тогда как глобальное освещение отображает, как свет взаимодействует между объектами. В настоящее время исследователи разрабатывают методы глобального освещения, чтобы более точно воспроизвести, как свет взаимодействует с окружающей средой.

Объектно-ориентированное освещение

Объектно-ориентированное освещение, также известное как локальное освещение, определяется путем сопоставления одного источник света к одиночному объекту. Этот метод быстр в вычислении, но часто дает неполное приближение того, как свет будет вести себя в сцене в действительности. Это часто аппроксимируется суммированием комбинации зеркального, рассеянного и окружающего света определенного объекта. Двумя преобладающими моделями местного освещения являются модели освещения Фонга и Блинн-Фонга.

Модель освещения Фонга

Одной из наиболее распространенных моделей затенения является модель Фонга. Модель Фонга предполагает, что интенсивность каждого пикселя является суммой интенсивности из-за диффузного, зеркального и окружающего освещения. Эта модель учитывает расположение зрителя для определения зеркального света с использованием угла света, отражающегося от объекта. Берется косинус угла и возводится в степень, определенную проектировщиком. Таким образом, дизайнер может решить, насколько широкой подсветкой он хочет выделить объект; из-за этого мощность называется значением блеска. Значение блеска определяется шероховатостью поверхности, где зеркало может иметь значение бесконечности, а самая грубая поверхность может иметь значение единицы. Эта модель создает более реалистичную белую подсветку на основе перспективы зрителя.

Модель освещения Блинн-Фонга

Модель освещения Блинн-Фонга похожа на модель Фонга, поскольку в ней используется зеркальное отражение. свет, чтобы создать подсветку на объекте на основе его сияния. Модель Блинн-Фонга отличается от модели освещения Фонга, поскольку в модели Блинн-Фонга используется вектор, нормальный к поверхности объекта и находящийся на полпути между источником света и наблюдателем. Эта модель используется для получения точного зеркального освещения и сокращения времени вычислений. Этот процесс занимает меньше времени, потому что определение направления вектора отраженного света является более сложным вычислением, чем вычисление полпути вектора нормали. Хотя эта модель похожа на модель Фонга, она дает разные визуальные результаты, а показатель степени зеркального отражения или блеска может нуждаться в изменении для получения аналогичного зеркального отражения.

Глобальное освещение

Глобальное освещение отличается от местного освещения, потому что он рассчитывает свет, проходящий через всю сцену. Это освещение в большей степени основано на физике и оптике, когда световые лучи рассеиваются, отражаются и бесконечно отражаются по всей сцене. Все еще ведутся активные исследования глобального освещения, так как оно требует большей вычислительной мощности, чем локальное освещение.

Трассировка лучей

Изображение, визуализированное с использованием трассировки лучей

Источники света испускают лучи, которые взаимодействуют с различными поверхностями посредством поглощения, отражение или преломление. Наблюдатель за сценой увидит любой источник света, который достигает их глаз; луч, не доходящий до наблюдателя, остается незамеченным. Это можно смоделировать, если все источники света испускают лучи, а затем вычислить, как каждый из них взаимодействует со всеми объектами сцены. Однако этот процесс неэффективен, поскольку большая часть световых лучей не достигнет наблюдателя и приведет к потере времени обработки. Трассировка лучей решает эту проблему, обращая процесс, вместо этого отправляя лучи обзора от наблюдателя и вычисляя, как они взаимодействуют, пока не достигнут источника света. Хотя этот способ более эффективно использует время обработки и создает имитацию света, максимально имитирующую естественное освещение, трассировка лучей по-прежнему связана с высокими вычислительными затратами из-за большого количества света, попадающего в глаза зрителя.

Radiosity

Излучение учитывает энергию, излучаемую окружающими объектами и источником света. В отличие от трассировки лучей, которая зависит от положения и ориентации наблюдателя, лучистое освещение не зависит от положения обзора. Излучение требует большей вычислительной мощности, чем трассировка лучей, но может быть более полезным для сцен со статическим освещением, поскольку его нужно будет вычислить только один раз. Поверхности сцены можно разделить на большое количество участков; каждое пятно излучает некоторый свет и влияет на другие участки, тогда необходимо одновременно решить большой набор уравнений, чтобы получить окончательное излучение каждого участка.

Отображение фотонов

Отображение фотонов было Создан как двухпроходный алгоритм глобального освещения, который более эффективен, чем трассировка лучей. Это основной принцип отслеживания фотонов, высвобождаемых из источника света, через ряд этапов. Первый проход включает в себя фотоны, высвобождаемые из источника света и отражающиеся от их первого объекта; затем записывается эта карта расположения фотонов. Карта фотонов содержит положение и направление каждого фотона, который либо отскакивает, либо поглощается. Второй проход происходит с рендерингом, где отражения рассчитываются для разных поверхностей. В этом процессе карта фотонов отделяется от геометрии сцены, что означает, что рендеринг может быть рассчитан отдельно. Это полезный метод, потому что он может моделировать каустику, и шаги предварительной обработки не нужно повторять, если вид или объекты изменяются.

Полигональное затенение

Полигональное затенение является частью процесса растеризации, где модели 3D рисуются как изображения 2D пикселей. Затенение применяет модель освещения в сочетании с геометрическими атрибутами 3D-модели, чтобы определить, как освещение должно быть представлено в каждом фрагменте (или пикселе) результирующего изображения. В многоугольниках 3D-модели хранятся геометрические значения, необходимые для процесса затенения. Эта информация включает в себя позиционные значения вершин и нормали поверхности, но может содержать дополнительные данные, такие как карты текстуры и bump.

Пример плоского затенения. Пример затенения по Гуро. Пример затенения Фонга.

Плоское затенение

Плоское затенение - это простая модель затенения с равномерным применением освещения и цвета на полигон. Цвет и нормаль одной вершины используются для вычисления затенения всего многоугольника. Плоское затенение обходится недорого, поскольку освещение для каждого многоугольника необходимо рассчитывать только один раз за визуализацию.

Затенение по Гуро

Затенение по Гуро - это тип интерполированного затенения, при котором значения внутри каждого многоугольника являются смесь значений его вершин. Каждой вершине дается собственная нормаль, состоящая из среднего значения нормалей к поверхности окружающих многоугольников. Затем рассчитывается освещение и затенение в этой вершине с использованием средней нормали и выбранной модели освещения. Этот процесс повторяется для всех вершин 3D-модели. Затем, затенение краев между вершинами вычисляется путем интерполяции между значениями вершин. Наконец, затенение внутри многоугольника вычисляется как интерполяция значений окружающих краев. Затенение Гуро создает эффект плавного освещения на поверхности 3D-модели.

Затенение Фонга

Затенение Фонга, аналогичное затенению Гуро, представляет собой другой тип интерполяционного затенения, который смешивает значения вершин для затенения полигонов. Ключевое различие между ними состоит в том, что затенение Фонга интерполирует значения нормали вершины по всему многоугольнику перед вычислением его затенения. Это контрастирует с затенением по Гуро, которое интерполирует уже затененные значения вершин по всему многоугольнику. После того, как затенение Фонга вычислило нормаль фрагмента (пикселя) внутри многоугольника, оно может применить модель освещения, затеняя этот фрагмент. Этот процесс повторяется до тех пор, пока не будет закрашен каждый многоугольник 3D-модели.

Эффекты освещения
Отражающий материал, демонстрирующий каустику.

Каустика

Каустика - это световой эффект отраженного и преломленного свет движется через среду. Они выглядят как полосы концентрированного света и часто видны при взгляде на водоемы или стекло. Каустика может быть реализована в трехмерной графике путем наложения текстуры каустики на карту с текстурной картой затронутых объектов. Текстура каустики может быть либо статическим изображением, которое анимировано для имитации эффектов каустики, либо расчетом каустики в реальном времени на пустом изображении. Последний более сложен и требует обратной трассировки лучей для имитации фотонов, движущихся через среду 3D-рендеринга. В модели освещения с фотонным картированием выборка Монте-Карло используется в сочетании с трассировкой лучей для вычисления интенсивности света, вызванного каустикой.

Отображение отражения

Отражение отображение (также известное как отображение среды) - это метод, в котором используются двухмерные карты среды для создания эффекта отражательной способности без использования трассировки лучей. Поскольку внешний вид отражающих объектов зависит от относительного положения зрителей, объектов и окружающей среды, графические алгоритмы создают векторы отражения, чтобы определить, как раскрасить объекты на основе этих элементов. Используя 2D-карты окружающей среды, а не полностью визуализированные, 3D-объекты для представления окружающей среды, отражения на объектах могут быть определены с помощью простых, недорогих в вычислительном отношении алгоритмов.

Системы частиц

Системы частиц используют наборы небольших частицы для моделирования хаотических событий высокой сложности, таких как огонь, движущиеся жидкости, взрывы и движущиеся волосы. Частицы, составляющие сложную анимацию, распределяются эмиттером, который придает каждой частице ее свойства, такие как скорость, продолжительность жизни и цвет. Со временем эти частицы могут перемещаться, менять цвет или изменять другие свойства в зависимости от эффекта. Обычно системы частиц включают случайность, например, в исходные свойства, которые эмиттер придает каждой частице, чтобы сделать эффект реалистичным и неоднородным.

См. Также
Ссылки
Последняя правка сделана 2021-05-15 08:34:55
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте