stringtranslate.com

Рендеринг с высоким динамическим диапазоном

Сравнение стандартного рендеринга с фиксированной апертурой (слева) с HDR-рендерингом (справа) в видеоигре Half-Life 2: Lost Coast

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

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

История

Использование изображений с высоким динамическим диапазоном (HDRI) в компьютерной графике было введено Грегом Уордом в 1985 году с его программным обеспечением для рендеринга и моделирования освещения Radiance с открытым исходным кодом , которое создало первый формат файла, сохраняющий изображение с высоким динамическим диапазоном. HDRI томился более десятилетия, сдерживаемый ограниченными вычислительными мощностями, хранилищем и методами захвата. Только недавно была разработана технология для практического использования HDRI. [2] [3]

В 1990 году Накаме и др. представили модель освещения для симуляторов вождения, которая подчеркнула необходимость обработки с высоким динамическим диапазоном в реалистичных симуляциях. [4]

В 1995 году Грег Спенсер представил на конференции SIGGRAPH физически обоснованные эффекты бликов для цифровых изображений , предоставив количественную модель бликов и засветов в человеческом глазу. [5]

В 1997 году Пол Дебевек представил на конференции SIGGRAPH работу «Восстановление карт яркости с высоким динамическим диапазоном из фотографий» [6] , а в следующем году — работу «Рендеринг синтетических объектов в реальные сцены» . [7] Эти две работы заложили основу для создания HDR- световых зондов локации и последующего использования этого зонда для освещения визуализированной сцены.

С тех пор HDRI и HDRL ( освещение на основе изображений с высоким динамическим диапазоном ) используются во многих ситуациях в 3D-сценах, в которых для вставки 3D-объекта в реальную среду требуются данные светового зонда для обеспечения реалистичных световых решений.

В игровых приложениях Riven: The Sequel to Myst в 1997 году использовал шейдер постобработки HDRI, напрямую основанный на работе Спенсера. [8] После E3 2003 года Valve выпустила демо-ролик своего движка Source, визуализирующего городской пейзаж в высоком динамическом диапазоне. [9] Этот термин не использовался повсеместно до E3 2004 года, где он привлек гораздо больше внимания, когда Epic Games продемонстрировала Unreal Engine 3 , а Valve анонсировала Half-Life 2: Lost Coast в 2005 году в сочетании с движками с открытым исходным кодом, такими как OGRE 3D , и играми с открытым исходным кодом, такими как Nexuiz .

Примеры

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

Другим аспектом HDR-рендеринга является добавление перцептуальных сигналов, которые увеличивают видимую яркость. HDR-рендеринг также влияет на то, как свет сохраняется в оптических явлениях, таких как отражения и преломления , а также в прозрачных материалах, таких как стекло. При LDR-рендеринге очень яркие источники света в сцене (например, солнце) ограничены 1,0. Когда этот свет отражается, результат должен быть меньше или равен 1,0. Однако при HDR-рендеринге очень яркие источники света могут превышать яркость 1,0, чтобы имитировать их фактические значения. Это позволяет отражениям от поверхностей поддерживать реалистичную яркость для ярких источников света.

Ограничения и компенсации

Человеческий глаз

Человеческий глаз может воспринимать сцены с очень высоким динамическим контрастным отношением , около 1 000 000:1. Адаптация достигается частично за счет корректировки радужной оболочки и медленных химических изменений, которые занимают некоторое время (например, задержка в способности видеть при переключении с яркого освещения на кромешную тьму). В любой момент времени статический диапазон глаза меньше, около 10 000:1. Однако это все еще выше, чем статический диапазон большинства технологий отображения. [ необходима цитата ]

Вывод на дисплеи

Хотя многие производители заявляют очень высокие цифры, плазменные дисплеи , жидкокристаллические дисплеи и дисплеи на ЭЛТ могут обеспечить лишь часть коэффициента контрастности, наблюдаемого в реальном мире, и эти показатели обычно измеряются в идеальных условиях. [ необходима цитата ] Одновременная контрастность реального контента при нормальных условиях просмотра значительно ниже.

Некоторое увеличение динамического диапазона в ЖК-мониторах может быть достигнуто путем автоматического уменьшения подсветки для темных сцен. Например, LG называет эту технологию «Digital Fine Contrast»; [10] Samsung описывает ее как «динамический коэффициент контрастности». Другой метод заключается в использовании массива более ярких и более темных светодиодных подсветок, например, с помощью систем, разработанных BrightSide Technologies. [11]

OLED- дисплеи имеют лучшие возможности динамического диапазона, чем ЖК-дисплеи, похожие на плазму, но с меньшим энергопотреблением. Rec. 709 определяет цветовое пространство для HDTV , а Rec. 2020 определяет большее, но все еще неполное цветовое пространство для телевидения сверхвысокой четкости .

Легкое цветение

Расплывчатость света — это результат рассеивания в хрусталике глаза человека, который человеческий мозг интерпретирует как яркое пятно на сцене. Например, яркий свет на заднем плане будет казаться перетекающим на объекты на переднем плане. Это можно использовать для создания иллюзии, чтобы яркое пятно казалось ярче, чем оно есть на самом деле. [5]

Вспышка

Блики — это дифракция света в хрусталике глаза человека, в результате которой возникают «лучи» света, исходящие от небольших источников света, а также могут вызывать некоторые хроматические эффекты. Они наиболее заметны на точечных источниках света из-за их малого угла обзора. [5]

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

Для имитации этих эффектов можно совместно использовать тональную компрессию и шейдеры цветения .

Тональное отображение

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

Приложения в компьютерных развлечениях

В настоящее время HDRR распространен в играх , в первую очередь для ПК , Microsoft Xbox 360 и Sony PlayStation 3. Он также был смоделирован на системах PlayStation 2 , GameCube , Xbox и Amiga . Sproing Interactive Media объявила, что их новый игровой движок Athena для Wii будет поддерживать HDRR, добавив Wii в список систем, которые его поддерживают.

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

Разработка HDRR через DirectX

Сложные шейдерные эффекты начали свое существование с выпуском Shader Model 1.0 с DirectX 8. Shader Model 1.0 освещал 3D-миры с помощью так называемого стандартного освещения. Однако стандартное освещение имело две проблемы:

  1. Точность освещения ограничивалась 8-битными целыми числами, что ограничивало коэффициент контрастности до 256:1. При использовании цветовой модели HVS значение (V) или яркость цвета имеет диапазон от 0 до 255. Это означает, что самый яркий белый (значение 255) всего на 255 уровней ярче самого темного оттенка выше чистого черного (т. е.: значение 0).
  2. Расчеты освещения выполнялись на основе целочисленных значений , что не обеспечивало достаточной точности, поскольку реальный мир не ограничивается целыми числами.

24 декабря 2002 года Microsoft выпустила новую версию DirectX . DirectX 9.0 представила Shader Model 2.0, которая предлагала один из необходимых компонентов для обеспечения рендеринга изображений с высоким динамическим диапазоном: точность освещения не ограничивалась только 8 битами. Хотя 8 бит были минимальным значением в приложениях, программисты могли выбрать до 24 бит для точности освещения. Однако все вычисления по-прежнему были целочисленными. Одной из первых видеокарт с изначальной поддержкой DirectX 9.0 была ATI Radeon 9700 , хотя этот эффект не был запрограммирован в играх в течение многих лет после этого. 23 августа 2003 года Microsoft обновила DirectX до DirectX 9.0b, что позволило использовать профиль Pixel Shader 2.x (Extended) для серии ATI Radeon X и серии NVIDIA GeForce FX графических процессоров.

9 августа 2004 года Microsoft снова обновила DirectX до DirectX 9.0c. Это также раскрыло профиль Shader Model 3.0 для языка шейдеров высокого уровня (HLSL). Точность освещения Shader Model 3.0 имеет минимум 32 бита по сравнению с 8-битным минимумом 2.0. Кроме того, все вычисления точности освещения теперь основаны на числах с плавающей точкой . NVIDIA заявляет, что коэффициент контрастности с использованием Shader Model 3.0 может достигать 65535:1 при использовании 32-битной точности освещения. Сначала HDRR был возможен только на видеокартах, поддерживающих эффекты Shader-Model-3.0, но разработчики программного обеспечения вскоре добавили совместимость с Shader Model 2.0. В качестве примечания, когда HDRR упоминается как Shader Model 3.0 HDR, на самом деле он выполняется путем смешивания FP16. Смешивание FP16 не является частью Shader Model 3.0, но поддерживается в основном картами, также поддерживающими Shader Model 3.0 (исключения включают серию GeForce 6200). Смешивание FP16 может использоваться как более быстрый способ рендеринга HDR в видеоиграх.

Shader Model 4.0 — это функция DirectX 10, выпущенная вместе с Windows Vista. Shader Model 4.0 допускает 128-битный HDR-рендеринг, в отличие от 64-битного HDR в Shader Model 3.0 (хотя это теоретически возможно в Shader Model 3.0).

Shader Model 5.0 — это функция DirectX 11. Она обеспечивает сжатие HDR-текстур в соотношении 6:1 без заметных потерь, что было распространено в предыдущих версиях методов сжатия HDR-текстур DirectX.

Разработка HDRR через OpenGL

Разрабатывать HDRR с помощью шейдера GLSL можно, начиная с OpenGL 1.4.

Игровые движки, поддерживающие HDR-рендеринг

Смотрите также

Ссылки

  1. ^ Саймон Грин и Джем Чебеноян (2004). "Рендеринг в широком динамическом диапазоне (на GeForce 6800)" (PDF) . Серия GeForce 6. nVidia. стр. 3.
  2. ^ Рейнхард, Эрик; Грег Уорд; Суманта Паттанаик; Пол Дебевек (август 2005 г.). High Dynamic Range Imaging: Acquisition, Display, and Image-Based Lighting . Westport, Connecticut: Morgan Kaufmann. ISBN 978-0-12-585263-0.
  3. ^ Грег Уорд. "High Dynamic Range Imaging" (PDF) . anywhere.com . Получено 18 августа 2009 г. .
  4. ^ Накамаэ, Эйхачиро; Канеда, Кадзуфуми; Окамото, Такаши; Нишита, Томоюки (1990). «Модель освещения, предназначенная для симуляторов вождения». Материалы 17-й ежегодной конференции «Компьютерная графика и интерактивные технологии» . стр. 395–404. дои : 10.1145/97879.97922. ISBN 978-0201509335. S2CID  11880939.
  5. ^ abc Спенсер, Грег; Ширли, Питер; Циммерман, Курт; Гринберг, Дональд П. (1995). "Физически обоснованные эффекты бликов для цифровых изображений". Труды 22-й ежегодной конференции по компьютерной графике и интерактивным технологиям - SIGGRAPH '95 . стр. 325. CiteSeerX 10.1.1.41.1625 . doi :10.1145/218380.218466. ISBN  978-0897917018. S2CID  17643910.
  6. ^ Пол Э. Дебевец и Джитендра Малик (1997). "Восстановление карт яркости с высоким динамическим диапазоном по фотографиям". Труды 24-й ежегодной конференции по компьютерной графике и интерактивным технологиям - SIGGRAPH '97 . С. 369–378. doi : 10.1145/258734.258884 . ISBN 0897918967.
  7. ^ Пол Э. Дебевек (1998). «Рендеринг синтетических объектов в реальные сцены: объединение традиционной и основанной на изображениях графики с глобальным освещением и фотографией с высоким динамическим диапазоном». Труды 25-й ежегодной конференции по компьютерной графике и интерактивным технологиям — SIGGRAPH '98 . С. 189–198. doi : 10.1145/280814.280864 . ISBN 0897919998.
  8. ^ Форкад, Тим (февраль 1998). «Unraveling Riven». Мир компьютерной графики .
  9. ^ Valve (2003). "Half-Life 2: Source DirectX 9.0 Effects Trailer (2003)". YouTube. Архивировано из оригинала 21.12.2021.
  10. ^ Цифровой точный контраст
  11. ^ BrightSide Technologies теперь является частью Dolby - Архивировано 10 сентября 2007 г. на Wayback Machine
  12. ^ "Rendering – Features – Unreal Technology". Epic Games . 2006. Архивировано из оригинала 2011-03-07 . Получено 2011-03-15 .
  13. ^ "ИСТОЧНИК – СИСТЕМА РЕНДЕРИНГА". Valve . 2007. Архивировано из оригинала 2011-03-23 ​​. Получено 2011-03-15 .
  14. ^ "Удивительные технологии The Witcher 3". PC-Gamer . 2015. Получено 2016-05-08 .
  15. ^ "FarCry 1.3: Crytek's Last Play впервые представляет HDR и 3Dc". X-bit Labs . 2004. Архивировано из оригинала 2008-07-24 . Получено 2011-03-15 .
  16. ^ "CryEngine 2 – Обзор". CryTek . 2011 . Получено 2011-03-15 .
  17. ^ Перейра, Крис (3 декабря 2016 г.). «Kojima сотрудничает с Killzone, Horizon Dev Guerrilla для Death Stranding». GameSpot . CBS Interactive . Архивировано из оригинала 4 декабря 2019 г. . Получено 3 декабря 2016 г. .
  18. ^ "Unigine Engine – Unigine (продвинутый 3D-движок для многоплатформенных игр и систем виртуальной реальности)". Unigine Corp. 2011. Получено 15.03.2011 .
  19. ^ "BabylonDoc". Архивировано из оригинала 2015-07-04 . Получено 2015-07-03 .
  20. ^ "Лицензированная MIT версия Torque 3D с открытым исходным кодом от GarageGames: GarageGames/Torque3D". GitHub . 2019-08-22.

Внешние ссылки