Что такое hdri карта для blender
Что понадобится?
0.0. Зеркальная камера
0.1. объектив типа «Рыбий глаз» — не обязателен, но сэкономит кучу времени;
0.3. панорамная головка для штатива
1.0. Blender (бесплатно скачивается с http://blender.org)
1.1. Hugin (http://hugin.sourceforge.net).
Если нужного оборудования нет — его можно взять на Aliexpress, где стоимость ниже. Вот, например, вполне приличный «Рыбий глаз»:
Нищебродский вариант — линза, накручиваемая на объектив и увеличивающая угол обзора. Например:
Панорамная головка. Здесь важно не ошибиться и выбрать именно такую, которая подойдёт для нашей цели. Выглядит она примерно так:
(ссылка на товар на тот случай, если в момент прочтения сего он ещё будет в наличии).
Камера. Нужна опция брекетинга экспозиции aka вилка экспозиции, если у вас есть не зеркальная камера, которая это умеет — пойдёт и не зеркальная.
Штатив — тут особо рассказывать не о чем, подойдёт любой или почти любой.
Подготовка
Камеру устанавливаем на панорамную головку. Наша задача — сделать так, чтоб нодальная точка объектива не перемещалась при вращении камеры. Нодальная точка – место пересечения лучей света, проходящих через оптическую ось объектива.
(изображение отсюда, там же чуть подробнее про нодальную точку)
Камеру надо установить так, чтоб ось вращения штатива совпала с нодальной точкой. Как её найти — отдельный разговор, посмотрите документацию к объективу, если оной не имеется — подбирайте вручную, способы находятся в интернетах.
Панорамную головку с камерой ставьте на штатив.
Съёмка
Задача — сфотографировать всё вокруг себя, со всех сторон. Алгоритм следующий:
1. сдвигаем камеру в сторону так, чтоб на первом и втором кадре область процентов в 20-30 была общей, делаем ещё снимок;
2. повторяем процедуру, пока не сделаем полный круг;
3. Наклоняем камеру, чтоб она смотрела вверх — опять же, 20-30% верхних и нижних кадров должны быть общими.
4. Делаем ещё один круг, но уже уровнем выше.
5. Снова наклоняем камеру вверх, делаем круг — и так до тех пор, пока не снимите все вплоть до потолка.
6. Теперь возвращаем камеру в горизонтальное положение, наклоняем уже вниз, повторяем процедуру.
7. В итоге должны получить серию снимков, которые все вместе охватывают всё пространство вокруг. Практика показывает, что это 60-70 снимков на обычный фотоаппарат («мыльница» или «зеркалка» с обычным объективом) и 16-20 снимков на «рыбий глаз» (в связи с гораздо большим углом обзора). Если включен брекетинг и камера каждый раз делает по 3 снимка — соответственно, эти числа тоже умножаются на 3 (или по скольку там у вас за одно нажатие делает снимков камера).
Сшивка панорамы
Для сшивки панорамы будем использовать предназначенный специально для этого Hugin. Запускаем, сразу переводим в «экспертный» режим:
Жмём «Добавить снимки. » и добавляем все отснятые файлы.
Hugin может попросить заполнить данные об объективе (особенно если объектив китайский):
Заполняем в зависимости от характеристик используемого объектива. В моём случае (ссылка на объектив выше) тип объектива == полнокадровый рыбий глаз, ГорПЗ (v) == 162 (угол обзора, был указан в описании товара на Aliexpress), остальное Hugin подберёт сам.
Жмём «ОК». Если снимали с включенным брекетингом экспозиции, видим следующее:
Жмём «Link position».
0. нажимаем «Создать контрольные точки»;
3. включаем просмотр панорамы:
4. Убеждаемся, что эти рычаги находятся в крайней правой/нижней позиции, если это не так — сдвигаем:
5. Теперь предпросмотр можно закрыть.
Переходим к сшивке.
Размер холста можно изменить, но больший размер будет сшиваться дольше.
По окончании сшивки (а она может идти долго) получаем результат:
Корректировка яркости
Для сабжа будем использовать программу Blender. Объяснять буду на примере уже другой панорамы, с ярким солнцем:
Слабо соответствует погоде и освещённости, не так ли? Исправим.
Открываем редактор материалов, переключаемся на материалы «мира» и приводим всё к следующему виду:
Экспериментируем со значением Value узла Power и Strength узла Background (которые в данном примере 5.000 и 3.000 соответственно). Первый влияет на резкость теней, второй на яркость окружения в целом. Результат получается куда лучше:
Поскольку возиться с нодами материала каждый раз не хочется, сделаем следующее.
0. Из сцены удаляем всё кроме камеры.
1. Камеру располагаем в центре.
2. Повёрнута камера должна быть прямо перед собой.
3. В настройках камеры включаем режим Panoramic, Type == Equirectangular, остальное не трогаем.
Теперь сохранённый файл можно загрузить в качестве Environment Texture и освещение будет таким, каким должно быть (с ярким солнцем и резкими тенями).
А если у меня нет HDR, только JPG?
Допустим, съёмка кадров для будущей панорамы производилась без брекетинга экспозиции или помешало всё правильно сделать что-то иное, но у нас в распоряжении имеется панорама в формате типа JPG. Как уже было сказано ранее — такие форматы не имеют представления о яркости, то есть на этой панораме, если она в формате JPG, солнце и корпус корабля одной яркости (белый цвет, RGB==255,255,255). Но можно попытаться выкрутиться.
Создаём новую сцену в Blender. Камера, как и прежде, по центру и смотрит прямо, остальные объекты удалить. Создаём сферу (она должна окружать камеру со всех сторон), даём ей материал Emission, натягиваем в качестве текстуры панораму:
Делаем дубликат и сферы, и материала. На этом дубликате с помощью ColorRamp «изолируем» наиболее яркие области:
В результате солнце становится белым, всё остальное — прозрачным:
Теперь изменяя силу у нода Emission, мы можем регулировать яркость солнца:
И да, чтоб это яркое белое пятно излучало свет, но не было видно на самой панораме — отключаем его видимость при виде из камеры:
Нам нужно только объединить две сферы — сфера, на которой имеется полная картинка, и внутри неё чуть (совсем немного!) уменьшенная сфера, где есть только очень яркое солнце…
И, как уже делалось ранее, настроить камеру на 360-градусный обзор (Panoramic, тип Equirectangular). Рендерим, сохраняем в формате RadianceHDR или OpenEXR.
Стоит заметить, что в случае с ярким солнцем в безоблачную погоду этот приём вряд ли даст нужный результат (яркие и резкие тени). Здесь я бы попробовал добавить источник света типа Sun и правильно его спозиционировать. А вот усилить таким образом яркость окон на лестнице из примера выше — вполне можно.
Автор: Денис Скиба aka Mapper720
Что такое HDRI?
В этой статье будут описаны основные понятия и необходимое снаряжение для создания своей HDRI.
Вторая часть будет переведена на днях и будет описывать пошаговую инструкцию создания HDRI.
Сначала немного теории. HDRI – это панорамная фотография, которая охватывает все углы зрения с одной точки и содержит большое количество данных (как правило, 32 бита в пикселе на канал), который может быть использован для освещения сцены CG.
Простая 3D-сцена, которая была освещена с использованием только HDRI:
Самый простой способ осветить сцену в CG, это использование HDRI. Создание высококачественной HDRI с нуля является достаточно сложной задачей, которая требует очень специфическое оборудование и дотошного отношения к процессу. Одна ошибка и вам придется начинать все сначала. Например, использование неправильного фокусного расстояния или выбор медленной скорости затвора.
“HDRI” означает High Dynamic Range Image. “Динамический диапазон” – это количество информации о яркости в изображении; этой информации намного больше, чем способен увидеть человеческий глаз. Большинство фотографий и изображений я называю “LDR” изображения или изображения с низким динамическим диапазоном. Они хранят 8 бит данных для каждого из красного, зеленого и синего каналов для каждого пикселя. Примером LDR изображение является JPG файл. Проблема с LDR изображениями в том, что они ограничены относительно небольшим диапазоном значений яркости, от 0 до 255, которого недостаточно для освещения в 3D. Поэтому и нужно выбирать формат HDR.
Чтобы проиллюстрировать разницу между JPG и файл HDR, все, что нам нужно сделать, это играть с яркостью:
Как вы можете видеть, JPG слева не имеет абсолютно никаких деталей в ярких областях, весь прямоугольник один сплошной цвет. Это объясняется тем, что максимальная яркость пикселя в изображении JPG – 255. В HDRI максимальная яркость практически бесконечна, что имитирует люминесцентные лампы, поэтому они остаются видимыми, даже в случае затемнения изображения.
Файл HDR сохраняет яркость лампочки правильно. Он знает, что свет лампы намного ярче, чем прямоугольная область вокруг нее, а в версии JPG только один сплошной цвет. Это означает, что когда вы используете изображение, чтобы освещать 3D-сцены, лампочка будет излучать больше света.
Вот простая сцена, освещенная с помощью JPG и HDRI:
Как вы можете видеть, JPG дает плоское и нереалистичное освещение. HDRI же дает хорошие резкие тени и много сочного контраста, как и от ярких люминесцентных ламп.
Разница еще более очевидна, когда мы используем пример, который имеет еще более яркий источник света, как солнце:
Вы можете увидеть в хромовом шаре на заднике, что JPG и HDRI кажутся идентичными, но освещение, которое они создают совершенно другое из-за того, что HDR файл хранит правильную яркость солнца и JPG ограничивается диапазоном до 255, который слишком низок, чтобы дать достаточно освещения.
Также нужно развенчать миф с пониманием HDR-фотографии.
“HDR” фото, а не HDRI-карта
HDR – это тип изображения, которые лучше всего описывать как тональное изображения. Идея заключается в том, чтобы сделать несколько фотографий с разной экспозицией, и сложить их вместе так, чтобы все части изображения правильно выставлены в плане яркости (не слишком яркий или слишком темный). Например, небо, как правило, гораздо ярче, чем остальная часть изображения; поэтому программа тонирования выберет более темную экспозицию использовать для неба и более яркую экспозицию для остальной части сцены, чтобы сбалансировать его. Конечный результат представляет собой 8-битное изображение, где можно увидеть множество деталей, которые могут быть потеряны в обычной фотографии.
Процесс очень похож на то, как вы сделали бы HDRI – вы делаете кучу фотографий с разной экспозицией и склеиваете их вместе в одно изображение позже. Разница заключается в том, что с тональным изображением цель состоит в том, чтобы сделать обычный JPG, который выглядит более подробно, в то время как с HDRI – это 32-битное изображение, которое хранит много данных о яркости изображения (следовательно даёт реалистичный свет в 3D сцене).
Истинный HDRI будет в таком формате, который может содержать множество данных (HDR / EXR / TIFF). Он будет выглядеть так же, как любое другое изображение, пока вы не настроите экспозицию и обнаружите, что он тайно хранит гораздо более яркие цвета, чем вы могли видеть раньше.
Что необходимо для создания HDRI?
– DSLR камера (любая, я использовал Canon);
Читайте в нашей предыдущей статье Анонс Clarisse iFX 3.0
Собственные HDRi в Blender
HDR-карты используются повсеместно при настройке окружения в сцене. Но все мы знаем, как бывает трудно найти подходящую и, самое главное, качественную HDR-карту даже за деньги (я молчу о том, что доступно бесплатно). В сегодняшнем уроке вы узнаете, как можно создавать собственные карты любого разрешения и качества непосредственно в Blender.
Видеоурок
Текстовый урок
Чтобы отрендерить собственную HDR-карту нам нужно создать окружение и выполнить рендер с помощью панорамной камеры. В качестве окружения будет выступать куб. Добавьте его в сцену и на вкладке объекта укажите ему всегда отображаться в режиме Wireframe, чтобы мы могли видеть объекты внутри него. Также, не лишним будет вывернуть нормали куба, чтобы они смотрели внутрь, так как рендерить мы будем его внутреннюю часть.
Добавьте в центр куба камеру, сбросьте ее вращение (Alt + R) и поверните на 90°, чтобы она смотрела на одну из его сторон. На вкладке камеры укажите ее тип и настройте размер.
Теперь необходимо создать студию внутри куба. Верхним плоскостям назначен шейдер Emission с силой 10, боковым с силой 5, а внизу расположена диффузная плоскость. Самому же кубу назначен материал состоящий из смеси черного шейдера Diffuse с шейдером Glossy. Смешаны они с помощью нода Layer Wieght (0.05).
Карта окружения должна иметь соотношение сторон 2:1 и, как следует из ее названия, содержать расширенный динамический диапазон (high dynamic range, он же HDR). Для этих целей отлично подойдет формат изображений OpenEXR. В зависимости от окружения следует выбирать глубину цвета (Color Depth). Для такой простой карты как в нашем случае будет достаточно 16 бит (Float (Halfl)). Но если вы будете создавать что-то по сложнее, с большим количеством цветов и переходов между ними, стоит переключиться на 32 бита (Float (Full)). Тоже самое касается и количества сэмплов. Для данной карты 128 достаточно, а для чего-то по сложнее стоит подбирать такое значение, когда карта не содержит видимого шума.
Если удастся создать что-то интересное, поделитесь в комментариях. Вам не трудно, а кому-то, возможно, пригодиться.
HDRI-карты: что это, как использовать, преимущества и недостатки HDRI
Сегодняшний гайд раскроет нюансы использования HDRI-карт, а также преимущества и недостатки HDRI в целом. Итак, начнем:
Покупка HDRI-карт
Многие люди, кажется, не понимают, что HDRI-карта — это нечто большее, чем просто красивая картинка. Мы, как правило, должны принимать решение о покупке HDRI-изображения, основываясь только лишь на предварительном знакомстве с её совсем маленькой копией (очень низкого динамического диапазона), поэтому важно знать, что именно искать и как определить карты низкого качества.
Эта статья поможет распознать высокий динамический диапазон изображения, который так часто упускают из виду не только пользователи, но и поставщики HDRI-изображений.
На что обращать внимание при покупке HDRI-карт?
Существует много сайтов, которые предлагают HDRI-карты, но лишь немногие продают действительно высококачественные карты с хорошими характеристиками. Вот небольшой обзор того, на что следует обратить внимание при выборе HDRI-изображения:
Только так вы увидите, создаёт ли карта живое освещение и отражения. То, чего мы действительно ждём от HDRI — контраст. Контрастные элементы будут отражаться от любой поверхности, даже резины или слегка блестящего пластика. Также обратите внимание на присутствующие источники света: сколько их, какого цвета, какого размера, где они располагаются и т. д. Приведу пример HDRI-карты с большим количеством источников света и замечательным контрастом. Рядом — рендер сцены с использованием этой карты. Обратите внимание на приятное освещение и хорошее отражение!
Динамический диапазон HDRI-карты. Что это?
На самом деле динамический диапазон представляет собой разницу между самым тёмным и самым ярким пикселями в изображении. Например, у HDRI-карты солнечного дня должен быть очень высокий динамический диапазон, если вы, конечно, хотите, чтобы свет и отражения создавали эффект реальной действительности. Солнце здесь в высшей степени яркое, а тени — очень тёмные. На самом деле, современные камеры с натяжкой могут полностью захватить динамический диапазон солнечной сцены.
Даже при самом коротком временем выдержки и мельчайших отверстий объектива солнце всё равно будет выглядеть засвеченным пятном (а остальная часть изображения будет чёрной!). Многие HDRI-карты, которые можно найти в интернете, не отражают весь спектр динамического диапазона реальной сцены. Приведу 2 примера HDRI-карт для сравнения. Оба одинаково понижены в экспозиции:
На хорошей HDRI-карте источники света при понижении экспозиции будут оставаться яркими, в то время как все остальные пиксели будут становиться темнее. Но как вы можете заметить в нижнем ряду, уже после снижения экспозиции на два шага, солнце из ярко-белого превратилось в светло-серое.
Обратите внимание на цвета солнца на двух полосах в середине. Верхняя HDRI захватывает намного больше фактического динамического диапазона. Только после снижения экспозиции на 12 полных шагов (. ), солнце начинает менять интенсивность. Понижение нижней HDRI на 12 шагов в результате приводит к солнцу чёрного цвета.
Что значит EV?
Динамический диапазон HDRI-карт, как правило, выражается в количестве EV («стопов»/«шагов») или числом F-stop (диафрагменным числом). EV обозначает величину экспозиции (exposure value), а 1 EV соответствует одной полной остановке света в камере. Например, изменение выдержки с 1/400s до 1/200s, соответствует повышению экспозиции на один полный стоп, или 1 EV.
Число EV напрямую не связано с количеством снимков, необходимых для создания HDRI карты. Многие камеры могут создавать изображение, используя за один снимок 1/2 стопа, или даже 1/3. При этом следует учитывать, что отсняв 12 кадров с интервалом в 1/3 стопа, вы получите всего 4 полных шага экспозиции или 4 EV! Очень важно это понимать.
Вся эта неразбериха приводит к тому, что на многих сайтах рядом с HDRI указаны совершенно случайные цифры. Получается, что мы не можем доверять этим показателям, и должны сначала открыть HDRI в Photoshop (или подобной программе), чтобы увидеть действительный динамический диапазон, с которым имеем дело.
Для оценки правдивости таких цифр, вы можете использовать следующие значения в качестве ориентира:
Некоторые даже заявляют показатель в 25 EV и более, но они либо сумасшедшие, либо явно сделали что-то неправильно. Если у карты указан более низкий диапазон, будьте уверены, что, скорее всего, это не самое высококачественное HDRI.
Динамический диапазон vs освещение и отражения
Возможно, у вас ещё остался вопрос о том, какие проблемы доставит HDRI-карта с низким динамическим диапазоном. Как уже говорилось ранее, низкий диапазон означает, что фотографу не удалось запечатлеть весь спектр света, представленный в реальной сцене. Это, конечно же, отразится на рендере и в результате приведёт к тому, что итоговое изображение не получит эффекта реального освещения.
Ниже для сравнения представлены 2 изображения. Это результаты рендеринга одной сцены с применением 2х HDRI-карт, рассмотренных ранее:
Очевидно, что изображения сильно отличаются друг от друга. Но ведь они должны выглядеть приблизительно одинаково, так как обе карты представляют изображение солнечного дня. Сразу же можно заметить три вещи:
Степень отражения
Красный материал — плохо отражающий пластик. Как вы можете видеть на картинке слева, солнце отражается в фигуре довольно чётко, так как это очень яркий источник света. Остальное окружение почти незаметно в отражении, как и должно быть. Видно и то, что небо отражается в объекте сильнее, чем деревья или трава. Это выглядит вполне реально, так как небо гораздо ярче, чем деревья и другие элементы.
На изображении справа заметно, что баланс отражения окружения в объектах нарушен. Белый дом отражается намного ярче, чем солнце. Это просто не может выглядеть реалистично. Этот рендер похож на те, что создавались лет 10 назад. В то время, когда для отражения окружения в объектах использовали изображения с низким динамическим диапазоном.
Чёткость теней
Насколько чёткими будут тени на изображении — напрямую зависит от размера источника света. На этих HDRI-картах солнце — главный источник света. На изображении слева тени очень чёткие. Так получилось, потому что самые яркие пиксели в этом HDRI расположены на очень маленькой области.
На правой картинке солнце намного больше по размеру, а в середине солнечной «звезды» совсем нет пикселей, которые были бы ярче остальных. Таким образом, все эти пиксели сильно влияют на общее освещение. Из-за большого солнца тени мягкие и проявляются очень слабо. Они едва видны, потому что почти нет разницы в яркости между солнцем и небом. Таким образом, баланс освещения сбивается.
Цвет освещения
Нарушенный баланс освещения способствует тому, что изображение справа приобретает такой голубой оттенок. На нормальной карте солнце было бы маленьким, желтоватым и очень-очень ярким, а небо — очень большим, голубым, но менее ярким. При таких условиях небо «пытается» сделать освещение синим, но его «одолевает» очень яркий жёлтый свет солнца. Этим они сбалансируют друг друга, что приведёт к созданию изображения, где освещённые участки будут желтоватыми, а теневые зоны — немного синими.
На изображении ниже я выбрал для сравнения по одному пикселю из каждой области: освещённой солнцем и теневой. Вы можете ясно видеть, что тени — слегка синие, а освещённые участки — желтоватые.
Изучите рендер, доступный для предпросмотра
Вы легко можете определить действительный динамический диапазон HDRI-карты до приобретения. Для этого изучите изображение, созданное с помощью данной карты и предложенное для предварительного просмотра. Если это солнечная сцена, вы не должны увидеть синюю картинку со слабыми тенями. То же правило распространяется и на сцены внутри помещений. Проверьте расположение света (возможно, это будет точечное освещение или, наоборот, большое окно и т.п.) и посмотрите, совпадают ли тени и отражения.
Надеюсь, что эта статья в будущем поможет вам выявить HDR-карты плохого качества, и вы не выбросите деньги на ветер. Ещё раз напомню вам те пункты, на которые стоит обратить внимание: