Render.ru

Ускоряя Maya, послесловие. Скрипты для ускорения работы в Maya.

yursiv

Активный участник
Рейтинг
11
спасибо за разъяснения - как раз колебаюсь какой движок поковырять(вернее едитор к движку). Посмотрю что там и как. Пока нравиться удобный импорт из большинства пакетов и рендер на онлайновой демке.
 
про онлайн: пока почему-то, насколько мне известно, ни один серьезный 3d artist не догадался сделать интерактивное онлайн портфолио на unity: turntable, облет камерой, простая интеракиция делаются за выходные с нуля. Хочу как-нибудь попробовать сделать подобное ради теста.
 
Рейтинг
126
Круть, Надо будет попробывать.. что то меня движки попёрли, особенно после мармосета

damat, я читал у у тебя на сайте ( там где написано про аутсорс, просто название непомню) что в нивал нетворк проводят ежедневно конкурсы от скетча к готовой модели.. но на сайте не нашёл.. Можешь кинуть ссылку, интересно посмотреть на батл и поучиться просто
 
Frame_First, это завуалированная шутка:
А про конкурсы могу сказать следующее: Nival Network каждый день проводит конурс под названием: «От скетча до финального ассета в игре». Для участия необходимо справиться с тестовым заданием. Финалисты каждого этапа получают денежное вознаграждение и переходят в следующий тур.
Мы каждый день работаем с аутсорсерами, которые делают нам ассеты. Это и есть конкурс с денежным вознаграждением в виде оплаты сделанной работы. Участие в таком конкурсе для аутсорсеров, с моей точки зрения, гораздо более полезно, чем создание игры своей мечты по вечерам ради идеи.
 

Денис Русаловский

Пользователь сайта
Рейтинг
2
Наверное глупый вопрос.. но как ускорить появление меню при нажатии пробела?
Т.е. оно появляется не молниеносно, а с задержкой в доли секунд, но это заметно. Это где-то настраивается или просто комп тормозит?
 
Категорично отвечать "ускорить нельзя" не стану, так как шуток в Maya много, но в голову ничего из доступных настроек не приходит.
Вообще Hotbox Menu практически не использую, может быть поэтому я не совсем в теме.
 

Paul_Winex

Знаток
Рейтинг
20
Всем привет, а Дмитрию отдельное приветище. Есть некий вопрос, который надеюсь задам в правильном месте. В Maya 2011 появился удивительной полезности инструмент - Camera Sequencer. Действительно удобно собирать шоты воедино, с предпросмотром и даже рендером из вьюпорта. Но к сожалению по какой-то причине не было предусмотрено батч рендера по имеющейся информации из секвенсера. ПО моему мнению - глупый недочет. И как только автодески это допустили? Есть конечно другой вариант - я не нашел где та фишка втыкается, чтобы рендерило из камер, настроенных в секвенсере. В общем я полез в гуглу в поисках ответов и на сайте автодеска обнаружил подобные разговоры:
http://area.autodesk.com/forum/auto.../batchrender-a-camera-sequencer---sequence/

Оттуда меня направили на скрипт, который как бы решает проблему

http://forums.cgsociety.org/showthread.php?f=7&t=920578

Я не шибко много написал скриптов на MEL (такой бы я не сделал наверное), но для такой задачи по-моему он слабоват. И возникает основной вопрос. Есть ли желающие устранить данный недочет (с намёком на Дмитрия :) ) в Maya, даже если в следующей версии выйдет инструмент, делающий аналогичную работу, хотя меня это сильно сомневает (и в наличии и, как минимум, в юзабельности).

Я не прошу "О, создайте мне мегаскрипт", просто предлагаю или ищу людей которые уже этим занимаются или может даже сделали.

PS
В моем представлении этот скрипт будет называться что-то вроде Butchrender sequencer и его функции будут выходить за рамки работы с Camera Sequencer. В общем его задача - делать очередь батчрендера из определенных камер и определенные кадры, включая функцию авто заполнения из Camera Sequencer. Теоретически не придется отдельно прописывать что слои и пассы надо так же рендерить. Самое удобное будет автоматическое растягивание времени, что удобно делается в самом Camera Sequencer одним кликом. Не знаю хорошо архитектуру майи, не могу сказать как быть с путями сохранения файлов и сменой других параметров (что-то вроде override). В разных слоях это понятно, а что делать если надо например поменять рендер с ментала на софтвар в разных кадрах одного и того же слоя. Хотя, может я гоню и это лишнее.

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

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Раз уж топик подняли, у меня есть 2 багрепорта по xumi:
  1. Если для одного из пунктов меню в поле команды поместить небольшой скрипт (более, чем в 1 строчку) - при сохранении слетает вся менюшка.
    Если быть более точным - в тексте команды у всех пунктов этой менюшки в каждой строке удаляется по 2 последних символа (даже если команда была в одну строку).
  2. Посмотрел сами файлы менюшек. Если меню - родительское (у него есть подменю), то почему-то в его файле после описания пункта, связывающего с дочерним меню, идут описания всех пунктов этого (дочернего) меню. Зачем оно дублируется тут? Тем более, что при изменении дочернего меню его код в родительском не обновляется. Соответственно, он даже не используется.
P.S.: damat, ничего, что я багрепорты по xumi сюда ссыпаю? Специального топика не нашел.
 
Всем привет!

Paul_Winex, давай по порядку:
1. чем конкретно не устраивает скрипт, который лежит по ссылке?
2. как ты представляешь себе работу идеального скрипта? Самая простая идея: отправить на рендер вообще все камеры, но в каждом кадре проверять, какую конкретно сейчас надо рендерить. Потом собирать весь аутпут из разных папок в одну правильную. Это идея с ходу, скорее всего, можно сделать все проще и правильнее.

DRL, можно писать мне в личку или на почту (есть на сайте).
1. про слетание: да, знаю =) пробовал бороть, но это уже косяки майского интерфейса, там сложно получить все без багов. Проще писать в xumi не скрипты, а вызовы своих процедур
2. это косяк изначальной архитектуры, править его совсем уже не хочется. На функционал никакого влияния не оказывает.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Жаль.
Итого получается 3 сильно неприятных бага:
Первый - #1 из моего пред. поста.
Второй я писал ранее: после нажатия и отпускания кнопки мыши надо отпустить и снова нажать клавишу активации.
Третий - тоже писал ранее: xumi не работает нигде кроме вьюпортов.

XUMI, имхо, всё равно удобнее, чем стандартные маркинг-меню. Но всё же...
 

Paul_Winex

Знаток
Рейтинг
20
2 Дмитрий damat Астапкович
Прежде всего он мне не понравился отсутствием интерфейса. Во-вторых, в описании куча какихто ограничений и предупреждений. В общем я думаю что такой скрипт подошел бы для разового использования в конкретной задаче.
Я вижу скрипт в виде интерфейса, который понятен и художнику. У Вас ведь такие здорово получаются :)
Думаю Вам видней сама архитектура скрипта и скорее всего мои предложения будут крайне ламерскими. Я представляю само окошко, кнопки, которые представляю что делают, и внутренние какие-то процессы, которые идут скрытно но поддерживают логику данного скрипта и обеспечивают удобство без надобности дополнительных движений.

Если точней, это некий список задач. Каждый содержит например камеру, обозначеные для неё кадры, на таймлайне и кадры вывода (растяжение времени, что встроено в секвенсер). Так же папка вывода изображений, аналогично той что в Common \ File name prefix. В общем параметр Override. И всё это позволяет вручную забить все параметры, но делать этого никто не будет, так как есть волшебная кнопка заполнения строк из секвенсера, по строке на шот. И потом уже при надобности дописывать параметры, такие как папка вывода или что будет еще предусмотрено, а сюда уже можно разное воткнуть (тоглер FG\GI, рарешка, формат...)

Вот примерный вид того что я представляю.

Насчет работы. Если как-то получится считать текущий кадр прямо из секвенсера, то думаю дальше то и не сложно отправить его на рендер. Ведь секверсер сам расчитывает какой кадр у него на таймлайне и какой кадр или субкадр надо взять с таймлайна майи. Это и отправлять. После надо взять этот кадр, камеру шота, рендернуть и все пассы закинуть в нужные места с нужными именами. По окончании пройтись по следующему рендер слою. Кстати тоглер рендер слоёв для каждого шота тоже можно сделать, но кажется это не нужно. Если уж рендерим без какого-то слоя то все шоты.
 
Не готов взяться писать полноценный скрипт, однако вот что удалось обнаружить:
Код:
$time = `currentTime -q`;
sequenceManager -currentTime $time;
$shot = `sequenceManager -q -currentShot`;
$camera = `shot -q -currentCamera $shot`;
Этот код выставляет в секвенсоре время из таймлайна и возвращает текущую камеру из него. Соответсвенно, можно понять, какую камеру сейчас надо рендерить. Можно вставить его как скрипт на каждый кадр.
 

Paul_Winex

Знаток
Рейтинг
20
Замечательно. Но я просто не соображу даже с чего начать. Придется подождать...
Спасибо за код
 
Подсказка:

1. надо научиться запускать скрипт на каждом кадре рендера
2. надо придумать, как рендерить из заданной камеры. Например, можно сделать дефолтную камеру и ставить ее в каждом кадре на место той, которая сейчас активна в секвенсоре, копируя при этом остальные настройки. Есть и другие способы, но этот - самый наглядный и понятный, можно полностью сделать все руками, а потом посмотреть, что было написано в Script Editor

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

Paul_Winex

Знаток
Рейтинг
20
Хочу сказать, что я готов помочь с написанием скриптов или решением майских проблем, но я точно не буду писать скрипты на заказ, особенно если они не нужны мне по работе.
С этим никто не спорит. Не хочу и не собираюсь отнимать Ваше время в угоду себе без пользы Вам. Если будет желание и необходимость, и Вы напишите такую крутоштуку, то я просто буду рад :) Сам пока не в состоянии написать (на данный момент). И если количество необходимостей будет превышать количество нервов, потраченых на ручную настройку, то я займусь самостоятельно!

Спасибо за подсказки.
 
Тогда немного офтоп: я очень часто слышу вопрос "С чего начать учить MEL/Python/Max Script...?". Ответ всегда один и тот же: найдите задачу, которую можно и нужно реально эффективно решить скриптом, и напишите этот скрипт. По опыту могу сказать, что на форумах намного быстрее и охотнее отвечают на вопросы "Делаю так и так, не работает, что неверно?", чем на запросы новых скриптов.

PS Paul_Winex, безусловно, мне льстит обрашение на вы, да еще и с Большой буквы, но конкретно тут и конкретно в этой ситуации точно можно перейти на ты.
 

Paul_Winex

Знаток
Рейтинг
20
найдите задачу, которую можно и нужно реально эффективно решить скриптом
Так я начинал MaxScript учить. Всё верно.

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

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

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Вот и отложу решение на будущее, раз нет достаточно заинтересованных (включая свободное время) и знающих инструментарий людей.
А зря. Если в школе хотя бы Паскаль учил - разобраться с МЕЛом по стандартной хэлпе труда не составит.
Я тоже раньше считал, что скрипты писать в Майке - это ну совсем не моё. И оставалось надеяться лишь на то, что помогут "старшие собратья" - скриптёры. А когда найти нужный скрипт и/или уговорить кого-нибудь его написать не удавалось - приходилось извращаться со стандартными средствами Майки. Но однажды вконец приспичило ("DRL Input Box", смотри раньше в этой ветке)...
... и выяснилось, что изучить с ноля МЕЛ вполне реально по встроенной справке за 1 вечер... Ну и ещё один вечер - закрепить. В итоге: теперь самодельные скрипты использую постоянно. Периодически довожу их до товарного вида и делюсь с общественностью. Но главное:
  • Это ЛЮТО ускоряет работу. А некоторые задачи без самописных скриптов просто нереализуемы.
  • Да, порой бывает нужна помощь "старших по званию". Но в целом ты ни от кого не зависишь. Во всяком случае, не так кардинально, как раньше.

Оказалось, как и во многих других случаях, освоить МЕЛ людям мешает дурацкая грузинская фамилия - "Смогулия?".
 
Сверху