WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте
Фотография: Пример сумеречных лучей, которые возникают во время заката
Фотография: Пример эффекта Тиндаля, когда солнечные лучи проходят через туман.
Компьютерная графика: лесная местность в анимационном фильме «Big Buck Bunny», отчётливо видны объёмные лучи.
Компьютерная графика: объёмные лучи в компьютерной игре «Crysis», которая использует игровой движок «CryEngine 2».
Объемные лучи в игре S.T.A.L.K.E.R.: Чистое небо

Объёмные лучи — программная методика (техника) в трёхмерной компьютерной графике, предназначенная для создания эффекта трёхмерных лучей света, проходящих через окружение трёхмерной сцены.[1] В реальном мире эффект трёхмерных лучей представлен так называемым оптическим эффектом Тиндаля, когда лучи света проходят через облако газа, дыма, пыли, аэрозоля или пара в затёмненном пространстве. При прохождении света через такую среду лучи света «подсвечивают» частички пыли или жидкости, которые распылены в воздухе, в результате чего можно увидеть эффект «объёмных лучей». Ещё одним проявлением подобного оптического эффекта являются сумеречные и противосумеречные лучи. Программная методика объёмных лучей предназначена для моделирования всех вышеописанных оптических эффектов в трёхмерной среде. Она широко используется в кинематографе и трёхмерном моделировании и рендеринге, а также в интерактивных приложениях компьютерной графики, включая компьютерные игры.

Принцип работы

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

Для функционирования в режиме реального времени вышеописанная методика требует оптимизации. Одним из возможных оптимизационных подходов является рендеринг освещаемого объёма в намного меньшем разрешении чем то, которое используется в изначальном графическом контексте. Вследствие такого подхода создаются нежелательные эффекты алиасинга, которые могут быть устранены посредством применения фильтра размытия (англ. blur).[2]

Ещё одной оптимизационной методикой является рендеринг «неточных» эффектов. Этот алгоритм размывает светящиеся объекты в стороне от центра основного источника света. Как правило, прозрачность постепенно сокращается с каждым проходом размытия, особенно в более светящиеся сценах. Следует иметь в виду, что для работы этого алгоритма необходимо присутствие на экране источника света.[3]

Примечания

  1. David "Spunk" Grampa, Dan "Tweak Monkey" Kennedy. 3D Dictionary Volumetric Lighting (англ.). Tweak3D.net (13 декабря 2002 года). Проверено 23 января 2010. Архивировано 15 апреля 2012 года.
  2. 1 2 jim coe. Volumetric Lighting in Vue 5 (англ.). Art Head Start (15 апреля 2006 года). Проверено 23 января 2010. Архивировано 15 апреля 2012 года.
  3. Dario Corno. Lesson: 36 (англ.). GameDev.net. Проверено 23 января 2010. Архивировано 15 апреля 2012 года.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии