Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Модель с трассировкой лучей демонстрирует зеркальное отражение.

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

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

Подходы к рендерингу отражения [ править ]

Сравнение точных отражений, вычисленных с помощью трассировки пути (слева), приблизительных отражений с отображением окружающей среды (в центре) и отражений в пространстве экрана (справа).

Для визуализации отражений среды существует множество методов, которые различаются точностью, вычислительной сложностью и сложностью реализации. Возможна также комбинация этих техник.

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

Отражения на плоских поверхностях, таких как плоские зеркала или водные поверхности, можно просто и точно вычислить в реальном времени с помощью двухпроходного рендеринга - один для зрителя, второй для просмотра в зеркале, обычно с помощью буфера трафарета . [1] Некоторые старые видеоигры использовали трюк для достижения этого эффекта с помощью рендеринга за один проход, помещая всю зеркальную сцену за прозрачную плоскость, представляющую зеркало. [2]

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

  • Отображение среды (например, отображение куба ): метод, который широко используется, например, в видеоиграх, предлагая приближение отражения, которое в основном достаточно для глаза, но не имеет самоотражений и требует предварительной визуализации карты среды. [3] : 174 Точность можно повысить, используя пространственный массив карт среды вместо одной.
  • Экран пространства отражения (SSR): более дорогой метод , что следы отражения лучей в пространстве экрана (в отличие от мирового пространства, например , в режиме трассировки лучей). Это делается для каждого визуализированного пикселя отраженной поверхности с использованием нормали к поверхности и глубины сцены. Недостатком является то, что объекты, не захваченные в визуализированном кадре, не могут появляться в отражениях, что приводит к неразрешенным пересечениям и неполному отражению изображения. [4]

Типы отражения [ править ]

Полированный

- Полированное отражение - это невозмущенное отражение, подобное зеркалу или хромированной поверхности.

Размыто

- Размытое отражение означает, что крошечные случайные неровности на поверхности материала делают отражение нечетким.

Металлический

- Отражение становится металлическим, если блики и отражения сохраняют цвет отражающего объекта.

Глянцевый

- Этот термин можно использовать неправильно: иногда это параметр, противоположный размытому (например, когда «глянцевитость» имеет низкое значение, отражение размытое). Иногда этот термин используется как синоним «размытого отражения». Глянцевый, используемый в этом контексте, означает, что отражение действительно размыто.

Полированное или зеркальное отражение [ править ]

Зеркало на стене со 100% отражением.

Зеркала обычно почти на 100% отражают ...

Металлическое отражение [ править ]

Большая сфера слева синего цвета с металлическим отражением. Большая сфера справа имеет тот же цвет, но для нее не выбрано металлическое свойство.

Обычные (неметаллические) объекты отражают свет и цвета того же цвета, что и отражаемый объект. Металлические предметы отражают свет и цвета, измененные цветом самого металлического предмета.

Размытое отражение [ править ]

Для большой сферы слева установлена ​​резкость 100%. Сфера справа имеет резкость 50%, что создает размытое отражение.

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

Глянцевое отражение [ править ]

Сфера слева имеет нормальное металлическое отражение. Сфера справа имеет те же параметры, за исключением того, что отражение помечено как «глянцевое».

Полностью глянцевое отражение, показывает блики от источников света, но не показывает четкое отражение от объектов.

Примеры отражений [ править ]

Отражения мокрого пола [ править ]

Эффект мокрого пола [5] - это техника графических эффектов , популярная в сочетании со страницами в стиле Web 2.0 , особенно в логотипах . Эффект можно сделать вручную или создать с помощью вспомогательного инструмента, который можно установить для автоматического создания эффекта. В отличие от стандартного компьютерного отражения (и эффекта воды Java, популярного в веб- графике первого поколения ), эффект мокрого пола включает в себя градиент и часто наклон отражения, так что зеркальное изображение кажется парящим или покоящимся на мокром покрытии. пол.

См. Также [ править ]

  • Модель освещения
  • Ламбертовский коэффициент отражения
  • трассировка лучей
  • Отображение отражения
  • Рендеринг (компьютерная графика)
  • Зеркальное отражение (оптика)

Ссылки [ править ]

  1. ^ Kligard, Марк (1999). «Улучшение теней и отражений с помощью буфера трафарета» : 7 . Проверено 25 апреля 2020 года . Цитировать журнал требует |journal=( помощь )CS1 maint: обескураженный параметр ( ссылка )
  2. Off Camera Secrets, Metal Gear Solid: Twin Snakes - Boundary Break . Событие происходит в 4:32 . Проверено 25 апреля 2020 года .
  3. ^ Фернандо, Рандима; Килгард, Марк (2003). Учебник Cg. Подробное руководство по программируемой графике в реальном времени . Эддисон-Уэсли Профессионал. ISBN 9780321194961.
  4. ^ "Unity-Technologies: Отражения экранного пространства" . Проверено 25 апреля 2020 года . CS1 maint: обескураженный параметр ( ссылка )
  5. ^ Twinsparc Статья, в которой введен термин