27 авг. 2012 г.

RenderMan - первые шаги (первые эксперименты с шейдингом)

Пока ожидаем окончание рендера Crazy Balls, пытаемся освоить рендермановский пэйплайн со связкой Blender+3DLight (автор связки Matt Ebb).
Много становится ясным и многое радует, в итоге получается нечто такое:


А теперь сеточку в студию:


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

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

Скорость визуализации тоже радует. Бесплатная версия 3Dlight ограничивает возможности рендера двумя ядрами. На двух ядрах эта картинка посчиталась за 12 минут. Соответственно на сервере с 24-мя ядрами, было бы примерно 60 секунд. Время на загрузку сцены - крохи.

Пока очень недостает редактора шейдеров вроде Slim. Приходится ограничиваться штатным набором шейдеров. Хотелось бы многое добавить на этой картинке, но пока не все ясно. Разбираемся дальше...

25 авг. 2012 г.

Бородино - УРА! .... ????

Сегодня (в пятницу) сдали проект над которым трудились более полугода.



RenderMan - первые шаги (боремся за Point Cloud)

Сегодня проблема, о которой я писал ниже, была полностью решена. Как НЕ профессиональный программист, я уверен, что есть решения более мудрые, однако я поступил очень просто и это работает. (Если вы умнее, пишите коменты...)
Если вам интересно, как адаптировать pointcloud под windows, то:
  • топаем в директорию плагина
  • ищем там файл export.py
  • открываем его на редактирование (рекомендую Notepad++) и топаем к строке №918
  • Заменяем
    relpath = os.path.relpath( rpass.paths["gi_ptc_bake_path"], start=rpass.paths["export_dir"] )
    на
    #relpath = os.path.relpath( rpass.paths["gi_ptc_bake_path"], start=rpass.paths["export_dir"] )
    relpath = os.path.normpath( rpass.paths["gi_ptc_bake_path"] )
    relpath = relpath.replace("\\", "\\\\")
Сохраняем, перезагружаем Блендер, и радуемся правильной работе pointcloud
Напоминаю - это исправление нужно только для счастливых обладателей Windows, к Linux или MAC это не относиться.

P.S.
Для тех кто что-то пропустил. Речь идет о доработке плагина от Matt Ebb, позволяющего в Блендере использовать стандарт рендера от Pixar. В частном случае рассматриваем конкурентов Pixar - 3DLight.
Я пока не определился у кого будем покупать лицензии, тестируем, выбираем самое интересное. Ждем от "JC Systems Integration" (с которыми давно не просто дружим, а активно работаем), пиксаровской триалки. Наши партнеры - ЕДИНСТВЕННЫЕ представители Pixar на территории СНГ (Russia and CIS) и мы надеемся прикоснуться к великому через их помощь )))

23 авг. 2012 г.

RenderMan - первые шаги (Пытаемся применить к рабочим файлам)


Кусочек сцены из райда про машинки. Затащил его в 3D Light, через связку с блендером, написанную Matt Ebb.
По началу вообще ничего не получалось, потом выяснилось, что Matt писал все под Mac или linux и основная проблема под windows заключаетя в несоответсвии путей.
Решить проблему полность не удалось, но удалось найти обходные пути.
В результате все заработало.
Довольно просто сцена адаптируется под новый рендер. В результате получаем кучу гибкости, супер скорость и супер качество.
На этой картинке простой обыватель не заметит супер качетсва, но я отчетливо вижу развитие темы.

Если помогут партнеры, то в ближайшее время буду тоже саме тестить уже на родном RenderMan. Уверен - отличия будут в лучшую сторону.


22 авг. 2012 г.

Фиасочко


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

Рендер блока №6 пришлось начать заново. Шум на тирейне был слишком большой, на уровне брака, пришлось отказаться от GR и перейти на AO. Рендерит чуть быстрее (+5-10%), проработка теней не такая интересная, но зато не будет шума. Заодно подправил море и прибрежную полоску добавил, а то как-то странно было до этого.




21 авг. 2012 г.

Всякие дела

Завтра-послезавтра отдаем заказчику фильм про бородинскую панораму.
Последнее время особый вклад в этот проект внесли Юля и Денис. Я отошел от этого проекта.
Завершение всегда радует.

Рендер блока №6 (Crazy Balls) радует меньше. За сутки всего 500 кадров. Это значит, что ждать начала следующего блока нужно не менее 5 суток.

Между делом продолжаю ковырять анимацию жидкости и роботов.
Хочу как следует намочить славных железных друзей. Затем поджечь, потом обдуть, и напоследок отправить в космос. Уже подобраны 4 замечательных музыкальных трека для этого дела ;-) Автор, мой однофамилец - Никита Селивёрстов, очень талантливый композитор и выдающаяся личность, постоянно поставляющая изысканной московской публике самых экзотических музыкантов.

Проект затачивается исключительно под Блендер и Cycles, наполнение будет простое, но выразительное и эффектное. Соответственно сервера будут тихо, как и ранее заниматься своими ЦПУ-шными делами, весь рендер ляжет на GPU рабочих станций. Будет много физики, потенциальный зритель - дети от 5 до 99...

Вспомнил еще одного летающего робота, которого мастерил в Максе лет 6 назад. Думаю реанимировать его, уж больно забавный...

20 авг. 2012 г.

Между делом

Мега тормозной Vue дает мне кучу свободного времени.
Тратим его на старые начинания.


Анимация полный отстой, скажем честнее - её просто нет )))
Это всего навсего тест модели и рига.
Двигаемся дальше ;-)