Меню
Бесплатно
Главная  /  Установка и настройка  /  Что такое рендеринг в играх. Распределенный рендеринг

Что такое рендеринг в играх. Распределенный рендеринг

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

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

Не допускайте ошибок в геометрии моделей, таких как открытые рёбра, перекрывающиеся полигоны. Старайтесь, чтобы модели были как можно более чистыми.

2. Какими должны быть текстуры Размер текстуры должен соответствовать размеру модели на финальном рендере. К примеру, если вы скачали где-нибудь текстуру с разрешением 3000 х 3000 пикселей, а модель, к которой её применяете, находится на заднем плане сцены или имеет совсем маленький масштаб, то визуализатор будет перегружен излишним разрешением текстуры.

Взгляните на этот пример рендера:

Следует иметь в виду, что для усиления реализма к материалам необходимо добавлять карты Bump (Неровности) и Specular (Зеркальные отражения), поскольку в реальности каждый объект обладает рельефом и отражательной способностью. Создать такие карты из оригинальной текстуры не составит проблемы - достаточно поверхностных знаний Adobe Photoshop .

Правильное освещение

Чрезвычайно важный пункт. Старайтесь всегда применять системы физического освещения, приближенные к реальным, такие как Daylight System (Система дневного освещения), а также VRay Sun и Sky , HDRI, а в качестве источников света в интерьерах использовать фотометрические с профилями IES. Это прибавит сцене реализма, так как в этом случае при рендере будут задействованы настоящие алгоритмы вычисления световой информации.

Не забывайте о гамма-коррекции изображений! При гамме 2.2 цвета в 3ds Max будут отображаться правильно. Однако увидеть их такими можно только, если ваш монитор правильно откалиброван.



4. Масштаб сцены
Для получения рендеров пристойного качества масштаб единиц измерения в сцене имеет колоссальное значение. Чаще всего у нас принято работать в сантиметрах. Это позволяет не только создавать модели более точными, но также помогает при расчете освещения и отражений.

5. Настройки визуализации
Если работаете с VRay, то для сглаживания краёв изображения рекомендуется использовать Adaptive DMC . Однако для достижения наилучших результатов в сценах с большим количеством деталей и множеством размытых отражений лучше применять Fixed - с этим типом изображений он работает лучше всего. Количество сабдивов при этом желательно устанавливать не менее 4, а лучше 6.
Для расчета непрямого освещения (Indirect Illumination) используйте связку Irradiance Map + Light Cache . Такой тандем позволяет быстро рассчитать освещённость в сцене, но если хочется большей детализации, можно включить опцию Detail Enhancement (Улучшение детализации) в настройках Irradiance Map, а в Light Cache активировать Pre-Filter (Префильтрация). Таким образом можно снизить зашумлённость картинки.
Хорошего качества теней можно добиться, установив количество сабдивов в настройках источников света VRay на 15-25. Помимо этого всегда используйте физическую камеру VRay, с помощью которой можно получить полный контроль над представлением света в сцене.
А для полного контроля над балансом белого, попробуйте поработать в шкале температур Кельвина. Приведу для справки таблицу температур, которой полезно будет пользоваться при работе в 3ds Max (меньшая величина означает более тёплые / красные оттенки, а более высокая даёт прохладные / синие тона):
Шкала цветовых температур Кельвина по наиболее распространённым источникам света

  • Горящая свеча - 1900К
  • Галогенные лампы - 3200К
  • Лампы заливающего света и пилотный свет - 3400К
  • Восход солнца - 4000К
  • Флуоресцентный свет (холодный белый) - 4500К
  • Дневной свет - 5500К
  • Вспышка фотоаппарата - 5500К
  • Студийный свет - 5500К
  • Свет от экрана монитора компьютера - 5500-6500К
  • Лампа дневного света - 6500К
  • Открытая тень (термин из фотографии) - 8000К
Исправляем бледные цвета в 3ds Max при гамме 2.2
При использовании гаммы 2.2 в Autodesk 3ds Max сразу бросается в глаза, что цвета материалов в Material Editor выглядят чересчур ярко и блекло по сравнению с обычным представлением в гамме 1.0. И если вам обязательно нужно соблюдать в сцене значения цветов по шкале RGB, допустим, в каком-нибудь уроке уже даны значения цветов, или заказчик предоставил свои образцы объектов в заданных цветах, то в гамме 2.2 они будут выглядеть неправильно. Коррекция RGB цветов в гамме 2.2 Для того чтобы добиться правильного уровня яркости цвета, нужно переназначить его значения RGB, воспользовавшись несложным уравнением: новый_цвет=255*((старый_цвет/255)^2.2). В уравнении сформулировано, что чтобы получить новое значение цвета в гамме 2.2 по RGB, нужно разделить старое RGB значение на величину белого цвета (255), возвести всё это в степень 2.2, и затем умножить получившееся на значение белого цвета (255). Если математика - не ваш конёк, не отчаивайтесь - 3ds Max посчитает всё за вас, ведь в нём есть встроенный калькулятор Numeric Expression Evaluator (Вычислитель численных выражений). Результат выражения (математической функции) возвращает некое значение. Полученное значение затем можно вставить в любое поле программы, будь то параметры создания нового объекта, его трансформации, настройки модификаторов, материалов. Попробуем вычислить цвет в гамме 2.2 на практике. Внутри настроек материала щёлкните по цветовому полю для вызова окна Color Selector. Выбрав какой-нибудь цвет, поставьте курсор мыши в поле канала Red (Красный цвет) и нажмите Ctrl+N на клавиатуре, чтобы вызвать Numerical Expression Evaluator. Напишите внутри него приведенную формулу, подставив старое значение цвета в канале Red. В поле Result (Результат) отобразится решение уравнения. Нажмите кнопку Paste (Вставка), чтобы вставить полученное значение вместо старого в канал Red. Проделайте эту операцию с каналами цветов Green (Зелёный) и Blue (Синий). С исправленными значениями RGB цвета будут выглядеть корректно и в окнах проекций, и на рендере. Работа с цветами по схеме формирования CMYK Не всегда приходится иметь дело только с RGB. Иногда попадаются цвета для печати по схеме CMYK, и их нужно преобразовывать в RGB, поскольку 3ds Max поддерживает только. Можно, конечно, запустить Adobe Photoshop и переводить значения в нём, но есть способ более удобный. Для 3ds Max создан новый тип селектора цветов - Cool Picker, который позволяет видеть значения цвета во всех возможных цветовых схемах непосредственно в Максе. Скачайте плагин Cool Picker отсюда для своей версии 3ds Max. Устанавливается он очень просто: сам файл с расширением dlu нужно поместить в папку 3ds Max\plugins. Сделать его активным можно, перейдя в меню Customize > Preferences > вкладка General > Color Selector: Cool Picker. Таким образом, он заменит собой стандартный селектор цветов. Есть вопросы? Задавайте

Начало формы

Использование гаммы 2.2 в 3ds max + V-Ray на практике

После теоретической части по настройке гаммы в V-Ray и 3ds max, мы переходим непосредственно к практике.

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

Каждый пытался решить эту проблему по-разному. Начинающие пользователи 3ds max первым делом старались исправить это простым увеличением яркости источников света.

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

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

Все вышеприведённые способы борьбы с неправдоподобной тьмой слишком прямолинейны и очевидны, но неэффективны.

Суть проблемы тёмных рендеров состоит в том, что значение гаммы изображения и монитора различны.

Что такое гамма?
Гамма - это степень нелинейности перехода цвета от тёмных значений к ярким. С математической точки зрения значение линейной гаммы равно 1.0, именно поэтому такие программы, как 3ds max, V-Ray и пр. по умолчанию выполняют расчёты в гамме 1.0. Но значение гаммы 1.0 совместимо только с "идеальным" монитором, который обладает линейной зависимостью отображения перехода цвета от белого к чёрному. Но поскольку таких мониторов в природе не существует, фактическая гамма нелинейна.

Значение гаммы для стандарта видео NTSC составляет 2.2. Для компьютерных дисплеев значение гаммы, как правило, находится в пределах от 1.5 до 2.0. Но для удобства нелинейность цветового перехода на всех экрана считается равной 2.2.

Когда монитор с гаммой 2.2 показывает изображение, гамма которого составляет 1.0, то на экране мы видим тёмные цвета в гамме 1.0 вместо ожидаемых ярких цветов гаммы 2.2. Поэтому цвета из среднего диапазона (Zone 2) становятся темнее при просмотре изображения с гаммой 1.0 на устройстве вывода с гаммой 2.2. Однако в диапазоне тёмных тонов (Zone 1) представление гаммы 1.0 и 2.2 очень схоже, что позволяет отображать тени и чёрные цвета правильным образом.

В областях со светлыми тонами (Zone 3) также наблюдается много сходства. Следовательно, яркое изображение с гаммой 1.0 также достаточно корректно отображается на мониторе с гаммой 2.2.

И поэтому чтобы получить надлежащий вывод гаммы 2.2, должна быть изменена гамма исходного изображения. Конечно, это можно сделать и в Photoshop, отрегулировав гамму там. Но вряд ли можно назвать удобным такой способ, когда вы каждый раз меняете настройки изображения, сохраняете их себе на жёсткий диск, и редактируете в растровом редакторе... Из-за этого мы и не будем рассматривать этот вариант, да к тому же такой способ обладает ещё более существенными недостатками. Современные средства визуализации, такие как V-Ray, рассчитывают изображение адаптивно, поэтому точность расчёта зависит от многих параметров, включая яркость света в определённой области. Таким образом, в местах с тенью V-Ray просчитывает освещённость изображения менее точно, и сами такие места становятся зашумлёнными. А в ярких и хорошо различимых областях изображения расчёт визуализации проходит с большей аккуратностью и с минимумом артефактов. Это позволяет ускорить рендеринг благодаря экономии времени на едва различимых областях изображения. Поднимая гамму выходного изображения в Photoshop, изменяется яркость частей изображения, которые V-Ray посчитал менее значимыми и понизил качество их расчётов. Таким образом становятся видимыми все нежелательные артефакты, а картинка выглядит просто ужасно, но зато ярче, чем до того В добавок изменится также гамма текстур, они будут выглядеть блекло и бесцветно.

Единственным верным выходом из этой ситуации является изменение значения гаммы, в которой работает визуализатор V-Ray. Так вы получите приемлемую яркость в полутонах, где не будет таких очевидных артефактов.

В уроке будет показано, как настраивается гамма в визуализаторе V-Ray и 3ds max.

Чтобы изменить гамму, с которой будет работать V-Ray, достаточно найти раскрывающуюся вкладку V-Ray: Color Mapping , которая находится на вкладке V-Ray, которая в свою очередь располагается в окне Render Scene (F10), и установить значение Gamma: в 2.2.

Особенность V-Ray заключается в том, что коррекция гаммы цветового отображения работает только в V-Ray Frame Buffer, поэтому если вы хотите увидеть результаты ваших манипуляций с гаммой, то необходимо включить кадровый буфер V-Ray: Frame Buffer на вкладке V-Ray.

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

Почти все используемые нами текстуры на мониторе выглядят нормально, поскольку они уже настроены самим монитором и изначально имеют гамму 2.2. Для того чтобы визуализатор V-Ray сконфигурировал гамму 2.2 и не умножал гамму изображения на значение гаммы в визуализаторе (2.2 * 2.2), текстуры должны находиться в гамме 1.0. Затем, после их коррекции визуализатором, их гамма станет равной 2.2.

Можно сделать все текстуры темнее, изменив их гамму с 2.2 на 1.0 в Photoshop, с расчётом на дальнейшее их осветление визуализатором. Впрочем, такой метод был бы очень утомительным и потребовал бы времени и терпения на обеспечение всех текстур в сцене в гамме 1.0, и, во-вторых, это сделает невозможным просмотр текстур в нормальной гамме, потому что они будут всё время затемнены.

Чтобы этого избежать, просто обеспечим их настройку на входе 3ds max. К счастью, в 3ds max присутствует достаточно настроек для гаммы. Настройки гаммы доступны из главного меню 3ds max:

Customize > Preferences ...> Gamma and LUT

Главные настройки гаммы 3ds max расположены на вкладке Gamma and LUT. В частности, нам потребуется настройка коррекции входных текстур, называемая Input Gamma . Нас не должно вводить в заблуждение то, что там по умолчанию установлено значение 1.0. Это не корректирующее значение, а значение гаммы текстур на входе. По умолчанию принято считать, что все текстуры состоят в гамме 1.0, но на самом деле, как упоминалось ранее, они установлены в гамме 2.2. И значит, мы должны указать значение гаммы 2.2, вместо 1.0.

Не забудьте установить галочку в параметре Enable Gamma / LUT Correction , чтобы получить доступ к настройкам гаммы.

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

Кажется, всё, но под конец урока я бы хотел рассказать ещё об одной вещи по работе с гаммой. Поскольку визуализатор V-Ray работает в необычной для себя гамме, то приходится устанавливать режим отображения гаммы 3ds max в 2.2, чтобы цвета в Material Editor и Color Selector отображались правильно. В противном случае может возникнуть путаница, когда материалы будут настраиваться в гамме 1.0, но на самом деле внутри программы они будут преобразованы в гамму 2.2.

Для установки правильного отображения материалов в редакторе материалов 3ds max, следует использовать настройки во вкладке Gamma and LUT. Для этого должны быть установлены значение гаммы 2.2 в разделе Display и проставлены галочки в Affect Color Selectors и Affect Material Editor в разделе Materials and Colors.

Гамма 2.2 уже стала стандартом при работе с 3ds max и V-Ray. Надеюсь, что данный материал поможет вам в работе!

Происхождение термина Слово «рендер» (или «рендеринг») пришло, как и многое, связанное с IP-технологиями, из английского языка. Происходит оно от старофранцузского rendre, означающего «делать», «дать», «возвратить», «вернуть». Более глубокие корни этого глагола восходят к древней латыни: re – префикс, означающий «назад», и dare – «давать». Отсюда – один из смыслов современного термина. Рендер – это в том числе процесс воссоздания плоскостного изображения на основе трехмерной модели, содержащей сведения о физических свойствах объекта – его форме, фактуре поверхности, освещенности и так далее.

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

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

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

Часто в компьютерной графике (художественной и технической) под рендерингом понимают создание плоского изображения (картинки) по разработанной 3D-сцене. Изображение - это цифровое растровое изображение. Синонимом в данном контексте является Визуализация.

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

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

Особенности рендеринга

На доведение предварительного эскиза до совершенства понадобится много времени – продолжительность обработки сложных изображений компьютером может достигать нескольких часов. За этот период происходит:

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

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

Кто занимается рендерингом?

Самая распространенная профессия требующая от вас знания рендеринга это «3D дизайнер». Специалист такого рода может создавать все: от элементарного банера до моделей компьютерных игр.

И, конечно же, 3D дизайнер занимается не только рендерингом, но и всеми предшествующими этапами создания 3D графики, а именно: моделирование, текстурирование, освещение, анимация и только после – визуализация.

Однако, 3D дизайнер не работает с математическими и физическими формулами, описывая их языками программирования. Все это за него делают программы компиляторы (3D Max, Maya, Cinema 4D, Zbrush, Blender и т.д.) и уже написанных библиотек физических свойств (ODE, Newton, PhysX, Bullet и т.п.).

Отдельно среди перечисленных выше программ, позволяющих создавать 3D графику нужно выделить бесплатную программу OGRE 3D – графические движки специально для рендеринга, с помощью которого можно не только создавать «картинки», но и реализовать целую, а главное полноценную компьютерную игру. К примеру «Torchlight» в качестве игрового движка использует именно OGRE.

Ну, а для обработки такого количества и качества графических сцен настольного компьютера будет не достаточно, поэтому в последнее время для рендеринга делают не только программы но и сервисы для обработки их процессов, такие как «рендер ферма». И стоит заметить, что удовольствие это не из дешевых, не смотря на низкие цены рендер фермы цена рендеринга получается довольно внушительной – 3,9 центов / ГГц-час.

Типы рендера: online и пререндеринг

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

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

Разрабатываются всё новые системы рендера – или узкоспециализированные, или универсальные. Сегодня в основе самых распространенных программ-рендеров лежат три основных вычислительных метода: Растеризация (Scanline) – метод, при котором изображение создается просчетом не отдельных точек-пикселей, а целых граней-полигонов и крупных участков поверхностей. Текстуры, определяющие свойства объектов, как и свет в сцене, зафиксированы в виде неизменных данных. Получаемое изображение часто не отражает перспективных изменений освещенности, глубины резкости и т. д. Чаще применяется в системах для просчета сцен в играх и в видеопродакшене. Трассировка лучей (Raytracing) – физика сцены просчитывается на основе лучей, исходящих из объектива виртуальной камеры и анализа взаимодействия каждого луча с объектами, с которыми он встречается в сцене. В зависимости от количества и качества таких «отскоков» имитируется отражение или преломление света, его цвет, насыщенность и т. д. Качество получаемой картинки по сравнению с растеризацией значительно выше, но за её реалистичность приходится платить повышенным расходом ресурсов. Расчет отраженного света (Radiosity) – каждая точка, каждый пиксель изображения наделяется цветом, который не зависит от камеры. На него влияют глобальные и местные источники света и окружение. Такой метод позволяет рассчитать появление на поверхности модели цветовых и световых рефлексов от рядом расположенных объектов. Практика показывает, что самые продвинутые и популярные системы рендера использует сочетание всех или основных методов. Это позволяет добиться максимального фотореализма и достоверности в отображении физических процессов в данной сцене.

Рендеринг

Вследствие этого, было разработано четыре группы методов, более эффективных, чем моделирование всех лучей света, освещающих сцену:

  • Растеризация (англ. rasterization ) совместно с методом сканирования строк (англ. scanline rendering ). Визуализация производится проецированием объектов сцены на экран без рассмотрения эффекта перспективы относительно наблюдателя.
  • Ray casting (рейкастинг ) (англ. ray casting ). Сцена рассматривается, как наблюдаемая из определённой точки. Из точки наблюдения на объекты сцены направляются лучи, с помощью которых определяется цвет пиксела на двумерном экране. При этом лучи прекращают своё распространение (в отличие от метода обратного трассирования), когда достигают любого объекта сцены либо её фона. Возможно использование каких-либо очень простых способов добавления оптических эффектов. Эффект перспективы получается естественным образом в случае, когда бросаемые лучи запускаются под углом, зависящим от положения пикселя на экране и максимального угла обзора камеры.
  • Трассировка лучей (англ. ray tracing ) похожа на метод бросания лучей. Из точки наблюдения на объекты сцены направляются лучи, с помощью которых определяется цвет пиксела на двумерном экране. Но при этом луч не прекращает своё распространение, а разделяется на три компонента, луча, каждый из которых вносит свой вклад в цвет пиксела на двумерном экране: отражённый, теневой и преломленный. Количество таких разделений на компоненты определяет глубину трассирования и влияет на качество и фотореалистичность изображения. Благодаря своим концептуальным особенностям, метод позволяет получить очень фотореалистичные изображения, но при этом он очень ресурсоёмкий, и процесс визуализации занимает значительные периоды времени.
  • Трассировка пути (англ. path tracing ) содержит похожий принцип трассировки распространения лучей, однако этот метод является самым приближенным к физическим законам распространения света. Также является самым ресурсоёмким.

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

Математическое обоснование

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

Основное уравнение

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

Неформальное толкование таково: Количество светового излучения (L o), исходящего из определённой точки в определённом направлении есть собственное излучение и отражённое излучение. Отражённое излучение есть сумма по всем направлениям приходящего излучения (L i), умноженного на коэффициент отражения из данного угла. Объединяя в одном уравнении приходящий свет с исходящим в одной точке, это уравнение составляет описание всего светового потока в заданной системе.

Программное обеспечение для рендеринга - рендеры (визуализаторы)

  • 3Delight
  • AQSIS
  • BMRT (Blue Moon Rendering Tools) (распространение прекращено)
  • BusyRay
  • Entropy (продажи прекращены)
  • Fryrender
  • Gelato (разработка прекращена в связи с покупкой NVIDIA , mental ray)
  • Holomatix Renditio (интерактивный рейтрейсер)
  • Hypershot
  • Keyshot
  • Mantra renderer
  • Meridian
  • Pixie
  • RenderDotC
  • RenderMan (PhotoRealistic RenderMan, Pixar’s RenderMan или PRMan)
  • Octane Render
  • Arion Renderer

Рендереры, работающие в реальном (или почти в реальном) времени.

  • VrayRT
  • Shaderlight
  • Showcase
  • Rendition
  • Brazil IR
  • Artlantis Render
Пакеты трёхмерного моделирования, имеющие собственные рендереры
  • Autodesk 3ds Max (Scanline)
  • e-on Software Vue
  • SideFX Houdini
  • Terragen , Terragen 2

Таблица сравнения свойств рендеров

RenderMan mental ray Gelato (разработка прекращена) V-Ray finalRender Brazil R/S Turtle Maxwell Render Fryrender Indigo Renderer LuxRender Kerkythea YafaRay
совместим с 3ds Max Да, через MaxMan встроен Да Да Да Да Нет Да Да Да Да Да Нет
совместим с Maya Да, через RenderMan Artist Tools встроен Да Да Да Нет Да Да Да Да Да Нет
совместим с Softimage Да, через XSIMan встроен Нет Да Нет Нет Нет Да Да Да Да Нет
совместим с Houdini Да Да Нет Нет Нет Нет Нет Нет Да Да Нет Нет
совместим с LightWave Нет Нет Нет Нет Нет Нет Нет Да Да Нет Нет Нет
совместим с Blender Нет Нет Нет Нет Нет Нет Нет Нет Нет Да Да Да Да
совместим с SketchUp Нет Нет Нет Да Нет Нет Нет Да Да Да Нет Да Нет
совместим с Cinema 4D Да (начиная с 11-ой версии) Да Нет Да Да Нет Нет Да Да Да Да Нет, заморожен Нет
платформа Microsoft Windows , Linux , Mac OS X Microsoft Windows , Linux , Mac OS X
biased, unbiased (без допущений) biased biased biased biased biased biased biased unbiased unbiased unbiased unbiased
scanline Да Да Да Нет Нет Нет Нет Нет Нет Нет Нет
raytrace очень медленный Да Да Да Да Да Да Нет Нет Нет Нет Да
алгоритмы Global Illumination или свои алгоритмы Photon, Final Gather (Quasi-Montecarlo) Light Cash, Photon Map, Irradiance Map, Brute Force (Quasi-Montecarlo) Hyper Global Illumination, Adaptive Quasi-Montecarlo, Image, Quasi Monte-Carlo Quasi-Montecarlo, PhotonMapping Photon Map, Final Gather Metropolis Light Transport Metropolis Light Transport Metropolis Light Transport Metropolis Light Transport, Bidirectional Path Tracing
Camera - Depth of Field (DOF) Да Да Да Да Да Да Да Да Да Да Да Да Да
Camera - Motion Blur (vector pass) очень быстрый Да быстрый Да Да Да Да Да Да Да Да Да
Displacement быстрый Да быстрый медленный, 2d и 3d медлленный Нет быстрый Да Да Да Да
Area Light Да Да Да Да Да Да Да Да Да Да
Glossy Reflect/Refract Да Да Да Да Да Да Да Да Да Да Да Да
SubSurface Scattering (SSS) Да Да Да Да Да Да Да Да Да Да Нет Да
Standalone Да Да Да 2005 года (сырая) Нет Нет Нет Да Да Да
текущая версия 13.5,2,2 3.7 2.2 2.02a Stage-2 2 4.01 1.61 1.91 1.0.9 v1.0-RC4 Kerkythea 2008 Echo 0.1.1 (0.1.2 Beta 5a)
год выпуска 2000 (?) (?) 2006 2011 2008
библиотека материалов Нет 33 My mentalRay Нет 2300+ vray-materials 30 оф. сайт 113 оф. сайт Нет 3200+ оф. сайт 110 оф. сайт 80 оф. сайт 61 оф. сайт
основан на технологии liquidlight Metropolis Light Transport
normal mapping
IBL/HDRI Lighting Да
Physical sky/sun Да Да
официальный сайт MaxwellRender.com Fryrender.com IndigoRenderer.com LuxRender.net kerkythea.net YafaRay.org
страна производитель США Германия США Болгария Германия США Швеция Испания Испания
стоимость $ 3500 195 бесплатное 1135 (Super Bundle) 999 (Bundle) 899 (Standart) 240 (Educational) 1000 735 1500 995 1200 295€ бесплатное, GNU бесплатное бесплатное, LGPL 2.1
основное преимущество Baking высокая скорость (не очень высокое качество) бесплатное бесплатное бесплатное
компания производитель Pixar mental images (c 2008 NVIDIA) NVIDIA Chaos Group Cebas SplutterFish Illuminate Labs Next Limit Feversoft

См. также

  • Алгоритмы использующие z-буфер и Z-буферизация
  • Алгоритм художника
  • Алгоритмы построчного сканирования like Reyes
  • Алгоритмы глобального освещения
  • Излучательность
  • Текст как изображение

Хронология важнейших публикаций

  • 1968 Ray casting (Appel, A. (1968). Some techniques for shading machine renderings of solids. Proceedings of the Spring Joint Computer Conference 32 , 37-49.)
  • 1970 Scan-line algorithm (Bouknight, W. J. (1970). A procedure for generation of three-dimensional half-tone computer graphics presentations. Communications of the ACM )
  • 1971 Gouraud shading (Gouraud, H. (1971). Computer display of curved surfaces. IEEE Transactions on Computers 20 (6), 623-629.)
  • 1974 Texture mapping PhD thesis , University of Utah.)
  • 1974 Z-buffer (Catmull, E. (1974). A subdivision algorithm for computer display of curved surfaces. PhD thesis )
  • 1975 Phong shading (Phong, B-T. (1975). Illumination for computer generated pictures. Communications of the ACM 18 (6), 311-316.)
  • 1976 Environment mapping (Blinn, J.F., Newell, M.E. (1976). Texture and reflection in computer generated images. Communications of the ACM 19 , 542-546.)
  • 1977 Shadow volumes (Crow, F.C. (1977). Shadow algorithms for computer graphics. Computer Graphics (Proceedings of SIGGRAPH 1977) 11 (2), 242-248.)
  • 1978 Shadow buffer (Williams, L. (1978). Casting curved shadows on curved surfaces. 12 (3), 270-274.)
  • 1978 Bump mapping (Blinn, J.F. (1978). Simulation of wrinkled surfaces. Computer Graphics (Proceedings of SIGGRAPH 1978) 12 (3), 286-292.)
  • 1980 BSP trees (Fuchs, H. Kedem, Z.M. Naylor, B.F. (1980). On visible surface generation by a priori tree structures. Computer Graphics (Proceedings of SIGGRAPH 1980) 14 (3), 124-133.)
  • 1980 Ray tracing (Whitted, T. (1980). An improved illumination model for shaded display. Communications of the ACM 23 (6), 343-349.)
  • 1981 Cook shader (Cook, R.L. Torrance, K.E. (1981). A reflectance model for computer graphics. Computer Graphics (Proceedings of SIGGRAPH 1981) 15 (3), 307-316.)
  • 1983 Mipmaps (Williams, L. (1983). Pyramidal parametrics. Computer Graphics (Proceedings of SIGGRAPH 1983) 17 (3), 1-11.)
  • 1984 Octree ray tracing (Glassner, A.S. (1984). Space subdivision for fast ray tracing. 4 (10), 15-22.)
  • 1984 Alpha compositing (Porter, T. Duff, T. (1984). Compositing digital images. 18 (3), 253-259.)
  • 1984 Distributed ray tracing (Cook, R.L. Porter, T. Carpenter, L. (1984). Distributed ray tracing. Computer Graphics (Proceedings of SIGGRAPH 1984) 18 (3), 137-145.)
  • 1984 Radiosity (Goral, C. Torrance, K.E. Greenberg, D.P. Battaile, B. (1984). Modelling the interaction of light between diffuse surfaces. Computer Graphics (Proceedings of SIGGRAPH 1984) 18 (3), 213-222.)
  • 1985 Hemi-cube radiosity (Cohen, M.F. Greenberg, D.P. (1985). The hemi-cube: a radiosity solution for complex environments. Computer Graphics (Proceedings of SIGGRAPH 1985) 19 (3), 31-40.)
  • 1986 Light source tracing (Arvo, J. (1986). Backward ray tracing. SIGGRAPH 1986 Developments in Ray Tracing course notes )
  • 1986 Rendering equation (Kajiya, J.T. (1986). The rendering equation. Computer Graphics (Proceedings of SIGGRAPH 1986) 20 (4), 143-150.)
  • 1987 Reyes algorithm (Cook, R.L. Carpenter, L. Catmull, E. (1987). The reyes image rendering architecture. Computer Graphics (Proceedings of SIGGRAPH 1987) 21 (4), 95-102.)
  • 1991 Hierarchical radiosity (Hanrahan, P. Salzman, D. Aupperle, L. (1991). A rapid hierarchical radiosity algorithm. Computer Graphics (Proceedings of SIGGRAPH 1991) 25 (4), 197-206.)
  • 1993 Tone mapping (Tumblin, J. Rushmeier, H.E. (1993). Tone reproduction for realistic computer generated images. IEEE Computer Graphics & Applications 13 (6), 42-48.)
  • 1993 Subsurface scattering (Hanrahan, P. Krueger, W. (1993). Reflection from layered surfaces due to subsurface scattering. Computer Graphics (Proceedings of SIGGRAPH 1993) 27 (), 165-174.)
  • 1995 Photon mapping (Jensen, H.J. Christensen, N.J. (1995). Photon maps in bidirectional monte carlo ray tracing of complex objects. Computers & Graphics 19 (2), 215-224.)
  • 1997 Metropolis light transport (Veach, E. Guibas, L. (1997). Metropolis light transport. Computer Graphics (Proceedings of SIGGRAPH 1997) 16 65-76.)

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

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

При начале работы, безусловно, стоит выбрать тот рендер, который вам больше симпатизирует. Их список большой, можно остановится на Renderman от Pixar, если же вы хотите его использовать под Maya, то тогда стоит установить версию именно Renderman for Maya, прописанную специально под нее или RenderManArtistTools. VRay сравнительно легок в изучении, имеет хороший уровень качества визуализации. Также можно воспользоваться такими визуализаторами, как fryender и mental ray, которые имеют свои преимущества, или YafaRay - абсолютно бесплатной программой. В общем ассортимент велик, главное выбирать отдельно рендеры от 3D-пакетов, а не пользоваться установленными там по умолчанию. Так ваше изображение будет более качественным и реалистичным.

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

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

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

Происхождение термина

Слово "рендер" (или "рендеринг") пришло, как и многое, связанное с IP-технологиями, из английского языка. Происходит оно от старофранцузского rendre , означающего "делать", "дать", "возвратить", "вернуть". Более глубокие корни этого глагола восходят к древней латыни: re - префикс, означающий "назад", и dare - "давать".

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

Рендер и визуализация

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

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

Определения

Это слово имеет несколько значений:

  • Рендер, или рендеринг, - отрисовка, процесс получения технического или художественного плоскостного на основе трехмерных цифровых моделей, созданных при помощи специальных программных пакетов - Blender, 3D Max, CINEMA, Maya и др.
  • Рендер - это, собственно, результат такого процесса - растровая а также изображение героев и окружения в компьютерных играх или созданные тридэшниками видеофайлы, используемые при производстве фильмов - обычных или анимационных.
  • Рендер, или рендерер, - так называют специальный софт, с помощью которого и происходит преобразование 3D-моделей в изображение. Такие программы могут быть встроены в графический пакет или применяться в виде отдельных приложений: RenderMan, Mental Ray, V-ray, Corona, Brasil, Maxwell, FinalRender, Fryrender, Modo и многие другие. Рендеры, как и все, связанное с цифровыми технологиями, постоянно обновляются. Они отличаются алгоритмами, применяемыми для обсчета физических характеристик моделей и их окружения. На их основе создаются целые системы рендеринга, позволяющие создавать свои материалы, светильники, камеры и т. п.

Типы рендера: online и пререндеринг

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

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

Методы просчета сцены

Выбор способов получения изображения зависит от конкретной задачи и часто от и опыта визуализатора. Разрабатываются всё новые системы рендера - или узкоспециализированные, или универсальные. Сегодня в основе самых распространенных программ-рендеров лежат три основных вычислительных метода:

  • Растеризация (Scanline) - метод, при котором изображение создается просчетом не отдельных точек-пикселей, а целых граней-полигонов и крупных участков поверхностей. Текстуры, определяющие свойства объектов, как и свет в сцене, зафиксированы в виде неизменных данных. Получаемое изображение часто не отражает перспективных изменений освещенности, и т. д. Чаще применяется в системах для просчета сцен в играх и в видеопродакшене.
  • Трассировка лучей (Raytracing) - физика сцены просчитывается на основе лучей, исходящих из объектива виртуальной камеры и анализа взаимодействия каждого луча с объектами, с которыми он встречается в сцене. В зависимости от количества и качества таких «отскоков» имитируется отражение или его цвет, насыщенность и т. д. Качество получаемой картинки по сравнению с растеризацией значительно выше, но за её реалистичность приходится платить повышенным расходом ресурсов.
  • Расчет отраженного света (Radiosity) - каждая точка, каждый пиксель изображения наделяется цветом, который не зависит от камеры. На него влияют глобальные и местные источники света и окружение. Такой метод позволяет рассчитать появление на поверхности модели цветовых и световых рефлексов от рядом расположенных объектов.

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

Последовательность рендера

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

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

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

Постобработка результатов рендера

Для конкретной задачи логично применять особенные методики визуализации. В архитектуре требуются другие изобразительные средства, чем при создании технической иллюстрации. Рендер экстерьера, например, часто требует от исполнителя владения графическими пакетами по работе с растровыми изображениями, самый популярный из которых - Adobe Photoshop. Причем не всегда это делается для повышения фотореалистичности. Современные тенденции в архитектурной подаче предусматривают имитацию ручной графики - акварели, гуаши, черчения тушью и т. д.

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

Рендер и производительность системы

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

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

Рендер-ферма

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

Связавшись с поставщиком таких услуг, список которых всегда можно найти в Интернете, согласовав стоимость и условия подготовки файлов, можно существенно сэкономить на скорости работы и добиться необходимого уровня качества итогового изображения. В распоряжении таких компаний бывает до нескольких тысяч процессоров и сотни терабайт оперативки. Рендер-ферма рассчитывает стоимость работ, исходя из объема исходного файла и срока выполнения визуализации. Например, стоимость одного кадра разрешением 1920х1080, для рендеринга которого на стандартном оборудовании потребуется 3 часа, составляет около 100 рублей. Сцена просчитывается в течение 8 минут.

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

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