понедельник, 31 декабря 2012 г.

V-Ray 4 Maya | Shaders Guide | VRay Mtl, VRay Blend Mtl

Здравствуйте друзья!
Наконец я начал работу над второй серией гидов по шейдерам, на этот раз, он посвящен системе визуализации V-Ray для Autodesk Maya. Во введении, мы познакомились с шейдерами, включенными в поставку V-Ray 4 Maya, в различных категориях шейдеров в Hypershade.
Начиная с этого поста, мы с вами будем знакомиться с этими шейдерами более детально, как и в mental ray 4 maya | Shaders Guide, здесь мы рассмотрим реализацию шейдеров V-Ray в интерфейсе Maya их параметры и приведем примеры их влияния на свойства материалов.

Хотите подробностей? Прошу под кат.

четверг, 6 декабря 2012 г.

dimson3d @ CG EVENT 2012

Ну, вот и закончился сезон 2012 года моих выступлений и поездок. Завершающим этапом была поездка в Москву, на юбилейный CG EVENT 2012. Да, десять ивентов это не шутка, каждый год, проводится сие мероприятие и каждый год что-то новое среди уже известного и привычного. Юбилейный ивент дал массу идей, новых целей и стремления к совершенству. Российская CG индустрия не стоит на месте, все бурно развивается и взрывает сознание любого, кто не окрепшим подходит к этому мощному взрывному набору. Ну ладно, можно очень далеко уйти в философские дебри :).
dimson3d @ CG EVENT 2012. MOSCOW.

среда, 5 декабря 2012 г.

CG EVENT 2012. MOSCOW: Презентация с конференции


Ну вот и закончился очередной сезон выступлений и докладов. Завершающим этапом моих выступлений 2012 года, стала международная конференция CG EVENT 2012. Конференция прошла очень успешно, была масса докладов, огромное количество людей пришли посмотреть на то, как делается современное кино.
В этом году, как упоминалось в предыдущем посте, я участвовал с новым докладом о GPU-Accelerated визуализаторах, что произошло с ними за 2 года, с какими проблемами может столкнуться пользователь и чего не хватает на данный момент времени.
Слайд из презентации «GPU-ускорение в визуализации 2 года спустя».
Сегодня, я предлагаю вам загрузить свою презентацию, и познакомиться с ней. Если вы были на конференции, вы сможете посмотреть видео-версию доклада с сайта конференции по специальному доступу (выдавался при регистрации). Помимо этого, я подготовлю в дальнейшем видео-версию данного доклада и размещу в блоге.

Загрузить презентацию>> (PDF, 2.7 Mb)

Кто был на конференции и моем докладе, помнят, что я сделал пару тестов в визуалмзации средствами CPU и GPU версии V-Ray RT. Т.к. сразу не заметил различий допустил пару ошибок в объяснении. Для начала взгляните на эти две картинки:
Пример визуализации средствами V-Ray Rt CPU (Слева) и V-Ray RT GPU (Справа).
Кажется, что они идентичны, но на самом деле, в угоду скорсоти и просто из-за далекого несовершенства GPU версии V-Ray RT, правая илюстрация показывает, что он не справился с визуализацией карты рельефности (Bump Map) и с имитацией более корректных отражений и бликов на стекле. При этом, стреки часов выдали мыло. Но с другой стороны, показатель Path/pixel просто зашкаливает, при выполнении задачи средствами GPU. Следует заметить, что это совсем не так плохо, еще пара лет, и возможно, что GPU рендеры позволят нам получать высококачесвенный результат за минимальное время. А если разработчики получат необходимые и удобные инструменты, не привязанные к конкретной платформе или архитектуре, то мы перейдем полностью на рельсы гибридных вычислений CPU+GPU, об этом я говорил в своем докладе 2 декабря.

P.S. Чуть позже, будет выпущен отчет о конференции. Следите за обновлениями :)

среда, 28 ноября 2012 г.

И грядет СОБЫТИЕ!

Итак друзья, завтра (29 ноября), я уезжаю в Москву на Юбилейный CG EVENT 2012. Уже прошло ровно 3,5 года, как я так или иначе посещаю данную конференцию. А сегодня, еду с последним в этом сезоне докладом, который уже давно назревал сам собой, но все время я его оттягивал. Но обо всем по порядку.
Немного истории. Первый раз, я попал на CG EVENT в 2009 году, сразу после окончания института и получения диплома, бухать в качестве окончившего вуза бездельника не хотелось, а денежки завалялись, я решил поехать на летний CG EVENT 2009 (помните, были такие ивенты еще до CG EVENT EURO). Когда приехал, получил вот такой серебряный бэйдж (в самом центре фотки). Я тогда поехал как журналист и потом накатал мега отчет.
Мои бэйджи с предыдущих CG EVENT
Я помню, как ни хрена никого, не зная подошел к Сергею и познакомился с ним :) было весело, он стоит такой большой, а я ему рассказываю о себе малом :) зеленый был тогда еще. Первый ивент прошел очень хорошо, мы были с Ваней Угличиным (Dark’ом), он тоже в первый раз был на CG EVENT и оба под впечатлением, еще долго обсуждали прошедший CG EVENT.
А потом был зимний CG EVENT 2009, где мы со Skif’ом, Dark’ом и другими ребятами, провели два отличных дня, а я после этого вновь накатал мега-отчет. Бейдж с зимнего ивента на фотке слева в виде GPU, тогда тема GPU только зарождалась, были первые попытки реализовать и визуализацию и динамику средствами GPU, это сейчас уже куда не плюнь есть рендеры и симуляторы с GPU фичами, а тогда это было «ВАУ!», как то вот так вот :).
Год спустя, зимой 2010 состоялся CG EVENT 2010. STEREO, этот ивент был посвящен продакшену стерео кино, и все что связано с этим направлением, много было речей о создании объемных картинок, насколько это все весело и трудоемко, как смотреть кино в стерео и т.п. Конференция проходила в КРОКУС ЭКСПО, не самое лучшее место для проведения поинтов, но запомнилось отлично :).
Вид видео-версии моего доклада с CG EVENT 2010.
Тогда, я читал первый свой доклад на CG EVENT, он был посвящен GPU Accelerated рендерам, народ ни черта не понял, о чем я рассказывал, т.к. тема в тот момент все еще была очень ограничена и не пользовалась такой популярностью. Но на том ивенте я познакомился с ребятами из Chaos Group, что дало мне возможность написать серию обзоров GPU рендеров и начать очень продуктивное сотрудничество.

Мою презентацию с CG EVENT 2010, вы можете посмотреть здесь>>

В предыдущем году, со Skif’ом мы вновь отправились на CG EVENT, это был зимний CG EVENT 2011, в Сокольниках, нам вообще удобно в Сокольнках, у нас там Dark не далеко проживает, и поэтому у нас все было в шаговой доступности. Благодаря переезду в Сокольники, удалось избавиться от главной проблемы всех предыдущих ивентов – еда! Да, с едой сейчас все ОК, есть куча кафешек, есть ресторанчики да вообще есть просто магазины с едой! Но самое важное, что запомнилось – «Перцовка!», он шла хорошо, отличные сувенирные стопки были востребованы публикой в общем, ивент удался более чем . На прошлом CG EVENT мы были просто посетителями, но надо что-то докладывать новое, и вот я еду вновь с большим докладом.
1 и 2 декабря 2012 года, пройдет десятая международная конференция CG EVENT 2012. MOSCOW. Место проведения Сокольники, Holiday Inn, как и в 2011 году, место порадует обилием еды и напитков, а возможно в очередной раз будет «перцовка»  организаторы хранят в тайне многие секреты. На 10 CG EVENT, я представлю свой «философский тракт» на тему GPU Accelerated визуализаторов, поделюсь с вами своими мыслями и наблюдениями, какие тенденции сейчас намечаются в решениях, что изменилось за последние 2 года, с момента моего первого доклада.
Вводный слайд к моей презентации на CG EVENT 2012.
Индустрия GPU рендеров разрослась вширь и ввысь. GPU рендеры появляются как грибы после дождя и далеко не всегда успеваешь за ними всеми проследить.
Определились лидеры рынка, есть и догоняющие, а есть те, кто держится в стороне или просто уже прекратили свое существование.
Слайд о платформе NVIDIA Maximus
В очередном часовом докладе, я расскажу об изменениях в этой области за последние 2 года. По роду деятельности приходится сталкиваться с массой вопросов, связанных с рендерингом на GPU я решил объединить ответы на ряд вопросов в этом докладе.
- Вычисления на GPU: CUDA или Open CL?
- Quadro, Tesla и GeForce что выбирать?
- Существующие решения (рендеры)
- Области реального применения
- Старый\новый iray – что имеем и чего ждать
- V-Ray RT – переход на рельсы CUDA
- Octane – жив и бодр
- ARION – малоизвестная реализация Frirender
- Игры с Kepler
- Open Source тематика (Blender & Cycles)
- Классические рендеры на GPU – их стоит ждать?
Если у вас есть вопросы, которые вам непонятны или просто хочется узнать больше о GPU рендеринге, обращайтесь ко мне, я буду на конференции полных два дня, и меня легко можно будет найти у стенда Chaos Group или JCGroup. А также после моего доклада. Доклад «GPU-accelerated рендеры: два года спустя» пройдет 2 декабря с 12.30 – до 13.30 в зале «Красные ворота». Буду рад всех вас видеть.

Где можно следить за CG EVENT 2012?
Все очень просто, следить за событием можно в следующих местах:
- Мой блог>>
- Мой Twitter>>
- Новости на RENDER.RU>>

До скорой встречи, ваш dimson3d! :)

среда, 21 ноября 2012 г.

mental ray 4 Maya | Shaders Guide | шейдеры mib_illum_*

Здравствуйте друзья, в этом посте мы с вами продолжим знакомиться с шейдерами mental ray 4 maya. В предыдущих постах, мы с вами рассмотрели первые из шейдеров в группе Materials. Здесь мы познакомимся с основополагающими шейдерами и методами затенения, которые заложены практически во всех системах визуализации.

Такими шейдерами в mental ray являются: mib_illum_lambert, mib_illum_phong, mib_illum_ward, mib_illum_ward_deriv, mib_illum_cooktorr, mib_illum_blinn и mib_illum_hair. В mental ray они относятся к группе шейдеров Illumination, а в Maya находятся в группе Materials (mental ray).
Шейдеры mib_illum_* в интерфейсе Hypershade в Maya.

Модели затенения по Блинну (Blinn), Ламберту (Lambert) и Фонгу (Phong) Были разработаны в далеких 80-х годах XX столетия. Они стали результатов различных экспериментов над затенением полигональных поверхностей и в большинстве своем вышли из стен ныне легендарной и известной во всем мире студии PIXAR.


пятница, 9 ноября 2012 г.

Доклад с AU 2012 и введение в mental ray Standalone


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

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

Презентация с Autodesk University, в расширенной версии разрослась до большого объема информации. Поэтому она была разделена на 3 части, с которых я вам и предлагаю начать наше знакомство с mental ray Standalone. В презентации дан общий вводный материал по Scene Description Language (.mi file), который лежит в основе mental ray и используется им для формирования изображений. В дальнейшем, мы детально рассмотрим его, и какие возможности дает полный контроль над сценой.

MRS ARP* Presentation Extended Cut

Часть первая:


Часть вторая:


Часть третья:


В расширенной версии доклада “mental ray Standalone. Расширенные возможности визуализации” сделан более обширный охват основных элементов сцены экспортируемых в формат .mi.
Учитывая, что это был теоретический материал, я начал создавать серию практических скринкастов по работе с mental ray Standalone. Первый скринкаст, посвящен экспорту трехмерной сцены из Autodesk Maya в формат .mi и знакомство с содержимым файла.

Вы можете загрузить презентацию здесь>> (PDF, 15 Mb)

MRS_ARP2012-01: Экспорт сцены в формат .mi (Maya 2 mr)



В этом скринкасте показан экспорт сцены из Autodesk Maya в формат .mi. Немного затронуты общие вопросы по реализации mental ray в Maya, какие ноды содержат дополнительные атрибуты для mental ray и как выполняется экспорт сцены. Следующий скринкаст будет посвящен созданию первой сцены с использованием Scene Description Language и знакомству с работой в mental ray Standalone.

Загрузить сцену с примером, вы можете здесь>> (ZIP Archive)
- Сцена подготовлена для Maya 2011 и выше.
- Файл sample.mi будет визуализироваться в mental ray Standalone версии 3.8 и выше.

P.S. Напоминаю, что 22 ноября, я выступаю в Челябинске с докладом о V-Ray for Maya. Это будет значительно расширенная версия доклада, которая содержит ряд новых, до селе не опубликованных материалов. Жду вас на САПРяжение в Челябинске>>

До скорой встречи, ваш dimson3d :)

* - MRS ARP - mental ray Standalone Advanced Rendering Production, большой курс по возможностям mental ray Standalone и явялется частью серии по теории визуализации.

вторник, 16 октября 2012 г.

dimson3d @ САПРяжение | Екатеринбург

Приветствую вас дорогие друзья! На прошлой неделе я вернулся с конференции Autodesk University Russia проходившей в Москве, а сейчас уже во всю готовлюсь к следующей презентации в родном Екатеринбурге.

30 октября 2012 года, пройдет очередная САПР-тусовка для пользователей ПО Autodesk — САПРяжение | Екатеринбург. САПРяжение — мини конференция по различным продуктам Autodesk и их партнеров. В этом году я так же выступлю с докладом посвященным V-Ray for Maya. Как известно, Chaos Group являются давними партнерами Autodesk и выпустили V-Ray практически ко всем программным пакетам Autodesk (3ds Max, Maya и Softimage).

Это обновленный доклад по V-Ray for Maya который был озвучен на мини-событии Ural CG Artists Meeting в мае 2012 года.
В докладе будут затронуты следующие темы:

  • Немного о Maya
  • Почему V-Ray для Maya?
  • Возможности рендерера
  • V-Ray RT в Maya и интерактивная preview визуализация
  • Главные отличия от версии для 3ds Max
  • V-Ray Standalone и V-Ray SDK's

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

Приходите 30 октября в отель «Московская горка», расположенном по адресу: ул. Московская, 131. Время с 9 до 18 часов (может и дольше, смотря как гости захотят пообщаться).

Не забудьте зарегистрироваться, это можно сделать здесь>> (Регистрация до 23 октября).


[ENG] dimson3d @ SAPRyazhenie | Ekaterinburg

October 30, 2012, will host the next party of Autodesk CAD software users — SAPRyazhenie | Ekaterinburg (САПРяжение | Екатеринбург). SAPRyazhenie (САПРяжение) — mini conference on various Autodesk products and their partners. This year, I also make a presentation about V-Ray for Maya. As you know, Chaos Group are long-term partners with Autodesk and released V-Ray for all M&E software solutions from Autodesk (3ds Max, Maya and Softimage).
The presentation will cover the following topics:

  • Intro to Maya
  • Why V-Ray for Maya?
  • Renderer features
  • V-Ray RT in Maya and interactive workflow
  • The main differences from the version for 3ds Max
  • V-Ray Standalone and V-Ray SDK's

Alternatively, you can contact me with your questions by modern rendering tools and learn something new, and of course I'll try to help in questions of GPU rendering.

When and Where?

  • 30 october 2012
  • Russian Federation, Ekaterinburg, Moskovskaya Street 131
  • Hotel “Moskovskaya Gorka”
  • Start\End event: 9.00 – 18.00 (+ after event party)

Registration to event>> (Registration closes October 23, 2012)

среда, 19 сентября 2012 г.

dimson3d @ Autodesk University Russia 2012


3 – 4 октября состоится очередная мега-конференция от Autodesk – Autodesk University Russia 2012, на которой я непременно буду присутствовать и даже прочитаю небольшой доклад, но обо всем по порядку.
Autodesk University Russia 2012 – это место встречи профессионалов в области проектирования, анализа, дизайна и визуализации. Вы сможете узнать о новых тенденциях в области САПР, получить представление о различных решениях и технологиях и выбрать именно те продукты и услуги, которые будут полезны именно вашему предприятию.
Конференция Autodesk University Russia – трансформировавшийся Autodesk Форум, проводившийся в предыдущие годы. Я уже писал об одном из Autodesk Форумов в 2008 году, тогда Autodesk провела отличный поинт в Екатеринбурге, сейчас это мероприятие разрослось настолько, что перешло на международный уровень и дает возможность для обмена опытом не только местным специалистам, но и между зарубежными коллегами.

Мой новый доклад.
В этом году, я начну серию своих презентаций и новых докладов именно с Autodesk University. В программе конференции я выступлю с докладом о системе визуализации mental ray Standalone, о его значении в продакшене и как он может быть полезен пользователям 3ds Max, Maya и Softimage.
Пара слайдов из презентации «mental ray Standalone – расширенные возможности визуализации»
Презентация затрагивает следующие темы:
- Общие сведения о mental ray Standalone
- Реализация mental ray в 3D пакетах (3ds max, Maya и Softimage)
- Экспорт данных из 3D приложения и работа с текстовым редактором
- Оптимизация сцен и данных для визуализации
- Пример
- Сетевой рендеринг (кратко)
И это только малая часть, если говорить о mental ray Standalone, то на него можно отвести целый день, ведь это не просто плагин к программе 3D анимации, а именно целая рендер-система не ограниченная ни чем.
После презентации, я всех приглашаю в фойе конференции, где мы сможем с вами пообщаться и я помогу вам ответить на вопросы, возникшие у вас в ходе презентации.

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

До скорой встречи, ваш dimson3d :)

суббота, 8 сентября 2012 г.

Современные методы визуализации – Set 1


«Modern rendering techniques – Set 1»
Серия статей и презентаций посвящена современным методам визуализации и применению GPU в ускорении рабочего процесса специалистов визуализации.

GPU или CPU?
Ответ на этот вопрос сейчас выглядит так – «Лучше связка – CPU+GPU!». Объяснить это достаточно просто, GPU всегда выступал как ускоритель, возможности GPU в выполнении последовательных задач значительно ниже, чем у классического CPU архитектуры x86 (x86_64). Однако, GPU прекрасно справляется с решением множества однотипных задач (параллельных вычислениях), коими и являются современными системы визуализации основанные на алгоритмах Monte-Carlo, Metropolis или Path Tracing.
Современный GPU, обладает большим количеством вычислительных ядер, которые при, казалось бы, небольшой частоте, способны обработать гораздо больше данных за счет их количества. И современные системы визуализации, такие как NVIDIA iray, Chaos Group V-Ray RT GPU и ряд других продуктов, реализуют этот подход в своем инструментарии.
Для примера, посмотрите на две, казалось бы, одинаковые картинки, одна из нах визуализирована средствами CPU, другая визуализирована средствами CPU+GPU.
Пример визуализации сцены средствами только CPU, и пример визуализации сцены средствами CPU+GPU.
Версия изображения, созданная средствами только CPU достаточно шумна, т.к. CPU требуется больше времени на вычисления, версия же полученная средствами CPU+GPU намного чище, т.к. здесь был применен GPU для ускорения вычислений, и было обработано гораздо больше данных за тоже время, нежели средствами только CPU.
Пожалуй, одним из важных достоинств современных GPU является масштабирование, сейчас, в одной рабочей станции можно задействовать несколько GPU не только для визуализации графики в интерактивных приложениях, но и для увеличения производительности при визуализации или в вычислениях. Особенно полезным будет применение в системе двух или даже трех GPU, где первый отвечает за визуализацию графики в окнах проекций и интерфейса пользователя, другие GPU участвует только в вычислениях и представлены в виде дополнительного ускорителя. Ранее такой подход был не реализован в связи с отсутствием поддержки этой функции в программном обеспечении. Но сейчас, эта возможность реализована практически во всех современных движках визуализации и программах.
В августе 2012 года, NVIDIA представила второе поколение своей платформы NVIDIA® Maximus™. Платформа NVIDIA® Maximus™ представляет собой мощное решение для применения в профессиональных рабочих станциях и позволяет максимально реализовать и использовать мощь современных систем с NVIDIA Quadro и NVIDIA Tesla.
Платформа реализована за счет четырех компонентов – GPU NVIDIA Quadro, ускорителя NVIDIA Tesla, драйвера NVIDIA Quadro\Tesla и поддерживающего Maximus приложения. За счет единого драйвера для Quadro и Tesla, снимается проблема применения различных драйверов или программных компонентов, которые могут вызывать сбои программного обеспечения или снижать производительность работы программы. Не стоит забывать, что если вы используете GPU GeForce, можно также взять два или три GPU GeForce и под управлением единого драйвера осуществлять работу с ними, но из-за не самой лучшей реализации драйвера под применение с профессиональными приложениями, могут возникнуть трудности.

Новый процесс
За последние четыре года, с начала развития области ускорения вычислений с помощью GPU, было выпущено немало продуктов для визуализации, которые зародили новое направление в визуализации. Однако сами методы и алгоритмы были разработаны еще в середине 90-х годов XX века, и только сейчас, появилась возможность их реализовать на должном уровне по производительности и качеству получаемого изображения. Важную роль в этом сыграли графические процессоры (GPU) и появление таких API как NVIDIA CUDA или OpenCL.
Сейчас, в современном программном обеспечении реализуется возможность интерактивной preview визуализации – когда вы, работая над сценой, сразу можете отследить максимально приближенный результат, а финальную визуализацию выполнить средствами классического визуализатора или комбинированного решения.
Лучше всего, эта концепция реализована в Autodesk 3ds Max 2012 – 2013 версии и с помощью систем визуализации mental ray и v-ray. О них мы и поговорим в этой статье.
На протяжении последних трех лет, 3ds Max предоставляет пользователям возможность применения GPU для ускорения процессов визуализации, а с выходом 2013 версии пакета, 3ds Max предоставил пользователям не только полноценный GPU Accelerated визуализатор, но и интерактивные возможности в, казалось бы, давно забытом режиме ActiveShade.
Chaos Group, с выходом V-Ray 2.0 предоставила пользователям возможность использовать режим ActiveShade для интерактивной preview визуализации и своего GPU Accelerated движка – V-Ray RT CPU\GPU двумя годами ранее, чем спровоцировала еще больший переход многих пользователей на систему V-Ray.
Общая схема взаимодействия ПО и оборудования выглядит следующим образом.
Основу занимает работа с 3D приложением, им может быть как 3ds Max,  Maya или Softimage так и другое подобное приложение. Чаще всего, GPU выполняет задачи по визуализации трёхмерного пространства в окнах проекций, в целом достаточно одного GPU в системе. Это полезно когда вы работаете только над моделью, но если вы начнете применять для визуализации движок iray или V-Ray RT GPU, вам может потребоваться второй GPU для распределения задач по вычислениям, если нагрузить все вычисления на один GPU, производительность приложения буде снижена, или приложение прекратит отвечать на действия пользователя.
Первый GPU может быть использован для визуализации окон проекций (Viewports), а второй для выполнения вычислений движком визуализации (Rendering Engine). Все это находится под управлением графического драйвера и драйвера NIDIA CUDA, а также приложения, в котором осуществляется управление.
Реализация переключения между вычислительными устройствами и типами движка в iray renderer (3ds Max) и V-Ray RT в Maya.
При финальной визуализации с помощью iray или V-Ray RT GPU можно задействовать и основной GPU вашего компьютера, тем самым увеличив производительность, и сократить время визуализации.
Платформа NVIDIA Maximus как раз и реализует данный подход, за счет драйверов GPU и NVIDIA CUDA, GPU NVIDIA Quadro и NVIDIA Tesla. Просто, пользователь, работающий над проектом, сможет контролировать используемые вычислительные устройства из интерфейса приложения.
За счет применения нескольких GPU, процесс моделирования и визуализации не разбивается на отдельные этапы, а идут параллельно. На приведенной ниже схеме, показано, как сейчас реализована передача данных сцены в RT Engine и классический V-Ray. Для этого требуется всего один plug-in connector, который транслирует сцену в единый формат данных (.vrscene) и далее идет визуализация за счет выбранного движка.
Такие системы визуализации как NVIDIA iray или V-Ray RT, позволяют незамедлительно отследить за всеми изменениями в сцене, а именно положение объектов, изменение параметров источников света, изменение свойств материалов (шейдеров) и положения камеры и ее свойств. Такой наглядный способ отображения изменений, позволяет незамедлительно реагировать художнику на все действия в сцене.
Пример сцены, визуализируемой с помощью V-Ray RT GPU в Autodesk Maya.
Однако не стоит надеяться, что GPU Accelerated визуализаторы способны решать большинство задач, к сожалению, сейчас пока не реализован ряд необходимых функций, но именно preview визуализация, стала главным коньком у GPU Accelerated решений.
В ближайших релизах GPU Accelerated движков визуализации, будут реализованы многие функции необходимые современному художнику. Новая версия NVIDIA iray уже предоставляет ряд возможностей по визуализации большинства методов затенения, но когда они будут реализованы в интерфейсе 3ds Max и других пакетах пока неизвестно, на данный момент NVIDIA iray 3 поставляется в Bunkspeed Shot\Move\Pro версии 2012.5 и поддерживает следующие возможности:

  • iray 3.0 including support for Kepler based Nvidia Graphic Cards
  • Metallic Flakes
  • Round Edges
  • Motion Blur
  • New Render Passes have been added to further control final images. New supported passes include: Depth Pass for adding depth of field in post, Black Specular Pass for controlling a more realistic specular component, Roughness Pass which retains material roughness settings per part, Ambient Occlusion Pass for generating neutral shadows and an Object Pass to aid in separating your object from the background.
  • Gamma Correction added to the Camera Post-Process Attributes.
  • Brightness added to the Camera Post-Process Attributes.
  • All Camera Post-Processing options now apply to Raster rendering as well.
  • Ability to move and adjust the pivot precisely via a matrix in the part properties under the Model tab in the palette.
  • Real-Time Turntable which allows you to toggle and control an object on a turntable in realtime,
  • including speed, size, soft stop and start through a neat graphic interface and hotkeys.
  • Ability to put parts, groups and models into a “disabled” state. This will keep them in the project, but not show them in the viewport/render them, even if a “show all” is triggered.
  • “Rounded Gumdrop” Added to the Models available under the “Project > Create Model” option.
  • This is an ideal piece of geometry to apply environment maps onto for real-time presentation purposes.
  • Camera distance from look-at point on the “Camera Position” overlay is now exposed.
  • Ground shadow darkness/lightness slider for both raster and raytrace.
  • Follow and Aim Follow for Models, Cameras and Lights. This lets you bind any one of the listed assets to another allowing you to have multiple pivot points for a single object.
  • Local reflections in raster. This lets you reflect and light a model with other models in the scene.
  • Stepless gloss maps for raster.
  • Color dropped color and textures loaded as color maps are now automatically gamma adjusted to compensate for your screenspace gamma. Ultimately, this means that colors of textures or color dropped colors are now “correct” in the viewport.
  • Ability to change the render size, quality or time for a Queued item in Bunkspeed Queue.
  • Ability to prioritize queued items in Bunkspeed Queue by moving them “up” or “down”.
  • A project thumbnail is now sent to the Queue with the job without having to wait until it starts rendering to show a preview.
  • Procedural box mapping (1px seams) now raytraces.
  • Significant improvement to several import types such as IGES, STEP, 3DXML and others.
  • New “Look At” without moving the camera position functionality.
  • 3D Studio Max Plugin.
  • Solidworks Plugin.
  • Added ability to save out a texture used in a material and/or decal to disk.
  • Added ability to rename model sets.
  • Added ability to export selected as OBJ or FBX instead of just the whole scene.
  • Added ability to output animated frames as .hdr.
  • Added ability to rename backplates, environments and lights.

Синим цветом, выделены возможности, которые только тестируются в новом шейдере для 3ds Max и возможно будут реализованы в следующей версии, а пока для получения доступа к ним, можно воспользоваться специальным коннектором к Bunkspeed, если вы используете предыдущие версии 3ds Max и Bunkspeed.
Ближайшие релизы V-Ray RT также будут поддерживать больше возможностей по визуализации, но точные даты пока не оглашаются.

среда, 22 августа 2012 г.

Новая презентация и скринкаст. Знакомство с V-Ray for Autodesk Maya.


Друзья, наконец, я доделал первую презентацию по V-Ray for Autodesk Maya. Хочется в первую очередь попросить прощения за жесткую задержку, сложно записывать звук, когда в округе работает дрель и строительная техника :). Но благо на прошлой неделе закончился мега-ремонт, и я смог спокойно осуществить задуманное :).
Эта презентация, одна из большой серии презентаций посвященных V-Ray для пакета Autodesk Maya. В ней собраны основные базовые сведения о V-Ray for Maya и показаны некоторые из его возможностей. Презентация содержит базовые сведения о реализуемых V-Ray функциях Maya, а также показан ряд отличий от версии V-Ray for 3ds Max.
Видео доступно в виде плейлиста в моем канале на YouTube, а просмотреть вы его можете прямо здесь.

Презентация V-Ray for Maya. Первое знакомство.


Это первая презентация посвященная V-Ray for Maya. Тема настолько обширна, что за одну небольшую тридцатиминутную презентацию всего и не расскажешь.
V-Ray, стал настоящим production визуализатором благодаря поддержке пакета Maya, многие студии сейчас стремятся полностью перейти на него и успешно осуществляют этот переход. Благодаря поддержке вычислений на GPU и платформы NVIDIA Maximus, стало возможным создавать изображения фотореалистичного качества в режиме реального времени, а все это благодаря V-Ray RT и V-Ray RT GPU, реализованным в режиме IPR в Maya.
Мощнейшая система шейдеров и инструментов освещения, позволяет моделировать самые разнообразные сцены, а заранее подготовленные сложные шейдеры, позволяют создавать очень реалистичные материалы за пару минут.
Обширные возможности для работы с proxy объектами, позволяют визуализировать грандиозные сцены с минимальным потреблением вычислительных ресурсов и все это благодаря V-Ray.

Далее, мы с вами рассмотрим большинство возможностей V-Ray, поговорим о Standalone версии V-Ray и проведем несколько сравнений с системой визуализации mental ray.

До скорой встречи, ваш dimson3d :).

Опубликовано

- V-Ray 4 Maya | Shaders Guide | Введение
- Новая презентация и скринкаст. Знакомство с V-Ray for Autodesk Maya.

P.S. Отдельно хочется поблагодарить компанию Chaos Group, за предоставленную возможность максимально близко приблизиться к их разработчикам и за оказываемую поддержку.

mental ray 4 Maya | Shaders Guide | mib_glossy_refraction


Шейдер mib_glossy_refraction

Этот шейдер очень похож на mib_glossy_reflection, но имеет несколько отличий. Поскольку речь идет о преломлении, он моделирует "глубину материала", а не отражение окружающей среды.
Шейдер mib_glossy_refraction расположен рядом с шейдером mib_glossy_reflection в группе шейдеров Material диалогового окна Hypershade.
В отличие от современных сложных шейдеров, этот шейдер нацелен на реализацию преломляющих свойств поверхности и управление ими. Он работает в связке с шейдерами затенения поверхности, такими как mib_illum_phong и др. а также шейдерами фотонов и теней.

Описание шейдера в формате .mi:
color "mib_glossy_refraction" (
    shader          "top_material",
    shader          "deep_material",
    shader          "back_material",
    boolean         "render_reverse_of_back_material",
    color           "refraction_color",
    scalar          "max_distance",
    scalar          "falloff"                default 2.0,
    scalar          "refraction_base_weight" default 1.0,
    scalar          "refraction_edge_weight" default 0.2,
    scalar          "edge_factor"            default 5.0,
    scalar          "ior"                    default 1.0,
    integer         "samples"                default 16,
    scalar          "u_spread"               default 0.5,
    scalar          "v_spread"               default 0.5,
    vector          "u_axis",
    vector          "v_axis",
    scalar          "dispersion"             default 0.0,
    array color     "spectrum"
)
apply material, texture
version 2

Шейдер mib_glossy_refraction очень просто декларируется в файле, экспортируемом в формат .mi. В Autodesk Maya, этот шейдер представлен полностью, и все параметры его реализованы в интерфейсе программы.
Реализация шейдера mib_glossy_refraction в интерфейсе Attribute Editor.
Шейдер подключается к Shading Group через атрибут Material Shader.

Давайте рассмотрим назначение параметров шейдера mib_glossy_refraction. Я буду указывать название из описания шейдера в формате .mi, а в скобках будет дано название в интерфейсе Maya.
top_material (Top Material) - это характеристики поверхности самого верхнего слоя. Аналогичны base_material в mib_glossy_reflection, просто добавляется к основному шейдеру.. Для примера используйте mib_illum_phong с настроенным параметром зеркальности и совсем крохотным значением диффузного цвета. Обычно, для диффузного цвета можно использовать темно-темно серый цвет, практически близкий к черному или же темный цвет другого оттенка.
deep_material (Deep Material) - используется, только если значение max_distance отличается от нуля. Это поверхностные характеристики «внутренней» части объекта, в которой цвет и преломления исчезают, как только они достигают значения указанного в max_distance. В то время как цвет все еще рассчитывается на поверхности, она будет "выглядеть" как будто находится внутри преломляющего объекта. Для интересного эффекта и псевдо-объемного моделирования можно предложить использовать шейдеры misss_fast_* (шейдеры подповерхностного рассеивания). Стоит отметить, что основные принципы шейдера mib_glossy_refraction, заложены в ряде современных шейдеров, таких как misss_fast_* и mia_material_* но со значительными усовершенствованиями и оптимизацией под современные алгоритмы.
Пример применения двух уровней в шейдере mib_glossy_refraction при различном значении max_distance. Слоту top_material назначен шейдер mib_illum_phong, а слоту deep_material назначен шейдер mib_illum_lambert.
back_material (Back Material) - является материалом, используемым для лучей попадающим в противоположном направлении от источника света, и которые отразились внутри объекта (т.е. любой луч, который попадает на объект сзади, как это определено нормалями геометрии). Он определяет, что находится "внутри" объекта, и задает свойства верхнего слоя поверхности с обратной стороны объекта (противоположной лучам от источника света), например, mib_illum_phong или аналогичный.
Пример применения третьего уровня - back_material в шейдере mib_glossy_refraction при различном значении max_distance.
По умолчанию mental ray переворачивает нормали к стороне входящего луча, который будет воздействовать на внутреннюю поверхность объекта. Но иногда, желательно, чтобы имитировать эффект прозрачности, позволить свету, падающему на внешний объект определить его затенение. Это достигается путем поворота нормалей с помощью render_reverse_of_back_material, что приводит к использованию в шейдере оригинального направления нормали к поверхности при оценке back_material.
Имитация прозрачности путем намеренного переворота векторов нормалей внутрь материала.
«refraction_color» (Refraction Color) — определяет степень преломления и окраску. Вычисляемые преломления просто проявляются за счет этого значения.
Пример влияния параметра refraction_color на свойства поверхности в шейдере mib_glossy_refraction.
«max_distance» (Max Distance) — ограничивает досягаемость преломленных лучей, и реализует спад при подходе к deep_material когда их длина приближается к указанному значению max_distance. Это позволяет задать внешний вид полупрозрачному материалу, в котором видимость ограничена.
Пример влияния параметра max_distance на свойства поверхности.
«falloff» (Falloff) — задает степень спада в deep_material, которое является степенной функцией. По умолчанию 2.0 означает, что спад соответствует квадрату расстояния; 3,0 означает, что расстояние возведению расстояния в куб, и так далее. Этот параметр не действует, если max_distance равен нулю.
Пример влияния параметра falloff на свойства поверхности.
«refraction_base_weight» (Refraction Base Weight) - является скалярным множителем для преломления в поверхностях перед камерой, и refraction_edge_weight на поверхностях, перпендикулярных камере (т.е. ребера) и edge_factor толщина «ребра». Вообще, еще есть преломления на ребрах (углах скольжения), а не только на основных поверхностях, известные как "эффект Френеля".
Пример влияния параметра refraction_base_weight на свойства поверхности.
«ior» (Index of Refraction) — задает индекс преломления материала. С изменением преломления, рассчитываемым на основе изменения векторов нормалей, очень важно, что эта величина определяет разумный показатель преломления, в противном случае индекс 1,0 не приводит к изменению направления луча, не создавая какую либо размытость! Как частный случай, можно установить IOR 0.0 который перейдет в "режим изменения направления", нежели "обычный режим изменения".
Пример влияния параметра ior на свойства поверхности c шейдером mib_glossy_refraction.
«samples» (Samples) - определяет количество семплов, обеспечивающих качество затенения. Если ноль, шейдеры возвращается к однократной выборке зеркальных отражений. Рекомендуется использовать значения 64 и выше для финальной визуализации, а для тестовой достаточно 16 — 32 сэмпла. Стоит заметить, что при увеличении количества сэмплов, время визуализации увеличивается.
Пример влияния параметра samples на свойства поверхности c шейдером mib_glossy_refraction.
Здесь также стоит отметить, что значение Samples зависимо от качества выборки установленного в глобальных параметрах визуализатора. Чем выше качество выборки и количество сэмплов заданное в параметрах шейдера, тем будет глаже и качественнее финальный результат. Однако если качество выборки задано низкое, то при увеличении количества сэмплов в шейдере, будет сложно добиться качественного результата.
u_spread и v_spread (U Spread и V Spread) - это количество изменения векторов нормалей в направлении осей U и V. Если эти значения совпадают, формируется изотропное глянцевое отражение. Если значения различаются, формируются анизотропные отражения.
Пример влияния параметров u_spread и v_spread на свойства поверхности c шейдером mib_glossy_refraction.
u_axis и v_axis (U Axis и V Axis) - дополнительные параметры для направления анизотропных подсветок. Они применяются только в анизотропном режиме. Если u_axis равен 0,0,0, шейдер по умолчанию пытается создать вектор на основе первого производного вектора поверхности, а если таковой отсутствует, на основе оси X в пространстве объекта. Если u_axis задается значение, оно будет использоваться в качестве направления U анизотропной подсветки. Если также заданы значения v_axis они будут использованы в качестве направления V, но если не указывать направление, V вычисляется как векторное произведение нормалей исходной поверхности и направления U.
Пример влияния параметров u_axis и v_axis на свойства поверхности c шейдером mib_glossy_refraction.
«dispersion» (Dispertion) — имитирует эффект хроматических аберраций. При значении 0.0 отсутствуют хроматические аберрации, при значении 1.0 осуществляется полная имитация хроматических аберраций.
Пример влияния параметра dispertion на свойства поверхности в шейдере mib_glossy_refraction.
«spectrum» (Spectrum) - представляет собой массив из цветов определяющий "Радугу", в котором цвета нарушены, когда параметр дисперсии не равен нулю. По умолчанию это красный, желтый, белый, голубой, синий и индиго цвета, но могут быть заданы любые цвета.
В завершение стоит также обратить ваше внимание на подход к работе с шейдерами mib_glossy_*. Так как эти шейдеры не являются физически корректными, и представляют собой затенители имитирующие только отражения и преломления, у них нет реализации для визуализации в фотонных картах и теней. Для этого, рекомендуется прибегнуть к применению шейдеров фотонных карт, такого как mib_photon_base или аналогичного фотонного шейдера, а также шейдера mib_shadow_transparensy для имитации тени от объекта с mib_glossy_* шейдером. На приведенной ниже иллюстрации, показано, как выглядит граф с шейдером mib_glossy_refraction и шейдерами mib_photon_base и mib_shadow_transparensy.
Граф шейдера в основе которого заложены mib_glossy_refraction, mib_photon_base и mib_shadow_transparency. В Attribute Editor показано, куда подключен каждый из шейдеров.
Шейдер mib_photon_base необходимо добавить в слот Photon Shader в ShadingGroup создаваемого вами шейдера, а шейдер mib_shadow_transparency необходимо добавить в слот Shadow Shader. Параметр ior в шейдере mib_photon_base должен быть идентичен заданному в mib_glossy_refraction.

Структура шейдера в формате .mi представлена следующим образом:
shader "mib_illum_phong3" # шейдер затенения по методу Фонга
     "mib_illum_phong" (
          "ambience" 0. 0. 0. 1.,
          "ambient" 0. 0. 0. 1.,
          "diffuse" 0. 0. 0. 1.,
          "specular" 0.5 0.5 0.5 1.,
          "exponent" 50.,
          "mode" 4,
          "lights" []
          )

shader "mib_glossy_refraction1"
     "mib_glossy_refraction" (
          "top_material" "mib_illum_phong3", # шейдер затенения по методу Фонга задан в качестве top_material
          "render_reverse_of_back_material" on,
          "refraction_color" 1. 1. 1. 1.,
          "max_distance" 0.,
          "falloff" 2.,
          "refraction_base_weight" 1.,
          "refraction_edge_weight" 0.6,
          "edge_factor" 5.,
          "ior" 1.331,
          "samples" 32,
          "u_spread" 0.1,
          "v_spread" 0.1,
          "u_axis" 0. 0. 0.,
          "v_axis" 0. 0. 0.,
          "dispersion" 0.,
          "spectrum" []
          )

shader "mib_shadow_transparency1" # шейдер теней
     "mib_shadow_transparency" (
          "color" 0. 0. 0. 1.,
          "transp" 0. 0. 0. 1.,
          "mode" 4,
          "lights" []
          )

shader "mib_photon_basic1" # шейдер фотонов для формирования эффекта каустики
     "mib_photon_basic" (
          "diffuse" 0.502342 0.502342 0.502342 1.,
          "specular" 0.5 0.5 0.5 1.,
          "transp" 0.497658 0.497658 0.497658 1.,
          "ior_frac" 1.331
          )

material "mib_glossy_refraction1SG" # группа затенения в качестве мтериала со всеми выше описанными шейдерами
          "adskMayaShadingEngine" (
               "surfaceShader" = "mib_glossy_refraction1",
               "cutAwayOpacity" 0.,
               "customShader" on
               )
     shadow = "mib_shadow_transparency1"
     photon = "mib_photon_basic1"
end material

Пример визуализации сцены с приведенным выше графом шейдера с mib_glossy_refraction.

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

Следующие шейдеры, которые мы рассмотрим, это mib_illum_blinn, mib_illum_cooktorr, mib_illum_lambert, mib_illum_phong являющиеся основными шедйерами для затенения поверхностей и лежащие в основе большинства современных более сложных шейдеров.

До скорой встречи, ваш dimson3d :).

Опубликовано

mental ray Standalone Global Review

Mental ray 4 Maya | Shaders Guide
- mental ray 4 Maya | Shaders Guide | mib_glossy_refraction

понедельник, 23 июля 2012 г.

mental ray 4 Maya | Shaders Guide | mib_glossy_reflection

Здравствуйте друзья,в новой главе нашего путешествия по миру шейдеров mental ray, мы познакомимся со следующим шейдером из набора шейдеров mental ray 4 Maya. Этим шейдером является mib_glossy_reflection. Это одни из основополагающих шейдеров mental ray располагающихся в группе шейдеров Ray Tracing. При объединении его в единую структуру с другими шейдерами, вы можете получить полный контроль над отражающими свойствами поверхностей и контролировать их.
Шейдеры mib_glossy_reflection и mib_glossy_refraction находятся в группе Materials в Hypershade.
Получить доступ к рассматриваемому в сегодняшнем посте шейдеру можно в окне Hypershade, в группе шейдеров mental ray > Materials. Стоит также отметить, что этот шейдер требует применения ряда базовых шейдеров типа mib_illum_blinn, mib_illum_lambert или mib_illum_phong.
Аналогично шейдерам dgs_material и dielectric_material, этот шейдер использует метод трассировки луча Ray Tracing и требует тщательного контроля и настройки параметров трассировки луча в Render Globals на вкладке Quality.
Рассмотрим шейдер mib_glossy_reflection более подробно.

Шейдер mib_glossy_reflection

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

color "mib_glossy_reflection" (
    shader          "base_material",
    color           "reflection_color",
    scalar          "max_distance",
    scalar          "falloff"                default 2.0,
    color           "environment_color",
    scalar          "reflection_base_weight" default 0.2,
    scalar          "reflection_edge_weight" default 1.0,
    scalar          "edge_factor"            default 5.0,
    shader          "environment",
    boolean         "single_env_sample"      default true,
    integer         "samples"                default 16,
    scalar          "u_spread"               default 0.5,
    scalar          "v_spread"               default 0.5,
    vector          "u_axis",
    vector          "v_axis",
    scalar          "dispersion"             default 0.0,
    array color     "spectrum"
)
apply material, texture
version 3

Шейдер mib_glossy_reflection очень просто декларируется в файле, экспортируемом в формат .mi. В Autodesk Maya, этот шейдер представлен полностью, и все параметры его реализованы в интерфейсе программы.
Реализация шейдера mib_glossy_reflection в интерфейсе Attribute Editor.
Шейдер подключается к Shading Group через атрибут Material Shader.
Давайте рассмотрим назначение параметров шейдера mib_glossy_reflection. Я буду указывать название из описания шейдера в формате .mi, а в скобках будет дано название в интерфейсе Maya.
«base_material» (Base Material) — в этом атрибуте, задается шейдер поверхности, к которому будут добавлены свойства отражения. Для примера, можно использовать шейдер mib_illum_phong или аналогичный шейдер из шейдеров затенения поверхности.
Граф всей конструкции шейдера использованного для демонстрации.
«reflection_color» (Reflection Color) — определяет степень отражения поверхности и окраску. Вычисляемые отражения просто проявляются за счет этого значения.
Пример влияния параметра reflection_color на свойства поверхности в шейдере mib_glossy_reflection.
«max_distance» (Max Distance) — если это значение равно нулю, досягаемость отражения лучей бесконечна. Для значений больше нуля, досягаемость отраженных лучей ограничивается этим расстоянием (но вы можете получить большой выигрыш в производительности), цвет отражения исчезает в цвете окружающей среды, длина луча приближается к этому расстоянию. Используйте этот параметр для повышения производительности и, чтобы избежать чрезмерного шума из-за далеких объектов с высокой контрастностью.
Пример влияния параметра max_distance на свойства поверхности в шейдере mib_glossy_reflection.
«fallof» (Falloff) - устанавливает спад в окружающую среду, которая является функцией возведенной в степень. По умолчанию 2.0 означает, что спад соответствует квадрату расстояния; 3,0 означает, что расстояние возведено в куб, и так далее. Этот параметр не действует, если max_distance равен нулю.
Пример влияния параметра fallof на свойства поверхности в шейдере mib_glossy_reflection.
«environment_color» (Environment Color) - является множителем, когда луч пропускает любой объект и попадает в окружающее пространство. Для физической точности, оно должно быть точно таким же, как reflection_color, но предоставляется отдельно, чтобы дать больше контроля в обеспечении баланса между яркостью отражения объектов и отражения окружающей среды.
reflection_base_weight (Reflection Base Weight) - является скалярным множителем для отражения на поверхностях перед камерой, и reflection_edge_weight на поверхностях, перпендикулярных камере (т.е. ребера) и edge_factor - толщина «ребра». Вообще,еще есть отражения на ребрах (углах скольжения), а не только на основных поверхностях, известные как "эффект Френеля".
Пример влияния параметра reflection_base_weight, eflection_edge_weight, edge_factor на свойства поверхности в шейдере mib_glossy_reflection.
«Environment» (Environment) — этот параметр позволяет явно указать шейдер окружения относящийся к текущему шейдеру, Если не указан шейдер окружения, данные для окружения будут взяты из глобальных параметров камеры. Это позволяет использовать специально подготовленные размытые карты окружения для отражений окружающей среды.
Если карта окружения достаточно сильно размыта, это невыгодно с точки зрения производительности, а также может дать больше шума при многократной выборке из окружающего пространства. Когда single_env_sample выключен, образец из окружения создается для отраженного луча, который пропускает объект или должен быть смешан с окружающей средой, в связи с использованием max_distance. При включении, сэмплинг окружения выполняется один раз для лучей отражений.
«samples» (Samples) - определяет количество семплов, обеспечивающих качество затенения. Если ноль, шейдеры возвращается к однократной выборке зеркальных отражений. Рекомендуется использовать значения 64 и выше джля финальной визуализации, а для тестовой достаточно 16 — 32 сэмпла. Стоит заметить, что при увеличении количества сэмплов, время визуализации увеличивается.
Пример влияния параметра samples на свойства поверхности в шейдере mib_glossy_reflection.
u_spread и v_spread (U Spread и V Spread) - это количество изменения векторов нормалей в направлении осей U и V. Если эти значения совпадают,  формируется изотропное глянцевое отражение. Если значения различаются, формируются анизотропные отражения.
Пример влияния параметра u_spread и v_spread на свойства поверхности в шейдере mib_glossy_reflection.
u_axis и v_axis (U Axis и V Axis) - дополнительные параметры для направления анизотропных подсветок. Они применяются только в анизотропном режиме. Если u_axis равен 0,0,0 шейдер по умолчанию пытается создать вектор на основе первого производного вектора поверхности, а если таковой отсутствует, на основе оси X в пространстве объекта. Если u_axis задается значение оно будет использоваться в качестве направления U анизотропной подсветки. Если также заданы значения v_axis они будут использованы в качестве направления V, но если не указывать направление, V вычисляется как векторное произведение нормалей исходной поверхности и направления U.
Пример влияния параметра u_axis и v_axis на свойства поверхности в шейдере mib_glossy_reflection.
«dispersion» (Dispertion) — имитирует эффект хроматических аберраций. При значении 0.0 отсутствуют хроматические аберрации, при значении 1.0 осуществляется полная имитация хроматических аберраций.

Пример влияния параметра dispertion на свойства поверхности в шейдере mib_glossy_reflection.
«spectrum» (Spectrum) - представляет собой массив из цветов определяющий "Радугу", в котором цвета нарушены, когда параметр дисперсии не равен нулю. По умолчанию это красный желтый белый голубой синий и индиго цвета, но могут быть заданы любые цвета.

Пример влияния параметра spectrum при dispertion не равном 0 на свойства поверхности в шейдере mib_glossy_reflection.
Шедйер mib_glossy_reflection позволяет вам контролировать все основные свойства отражений на поверхности объекта. Помимо этого, благодаря более тонкой настройке анизотропных отражений можно получить максимально реалистичный результат.
Прмимер визуализации простой сцены с шариковой ручкой. Для шейдеров ручки использован mib_glossy_reflection.

Следующий шейдер который мы рассмотрим — mib_glossy_refraction, предназначенный для визуализации преломляющих свойств поверхности.

До скорой встречи, ваш dimson3d :).

Опубликовано

mental ray Standalone Global Review
- mental ray Standalone | Первое знакомство
mental ray Standalone | Экспорт данных из 3D приложений

Mental ray 4 Maya | Shaders Guide
- mental ray 4 Maya | Shaders Guide | Введение
- mental ray 4 Maya | Shaders Guide | Основы
- mental ray 4 Maya | Shaders Guide | dgs_material, dielectric_material
- mental ray 4 Maya | Shaders Guide | mib_glossy_reflection

воскресенье, 24 июня 2012 г.

mental ray Standalone | Экспорт данных из 3D приложений

После публикации поста «mental ray Standalone | Первое знакомство», меня сразу стали просить написать подробнее о возможностях mental ray Standalone и вообще о Standalone версиях визуализаторов. Ну, коль пошла такая пьянка, мы сегодня поговорим об инструментах экспорта данных из 3D приложений в нативный формат данных mental ray - .mi.

Сразу хочу предупредить, что здесь, мы рассмотрим два пакета – Autodesk 3ds Max и Autodesk Maya. Все что описано в этом посте, актуально для 2011 - 2013 версии этих пакетов. Но начнем мы с общего представления о применении mental ray standalone в производственном конвейере.

Примерно два года назад, я проводил небольшой вебинар по технологиям визуализации и по применению mental ray в среде 3ds Max и Maya. Вебинар конечно был так себе :), но то, что было тогда сделано, сейчас очень актуально, т.к. пакеты 3D графики стали претерпевать ряд изменений и особенно эти изменения затронули 3ds Max.

На представленном ниже слайде, показана общая схема передачи данных из DCC приложений Autodesk в mental ray Standalone.
Общий конвейер передачи данных из пакетов Autodesk в mental ray Standalone и «звездочка» поддерживаемых направлений.
Из всей кажущейся сложности всего процесса работы со Standalone версией mental ray, можно заметить, что все сводится к достаточно простой схеме, которая содержит основные этапы. Конечно же, все начинается с вашего 3D пакета, в нем вы создаете сцену (модели, освещение, камеры, шейдеры, производите анимацию и настраиваете рендерер). Помимо этого, подключаете шейдеры, которые вам необходимы в работе или создаете их с помощью MetaSL. Раньше для MetaSL был доступен mental mill, но сейчас он почил в небытие и его дальнейшая судьба неизвестна, но, все возможности MetaSL, сейчас доступны прямо в интерфейсе 3ds Max и Slate Material Editor.

После всех произведённых действий над сценой и завершения работы над геометрией, вы можете приступать к экспорту сцены в формат описания сцены mental ray - .mi. После того, как сцена будет экспортирована в формат .mi, вы можете в полной мере воспользоваться возможностями системы визуализации mental ray. И здесь стоит отдельно заметить, что при работе с разными пакетами, вы можете использовать шейдеры не только из того пакета в котором вы создали модель и сцену, но и из других, что явно просто так в рамках интерфейса и самой программы не сделать. Помимо этого, вам будут доступны все возможности как шейдеров так и технологий визуализации, скрытые или не реализованные до этого в интерфейсе приложений, таких как 3ds Max или Maya.

Конечно, не стоит обойти вниманием тот факт, что Standalone версия поддерживает работу на всех доступных платформах – Windows, Linux и Mac OS X и является отличным вариантом для создания небольшой фермы визуализации под управлением Linux или Windows.

Теперь можно поговорить непосредственно об инструментах экспорта сцен в формат .mi. В 3ds Max и Maya, реализован разный подход к настройке сцены и экспорту ее в формат .mi.

Экспорт сцены в формат .mi из Autodesk 3ds Max

Последнее время, 3ds Max идет путем по максимальному упрощению настроек всего и вся, так сказать «кнопка сделать красиво». При этом, многие профессиональные пользователи, кто работает с mental ray часто ругают Autodesk за чрезмерное упрощение интерфейса и в отсутствии добавления новых функций, которые могут потребоваться при визуализации.

В mental ray for 3ds Max, экспорт данных также не отличается широким набором функций. Он максимально прост, из-за чего иногда могут быть отправлены масса ненужных данных или далеко не все данные сцены. Доступ к функции экспорта в .mi, из 3ds Max, реализован в диалоговом окне Render Setup, во вкладке Processing, визуализатора mental ray.
Параметры экспорта сцены в формат .mi из 3ds Max Design 2013 (3ds Max 2013).
В свитке Translator Options, в группе Export to .mi File вы можете настроить экспорт в формат данных mental ray.

Export on Renderer – Когда активен этот параметр, сцена экспортируется в .mi файл при нажатии кнопки Render. По умолчанию опция неактивна.

Un-compressed – Когда активен, файл .mi не будет подвергаться компрессии. Когда этот параметр неактивен, файл .mi будет экспортироваться с компрессией, что не лучшим образом подходит для дальнейшего редактирования или внесения изменений.

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

[…] – с помощью этой кнопки, вы можете указать, куда будет сохранен файл .mi и делает активными рассмотренные выше параметры экспорта.

Остальные параметры свитка Translator Options, также могут оказывать влияние на данные, экспортируемые из 3ds Max в .mi формат. О них мы погорим в следующих постах.

Все что вы настроите в диалоговом окне Render Scene, будет экспортировано в .mi и далее, вы можете просто вручную отредактировать файл или указать особые параметры при экспорте.
Файл сцены в формате .mi после экспорта из 3ds Max Design 2013.
Как видите, у 3ds Max по умолчанию не предоставлено большого количества возможностей по настройке экспорта в формат данных mental images. Однако здесь стоит обратить внимание на применение специальных сценариев, позволяющих более глубоко выполнить настройку параметров визуализатора и выполнить экспорт.
Сценарий Render Optimizer Unlimited от Infinity Vision.
По рекомендации Андрея Плаксина (http://scionik.livejournal.com/), я начал использовать специальный сценарий Render Optimizer от Infinity Vision. С помощью Render Optimizer, можно использовать скрытые возможности mental ray for 3ds Max. У этого сценария, есть версия, специально предназначенная для пользователей mental ray Standalone - Render Optimizer Unlimited. Все параметры, которые вы настроите с помощью этого сценария, можно будет экспортировать в .mi формат, что существенно облегчает работу с форматом данных mental ray.
Пример экспорта сцены из 3ds Max Design в формат .mi без и с помощью Render Optimizer.
На приведенном выше скриншоте видно, что было добавлено в описание сцены при экспорте с настройками из Render Optimizer. В сценарии, были заданы расширенные параметры Final Gather и Irradiance Particles. С левой стороны, показан участок описания сцены с экспортом по умолчанию, справа, описание сцены с парамтерами добавлеными с помощью Render Optimizer. Как упоминалось выше, Render Optimizer позволяет значительно сократить время по настройке параметров mental ray и на редактировании формата mental images.

Познакомившись с базовыми возможностями экспорта сцены в формат .mi из 3ds Max, мы можем перейти к знакомству с экспортом сцены из Autodesk Maya.

Экспорт сцены в формат .mi из Autodesk Maya

В отличие от 3ds Max, пакет Autodesk Maya обладает, пожалуй, одним из самых лучших plug-in коннектором для mental ray. И с помощью параметров визуализации и настройки экспорта, можно настроить любой параметр визуализатора и корректно экспортировать его из Maya в формат .mi.
Параметры экспорта сцены Autodesk Maya в формат .mi.
На представленной выше иллюстрации, показаны основные параметры для экспорта сцены в формат .mi из Autodesk Maya. С помощью диалогового окна Export All Options, вы можете выполнить настройку экспорта в формат .mi с различными типами данных.

Давайте рассмотрим параметры экспорта в .mi формат из Autodesk Maya.

Первое что нам необходимо сделать, это выбрать в меню File > Export All… > [□], сразу откроется диалоговое окно Export All Options. Помимо этого, начиная с Maya 2011, при открытии диалогового окна Export All, вы можете настроить параметры для выбранного формата в области параметров (расположена справа).

Свиток General Options:

File Type – позволяет выбрать тип формата данных и файла, нам необходим пункт mentalRay

Default file Extensions – когда активен, файл экспортируется с расширением, для выбранного типа файла

Preserve References – если эта опция активна, все референсы, используемые в файле будут сохранены, если не активен, референсы и данные связанные с ними будут записаны в экспортируемый файл

Export Unloaded References – Экспортирует не загружаемые Proxy файлы, ассоциированные с текущей сценой

Свиток File Type Specific Options:

Этот свиток, содержит основные параметры для экспорта сцены в формат .mi.

Export Selection Output – В этом свитке, вы можете выбрать тип данных для экспорта в формат .mi.

- Renderable Scene – Выбрано по умолчанию. Maya экспортирует все данные сцены (источники света, камеры, шейдеры, глобальные атрибуты и т.д.), которые необходимы для визуализации выбранных объектов или сцены. Получаемая при экспорте сцена, может быть полностью использована при визуализации средствами mental ray Standalone

- Render Proxy (Assembly) – Экспортирует сцену или выделенные объекты в формат .mi, но с параметрами для визуализации Proxy объектов (mental ray Proxy) в вашей сцене. Используйте эту опцию для экспорта завершенной геометрии, которая будет использована для визуализации в mental ray Proxy

- Scene Fragment (Custom) – Если выбран этот пункт, то Maya будет экспортировать только выделенные узлы. Этот режим, может быть использован для экспорта источников света, камер, шейдеров или геометрии. Полученный файл формата .mi не может быть использован в финальной визуализации на прямую, а может быть применен как фрагмент сцены (Scene Fragment) и включен в другой файл .mi

Если объекты не подвержены изменениям, переподготовка перед экспортом в формат .mi не требуется, и процесс экспорта будет значительно сокращен.
Представленные типы экспортируемых данных в формат .mi.
Export Materials – В дополнение к выбранным узлам, этот параметр позволяет экспортировать любой материал для связанный с ними. Это применяется к выбранной геометрии и узлам затенения (Shading Nodes)

Export material Assignments – В дополнение к выбранным узлам, этот параметр также экспортирует любой назначенный материал связанный с ними. Для примера, если вашему объекту назначен шейдер Phong, выбрав эту опцию и опцию Export Materials, геометрия которая связана с Phong Shader будет также экспортирована.
Эту опцию рекомендуется использовать при работе с render proxies в .mi формате.
Также, эта опция поддерживает передачу материала из Maya с render proxies.

Export all incoming shaders - В дополнение к выбранным узлам затенения, также экспортирует все материалы для этих узлов. Например, если Surface Shader выбран, связи любой текстуры в шейдере будут экспортироваться вместе с шейдером.

Export entire child DAG - Этот параметр указывает, что в дополнение к выбранной геометрии, любые дочерние объекты, должны быть экспортированы.

Root Group Name – Используйте эту опцию, для указания корневого имени сборки. Если вы выбрали Use Filename, корневое имя группы будет взято из имени сцены.

File Format – Если выбран режим ASCII, все данные в экспортируемом .mi файле, будут представлены в виде открытого для редактирования и чтения ASCII текста. В режиме Binary, ряд данных (points, normals, texture coordinates и т.д.), будет подвержен компрессии, для уменьшения объема экспортируемого файла. Значение tabulator size, позволяет задать значение отступа в файле .mi.

В раскрывающемся списке Compression, вы можете выбрать какой тип компрессии использовать для Binary формата. Предлагается три варианта компрессии: GZip Best Speed, GZip Default Compression и GZip Best Compression. Все эти пункты, различаются степенью компрессии данных в экспортируемом файле.

Output File Per Frame – Когда в сцене есть анимация, Maya экспортирует все данные, необходимые для визуализации всех кадров указанных в настройках параметров диапазона рендеринга анимации. Когда Output File Per Frame находится в состоянии off, данные для всех кадров, экспортируются в один .mi файл. Когда эта опция находится в состоянии on, для каждого кадра анимации, будет создан отдельный файл .mi.

Frame Extension – Когда выбрана опция Output File Per Frame, в раскрывающемся списке, вы можете стиль написания расширения фала. Предоставляется три типа расширений: name.ext.#, name.#.ext, name.#.

Frame Padding - Когда выбрана опция Output File Per Frame, определяет количество символов применяемое к расширению номера кадра. Например, если значение Frame Padding равно 2, то значение расширения номера кадра будет выглядеть так: 01, 02, 03,…, если Frame Padding равен 3, то расширение будет выглядеть так: 001, 002, 003,…

Output File Per Layer – Информация из множества слоев визуализации (Render Layer), не может быть экспортирована в одном файле .mi, Установите эту опцию, для того чтобы экспортировать файл .mi для каждого слоя визуализации (Render Layer). Если ваша сцена использует множество Render Layers, вы можете включить эту опцию для корректной визуализации Render Layers. Если параметр Output File Per Layer выключен, визуализация сцены с множеством слоев визуализации, может проходить некорректно.

Export File Paths - Используйте эту опцию, чтобы установить путь к файлу определенной категории. Для каждой категории есть три варианта:

- None – Имя файла не содержит пути к файлу. К примеру: bottle_difMap.jpg

- Absolute - Имя файла содержит абсолютный путь к файлу. К примеру: D:/WORKSPACE/DCC/Maya/Demo/sourceimages/bottle_difMap.jpg

- Relative to project – Релевантный путь к директории проекта, содержащей файл. К примеру: sourceimages/bottle_difMap.jpg
Параметры связей с внешними файлами.
Link Library – Опция пути к файлу для библиотек шейдеров (Shader Libraries). Для примера указывается путь для mayabase.so, base.so, и т.д.

Include File - Опция пути к файлу описания шейдера (shader declaration) (.mi), такому как mayabase.mi и другие.

Texture File - Опция пути к файлам текстур. Для примера bottle_difMap.jpg.

Light Map - Опция пути к сгенерированным файлам lightmap (если используется lightmap shader).

Light Profile - Опция пути к файлам профилей источников света (light profile).

Output Image - Опция пути к выводимым файлам изображений.

Shadow Map - Опция пути к файлам shadow map.

Finalgather Map - Опция пути к файлам final gather map.

Photon Map - Опция пути к файлам photon map.

Render Proxy Placeholder - Опция пути к render proxy placeholder.
Параметры выбора отдельных элементов для экспорта.
Export Selected Items Only – Эта опция, предоставляет детальный контроль над тем, какие именно элементы mental ray будут экспортированы в файл формата .mi.

Predefined Export Filters – Содержит ряд полезных заданных комбинаций типов экспортируемых объектов и функций.

Как видите, Maya позволяет настроить экспорт практически любого элемента сцены и выполнить визуализацию средствами mental ray Standalone. Однако, если вы хотите напрямую выполнять визуализацию сцены средствами mr Standalone из интерфейса Autodesk Maya, вы можете воспользоваться рядом специальных сценариев, которые можно загрузить из сети.

Для примера я взял один из известных в нашем CG производстве сценариев – Render With Mental Ray Standalone, автором которого является наш соотечественник Павел Ледин (aka Puppet).

В этом посте я не буду рассматривать детально этот сценарий, специальным сценариям будет посвящен отдельный пост, где будут рассмотрены несколько таких сценариев для оптимизации работы с mr Standalone из Maya. Но взглянуть на него стоит.
Интерфейс сценария Render With Mental Ray Standalone версии 1.1.3.
С помощью сценария Render With Mental Ray Standalone, вы можете напрямую указать команды визуализатора и настроить вывод изображения в формат OpenEXR и Multichannel OpenEXR.

При этом, можно указать команды визуализатора, которые будут использованы при запуске визуализации.

К сожалению, на данный момент нет обновленной версии этого сценария, поддерживающей Maya 2012 и Maya 2013. Думаю, Павел его обновит под новые версии Maya и данный сценарий будет корректно работать с новыми возможностями пакета и системы визуализации mental ray Standalone. Если же вам интересен этот сценарий, вы можете его загрузить из раздела загрузок в конце этого поста.

===========================

Итак, в этом посте, мы рассмотрели основные возможности по экспорту данных в формат .mi из двух самых распространенных пакетов – Autodesk 3ds Max и Autodesk Maya. Учитывая, что 3ds Max сейчас движется по пути максимального упрощения работы с пакетом, он стал жертвой минимализма в функциональности. С другой стороны, Maya обладает всеми необходимыми функциями для работы со Standalone версией mental ray и по эскорту в рабочий формат .mi.

В следующих постах, мы рассмотрим различные параметры, и какое влияние они оказывают на описание данных в формате .mi. Помимо этого, мы уделим внимание специальным расширениям, которые могут помочь в работе с mental ray Standalone напрямую из пакетов 3ds Max и Maya.

Загрузки
Сценарий Render With Mental Ray Standalone для Autodesk Maya (ZIP Archive)
Сценарий Render Optimizer 2 для Autodesk 3ds Max (ZIP Archive)

Опубликовано

mental ray Standalone Global Review
- mental ray Standalone | Первое знакомство

mental ray 4 Maya | Shaders Guide
- mental ray 4 Maya | Shaders Guide | Основы
- mental ray 4 Maya | Shaders Guide | dgs_material, dielectric_material

До скорой встречи, ваш dimson3d :).