Render.ru

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

Slavenin

Активный участник
Рейтинг
12
#22
именно так: "Press висит команда views, на та же кнопка release висит команда viewsRelease"...

остается только предположить что это какие-то железные глюки, майку даж переустановил, все равно после запуска, не работает.... maya 2009 sp1

в любом случае спс за помощь :) жду новых скриптов :)
 
#24
=)
на этих выходных весь Нивал Нетворк ездил в Минск на корпоративный отдых, в гости к нашему белорусскому офису. В связи с этим провисло обновление темы, в эти выходные исправлюсь.
 

Nevajno

Знаток
Рейтинг
26
#25
Немного с опозданием, но отпишусь.
Сам уж давно пользую замечательный скриптец (view) от многоуважаемого Денисыча. И лично мне он нравится в своем первоначальном виде, все дополнительные навороты как-то не особо востребованы....
 
#26
Nevajno, я ни в коем случае не заставляю никого заменять оригинальный скрипт. Все навороты появились с течением времени при решении реальных задач, они согласованы с автором и частично им же дописаны - Денис работает в минском отделении Nival Network, и скрипты для работы мы разрабатываем вместе.
 
#27
Привет всем!

Наконец-то я добрался до описания Xumi, позабытого чудо-плагина, который очень сильно расширяет сознание пользователей и юзабилити Maya. Насколько я понял, он вызвал наиболее сильную реакцию на мастерклассе. Мне потребовалось определенное время, чтобы подготовить версию для Maya 2009, поэтому показываю его только сейчас.

Данный плагин позволяет использовать иконочные marking меню, которые очень сильно завязаны на контекст. Пользователь нажимает только 4 кнопки (A (action), S (select), D (display), Q (Tool)) и кликает либо на левую, либо на среднюю кнопки мыши. Эти несложные действия позволяют вызвать около 170 разных вариантов меню, благодаря зависимости от контекста, которую можно назвать действительно полной. Плагин анализирует тип выделения, количество выделенных объектов/компонент и панель, в которой его вызвали. А иконки заменяют текстовые пункты стандартных меню на узнаваемые картинки с привычных майских полок. Помимо этого в Xumi есть очень хороший редактор меню и возможность использовать одно и то же меню в нескольких контекстах путем связывания (link).

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

Смотрим на видео, чтобы поверить, что это возможно:



Очевидно, что это очень непростая система, которая состоит из большого количества компонент. В состав Xumi входят:
- mll плагин, который позволяет строить меню из иконок
-mel файлы (около 15 000 строчек кода)
- описания меню (около 170 пар файлов)

Меню описываются парами, так как к каждому пункту можно добавить набор так называемых пресетов (preset), которые показы в видео (синие прямоугольники). Каждый пресет представляет собой отдельный скрипт, который может быть никак не связан с командой.

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

Как установить: распакуйте содержимое архива (http://bc6.ru/scripts/xumi2009x32.rar) и скопируйте файлы в соответствующие директории с настройками Maya. Папку system32 с dll файлами надо скинуть в папку Windows. Внимание: этот плагин скомпилирован под винду для Maya 2009 32 бита. Версии для 2008 и 2010 могу выложить дополнительно, под линукс и мак не тестировал. 64 битная версия возможно появится в скором времени.

После того, как все скопировано, вы запускаете Maya 2009 и ищите новую полку Xumi, на которой надо будет нажать кнопку с говорящим именем Start. После это появится диалоговое окно, в котором можно переназначить дефолтные кнопки для вызова меню. Если после всех манипуляций никаких ошибок в Script Editor не появилось, можно смело начинать тестировать. Если вы хотите, чтобы Xumi всегда запускался вместе с Maya, добавьте код кнопки Start в файл userSetup.mel

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

Теперь небольшой гайд по использованию основных фич Xumi. Вы всегда работаете с четыремя кнопками на клавиатуре (Q, A, S, D) и кнопками мыши: левая (LMB) и средняя (MMB). Контекстно-зависимыми являются сочетания кнопок A + LMB и S + LMB, во всех остальных случаях меню одинаковые. Это сделано специально для того, чтобы мозг не взрывался от обилия разных меню. Этим грешило оригинальное решение от автора, ознакомиться с которым можно тут.

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

Q + LMB: меню с чисто инструментальными кнопками, простое и понятное (Center Pivot, Delete, Freeze Transformations etc. )
Q + MMB: меню для работы с костями и сетапами

D + LMB: продвинутые тогглеры для быстрого скрытия или показа объектов по типам. Обратите внимание, что при удержании курсора на кнопке результат будет другой.
D + MMB: тогглеры отображения объекта, все относительно просто

A + MMB: меню для работы с файлом (открытие, сохранение и т.д.)

S + MMB: простое меню для работы с селекцией

Теперь перейдем к контекстно-зависимым комбинациям, а именно A + LMB и S + LMB. Напомню, что буква А взята из слова Action, а буква S из слова Selection. Соответственно, меню по этим комбинациям предназначены для действий и для работы с селекцией. В принципе, A + LMB работает на полигональных объектах примерно так же, как и комбинация Shift+RMB. Только, очевидно, полигонами все не ограничивается – выбирайте кривые, камеры, nurbs, частицы, кости и т.д. Не забывайте про комбо-селекции, такие как edge и face, которая была показаны в видео. Я не гарантирую, что меню есть на все возможные случаи, но на большинство осмысленных выделений у Xumi есть, что вам предложить. А если и нет, то всегда можно быстро и просто добавить необходимые пункты в новое меню. Собственно, S +LMB работает примерно так же.

Заключение: пробуйте, тестируйте, комментируйте, предлагайте новые решения. Я предупреждаю, что это действительно очень полезная и очень непростая штука, в которой могут быть баги и ошибки. Старайтесь быть конструктивными в своих комментариях =)

PS Возможно, кто-то сильно удивится, но этот плагин очень старый: работал он еще под Maya 5, на Highend3d до сих пор можно найти оригинальные файлы. По какой-то неведомой мне причине сообщество не приняло его к использованию, в результате сами авторы перестали в какой-то момент обновлять плагин. Они были очень удивлены, когда я написал им письмо с просьбой отдать мне исходный код, так как были уверены, что это все уже давно забыто и никому не нужно. Но они удивились еще больше, когда я написал, что активно правлю их код и собираюсь продвигать все дело дальше в массы. Код я в итоге получил, однако «вынужден» был согласиться распространять все его модификации исключительно в некоммерческих целях. Такие вот люди есть в наших рядах =)
 

Vfrcbv

Пользователь сайта
Рейтинг
2
#28
Дмитрий, спасибо за сдержанное слово и за Xumi. Радует что такие люди есть в наших рядах...
 

SpeeDoza

Пользователь сайта
Рейтинг
2
#29
Только у меня проблемы с установкой? Возможно, это связано с отсутствием файла connectPolyShape.xpm
Нашел его в архиве на highend3d.com, и вставил в C:\mayaPrefs\2009\prefs\icons\ но не помогает. Может быть его надо в какое-то определенное место поместить?

Код:
loadPlugin wheelBoxContext;
Xumi2(0);
// Error: Unable to dynamically load : c:/mayaPrefs/2009/plug-ins/wheelBoxContext.mll
Приложение не было запущено, поскольку оно некорректно настроено. Повторная установка приложения может решить данную проблему.
 // 
// Error: Приложение не было запущено, поскольку оно некорректно настроено. Повторная установка приложения может решить данную проблему.
 // 
// Error: Приложение не было запущено, поскольку оно некорректно настроено. Повторная установка приложения может решить данную проблему.
 (wheelBoxContext) // 
saveShelf Polygons "c:/mayaPrefs/2009/prefs/shelves/shelf_Polygons";
// 1 // 
saveShelf Xumi2 "c:/mayaPrefs/2009/prefs/shelves/shelf_Xumi2";
// 1 // 
// Saving preferences to : c:/mayaPrefs/2009/prefs/userPrefs.mel
// Saving window positions to : c:/mayaPrefs/2009/prefs/windowPrefs.mel
// Saving runtime commands to : c:/mayaPrefs/2009/prefs/userRunTimeCommands.mel
// Saving hotkeys to : c:/mayaPrefs/2009/prefs/userHotkeys.mel
// Saving named commands to : c:/mayaPrefs/2009/prefs/userNamedCommands.mel
// Saving plug-in preferences to: c:/mayaPrefs/2009/prefs/pluginPrefs.mel
// Preferences saved. See Script Editor for details.
// Warning: File not found: connectPolyShape.xpm // 
// Error: Cannot find procedure "wheelBoxContext". // 
// Warning: waitCursor stack empty //
P.S. Если надо, могу Xumi продублировать на других файлообмениках.
Да, и Мега Спасибо за неё! (Почему-то не срабатывает кнопка "Спасибо", наверное ограничение форума)
 
#30
хм.. ни разу не видел таких багов при загрузке плагинов. Ошибки на русском ... как это вообще? Какая система (XP, Vista)?

про connectPolyShape - не стал мусорить в настройках, это минорный файл, особо не нужен.

Cпасибо за предложение выложить на другие файлообменники, я в этом, признаться, не силен. В будущем, если дело пойдет, дружно переедем под SVN

И спасибо за спасибо =) Жаль, что пока ни у кого не заработало, сюдя по всему.
 

SpeeDoza

Пользователь сайта
Рейтинг
2
#31
Система Windows XP Home Edition SP2 русская 32bit

Сама Maya 2009. В About написано: 200809110030 09/11/2008
Руссификаторы никакие не ставил.

Папку c:/mayaPrefs/ очистил для чистоты эксперемента, запустил Майку, закрыл её и только потом скопировал Xumi.
 

SpeeDoza

Пользователь сайта
Рейтинг
2
#33
На другой машине WinXP Pro SP3 всё работает!

На компе с WinXP Home SP2 другие плагины работают. (Пробовал Renderman for maya 3, UVAutoRatio Basic)
Буду рад на этой машине проверить Xumi для Maya 2008

Сейчас качаю SP3 отдельно, поставлю на Home, потом отпишусь. (скорость скачки почему-то ужасная с microsoft, поэтому скорее всего отпишусь завтра)
 

SpeeDoza

Пользователь сайта
Рейтинг
2
#34
SP3 не помог.

Начал через сеть полностью обновлять систему, но не дождался (уж больно много пакетов скачивать).
Попробовал параллельно установить Microsoft Visual C++ 2008 Redistributable Package, и о чудо, всё заработало! ;)

Так что, скорее всего, дело в нём.

Теперь буду осваивать Xumi.
Спасибо ещё раз!
 
#35
посыпаю себе голову пеплом... в оригинальной сборке есть папка system32, файлы из которой (dll) надо скопировать в виндовую system32 в том случае, если Xumi не заработала "из коробки".
RGBam:
"Главный архив теперь содержит нужную папку"
 

imha

Знаток
Рейтинг
20
#36
хай, желающие на 2010 и х64 есть думаю весь пакет будет очень кстати.
за ранее благодарен!

з.ы. на 2010 хуми не стало чет
 
#38
Всем привет!

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

С другой стороны, может и хорошо, что так, и сейчас я объясню почему. На одном из проектов в Криате мне пришлось отсматривать большое количество ассетов от внешней команды разработчиков, в том числе и анимации. В какой-то из дней или час унылого импорта клипов по одному и постоянной подстройки Time Slider я пошел с вопросом «Как же вы работаете?!» к очень хорошему аниматору Леше Попову aka Denzil , и он дал мне скрипт Clips Chooser, существенно упрощающий просмотр клипов. Скрипт можно взять тут: http://www.cgtalk.ru/forum/showthread.php?t=11044. Когда я начал приставать к нему с вопросами уже по самому по скрипту, он дал мне аську автора - Дениса Рыбакова aka Denisech... Собственно, так мы и познакомились, и я очень рад этому знакомству.

Скрипт существенно помог мне с ассетами, но я понимал, что его можно сделать действительно серьезным инструментом для всесторонней работы с клипами. Около месяца работы по вечерам и не только потребовалось на то, чтобы написать свою версию Clip Chooser, которая уже примерно год живет на Highend3d: http://www.highend3d.com/maya/downloads/mel_scripts/animation/clipsChooser-5361.html

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

В Нивале за год постоянной работы с аутсорсерами у меня появились новые требования к инструменту, поэтому относительно недавно мы с Денисом его дописали. Референсинг клипов был убран из интерфейса, так как оказался невостребованным, но в коде было решено его оставить. Поскольку скрипт стал совсем мало похож на своего предка, ему было решено присвоить новое имя Clip Viewer.

Перед тем, как показывать видео, хочу обратить ваше внимание на ключевые проблемы юзабилити, которые я вижу в Trax Editor:

- чтобы посмотреть клип, надо сначала отключить все остальные, а потом включить нужный
- чтобы проимпортировать несколько клипов, надо каждый загрузить отдельно
- аналогичная ситуация с выгрузкой: один за одним. Могу сказать, что операция по правке всех 5, 7, 15 и т.д. клипов при изменении Character Set становится от этого ужасом аниматора, хотя все дело в обычной недоделке разработчиков
- нет никакого списка клипов, равно как и поиска по ним
- чтобы сделать клип абсолютным или относительным, надо обязательно открыть Attribute Editor, дождаться, пока Maya построит весь интерфейс и только после этого нажать All absolute/relative
- длительность клипа с учетом scale узнать невозможно
- нет простого способа получить информацию обо всех клипах, даже такую примитивную, как их длительность. Это бывает крайне важно при приеме работ – анимации должны четко укладываться в определенные дизайном игры временные рамки

Все это и многое другое можно делать легко и без проблем:

Надеюсь, этот скрипт (http://bc6.ru/scripts/clipViewer.mel) будет вам полезен. Запуск стандартный, все работает «из коробки»

PS Clips Chooser был написан во многом благодаря Maxya (http://www.highend3d.com/maya/downloads/tools/syntax_scripting/MAXYA-Scripter-Learning-Edition-4352.html). Год назад разработчики решили добавить меня в список Special Thanks за то, что я писал им баг-репорты и предложения в течение месяца работы над Clip Chooser. Этим летом я дописывал Clip Viewer и написал новый отчет на форуе примерно на страницу, а в конце поста предложил завести Bug Track. Модератор очень порадовался этой идее, и на следующий же день систему завели. Вот так бывает =)

PPS За год скрипт на Highend был скачан более 1500 раз, никто не написал ни одного коммента.

PPPS Скрипту Дениса уже три года, его скачали 256 раз, но никто так и не удосужился написать что-либо. Странно, хотя, наверное, давно уже пора перестать этому удивляться.

PPPS Сейчас в работе еще одна итерация, продолжаем улучшать качество =)
 

Backa

Пользователь сайта
Рейтинг
4
#39
Здравствуйте! Интересует, есть ли возможность оптимизировать Xumi под Linux'овую Maya 2009 64bit?
Заранее благодарен за ответ.
 
#40
Привет!

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