Изменение дефолтного Marking Menu в maya

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



Но пишу я не о том, как рисовать текстуры, а о том, как изменить в майке эту штуку, по культурному – marking menu, я буду называть это MM



Скажите, пожалуйста, кто из вас пользуется Extrude Vertex? А вот тут



Кто пользуется Poke Face? Bevel Face? Или может Wedge Face? Как часто? Просто интересно. Хорошо, к делу. Давайте поменяем стандартное меню. Например, я очень часто использую merge vertices и merge vertices to center. Но их запихнули очень далеко.



Итак, стандартными средствами, имеется в виду в самой майке, поменять это никак нельзя.



Да, тут нельзя. Нам придётся залезть в майские меловские файлы, где прописаны эти наши ММ. Как нам узнать, куда лезть? Открываем script editor (даже не спрашивайте где он находится)



Включаем Echo All Commands



Дальше создаём любой объект (я создал цилиндр), выделяем вертексы (сколько угодно!), в окне скрипт едитора пишем кучу слэшей, чтобы, когда мы выполним следующее действие было понятно, откуда нам читать!



Теперь мы выполним любую команду в ММ, к примеру, сделаем average vertices!



Иии нажимаю…..



У нас высветилось куча кода, среди которого есть contexToolMM. Не помню, что в этом файле находится, но это не он. Дальше, мы узнали имя команды, которая выполнилась. Но вся фишка в том, что эта команда находится в ММ для вертексов. Теперь во все тяжкие. Устанавливаем программку Total Commander ( TC ), он нам нужен чтобы выполнить поиск на компе где находится меловский файл с такой командой!

Искать мы будем в C:\Program Files\Autodesk\Maya2016\scripts\others

Методом тыка, я понял, что в этой папке спрятаны все майские мел файлы с ММ
В TC жмите 'поиск файлов’!



Вбиваем место поиска – наша директория, как на картинке. Ставим галку – ‘с текстом', пишем туда нашу команду и нажимаем поиск. Как видим выше, TC нашёл 3 файла, в названии одного из них есть буквы ММ.

Его имя – contextPolyToolsVertexMM.
Далее расскажу очень важное правило. КРАСНЫМ И ЖИРНЫМ.
Никогда не меняйте ничего в установочных файлах. Я имею в виду, никогда не меняйте файлы в этой папке C:\Program Files\Autodesk\Maya2016, конкретно в нашем случае – тут
C:\Program Files\Autodesk\Maya2016\scripts\others.
Скопируйте файл contextPolyToolsVertexMM из C:\Program Files\Autodesk\Maya2016\scripts\others в C:\Users\Volodya\Documents\maya\2016\scripts
Volodya – это имя вашего PC. Это намёк.



Теперь немного отвлечёмся. Как вы поняли, майка хранит свои настройки в 2 местах. Первое – это то куда вы ставили свою майку - C:\Program Files\Autodesk\Maya2016. Второй путь – это где майка хранит пользовательские настройки -C:\Users\Volodya\Documents\maya\2016

Если вы хотите перебить систему, нашли новое место работы или вкратце просто хотите переустановить майку, но вам лень заново настраивать её – вы должны скопировать содержимое папки C:\Users\Volodya\Documents\maya\2016. Это ваши настройки, кроме, мне кажется, горячих кнопок. Их нужно отдельно экспортить в майке в Hotkey Editor е (раньше по другому называлось меню ). Там есть экспорт, импорт и т.д… И всё. И ваши боли и мучения ушли!
Один момент. Когда майка при первом запуске спрашивает – желаете ли вы создать дефолтные настройки или скопировать настройки из предыдущей версии – просто мой совет – жмите дефолтные. Майка не всегда корректно переносит настройки из разных версий, а иногда создаёт необъяснимые багги.
Багги – это машинка из генералов, стреляет ракетами!



Итак, наше ММ. Мы скопировали файл contextPolyToolsVertexMM в C:\Users\Volodya\Documents\maya\2016\scripts. Теперь у майки есть один и тот же файл в разных местах. Какой она будет считать приоритетным, если они будут отличаться? Тот, который находится в ваших скриптах, в C:\Users\Volodya\Documents\maya\2016\scripts.
Если она находит здесь свои настройки, она их читает и забивает на такой же файл у себя в установочной папке. То есть вы можете как угодно изгаляться, не боясь, если что - удалить его и майка отлично запуститься.
Открываем contextPolyToolsVertexMM, жмём поиск и главное, те, кто боится MEL, сохраняйте спокойствие, там очень все просто, почти копипаст.



Вбиваем AverageVertex и жмём найти



Сейчас мы нашли то, что нам надо очень быстро. Иногда приходится, копаться в документе изучая скрипты, но в большинстве случаев это не долго, как сейчас.
Итак. Всё что нам нужно - это вот эти вот строчки. Что тут что обозначает? Флаг – label это имя команды, которое мы видим в ММ. Обычно если я хочу его изменить – я пишу так, к примеру – label “I love my wife”

Флаг –command – команда, сюда можно прописать свой скрипт.
Флаг –radialPosition означает, где находится наша команда в ММ. К примеру, если этого флага нет, то команда вставляется ниже, картиночка



Флаг image - это иконка! Вы можете вставить сюда свою картинку. Для этого пишете её имя и копируете в C:\Users\Volodya\Documents\maya\2016\prefs\icons. Можно найти, где то все майские иконки и весело их редактировать под свои личные нужды!
Ещё одно. Как создаётся всплывающее окно

Вначале пишется блок menuItem в котором отсутствует флаг – command, но зато есть флаг – subMenu 1 Затем пишутся блоки с флагами - сommand которые будут находиться во всплывающем за стрелкой ММ



В самом конце стоит setParent –m ..; Поизучайте как написаны те или иные менюшки!
P.S. На этом скриншоте я удалил некоторые блоки, чтобы было легче увидеть начало и конец всплывающей ММ!

Начнём редактировать! Я хочу перетащить merge vertices поближе! Берём и удаляем ненужное, прям когда чистите комп:

Сохраняемся (проверьте ещё раз, чтоб mel файл лежал в \Volodya\Documents\maya\2016\scripts) Закрываем и открываем майку

Кажется, ничего не сломали)
Через несколько недель после того как я поменял у себя ММ я стал забывать какому ММ принадлежит какой файл. И решил сделать не большое summary, чтобы не забыть и не искать заново. Надеюсь, оно вам поможет! Если чего то не найдёте, то ТС вам в помощь!

// Общие

initHUD - Heads Up Display

selectToolOptionsPopup - режим выделения, ctrl+shift+rmb;

dagMenuProc - режим выделения, rmb;

translateMarkingMenuImpl - режим move, ctrl+shift+rmb;

polyConvertMM - режим to, ctrl + rmb;


/// моделинг, UV

texturePanelMenus - UV editor, все MM

textureWindowCreateToolBar - UV editor, toolBar

contextPolyToolsDefaultMM - ничего не выделено, shift+rmb;

contextPolyToolsObjectMM - режим выделения, shift+rmb;

contextPolyToolsEdgeMM - режим edge, shift+rmb;

contextPolyToolsFaceMM - режим face, shift+rmb;

contextPolyToolsVertexMM - режим vertex, shift+rmb;


// Примеры и вода, можно не читать

В конце хочется сказать, что мною двигало желание навести порядочек, сэкономить время, сделать всё попроще, как в Zbrush е. Только подумайте, если вы делаете 20 000 merge в год и теперь каждый раз это занимает на одну секунду меньше! А? (Тупняки на работе никто не отменял). Или, к примеру, вы не тянетесь за часто используемой командой на shell а на автомате жмёте в ММ? Не отвлекаться от процесса, мысль – моментальное исполнение!
Если вы не делаете 10 действий чтоб назначить checker, а делаете это в одно нажатие?
Особенно хорошо у меня получилось в UV editor e ( UV я делаю в майке)

Кажется только ради ювишки это того стоило. Всё под рукой Дальше примеры:



Cвоё окошко вместо стандартного. Не надо вбивать -1, 1 и прочее. После нажатия само закрывается. Назначение чекера в одно нажатие. Если он уже есть в сцене – назначается именно он.
Открытие UV сразу в PS! Нам не надо тратить кучу времени на сохранение и поиск куда. Одна ювишка на все проекты!



Похвастался. Очень рекомендую книгу Цыпцына – главу про MEL (второй том). Написано с душой! И обязательно гугл!
Главное – это чувствовать, искать себя, называйте, как хотите. Если мне захотелось поразбиратся в MEL, а не нарисовать ещё одну текстуру, так что, я теперь не настоящий художник? Художник, но по-своему. Когда я оптимайзил свой процесс – я горел внутри от желания. В тоже время рисовать водного элементаля для себя мне было лень, хотя я и планировал. Мы все уникальны. Главное - делать то к чему лежит сердце в данный момент.

Всем спасибо!)

753 0 850 12
6
2016-10-18
Лепота
2016-10-18
Крутой тутор, Спасибо.
2016-10-31
Молодец. Десяточку поставил
2016-10-31
А вот за десяточку спасибо
2016-11-05
Самое интересное автор утаил, как создавать свои окна по типу Дубликат спешл, открытие в псд и в коте например, в обще хотелось бы расширенного урока именно по кастомному меню!
2016-11-05
Создание окошек и основы написано очень круто у цыпцына, я лишь хотел разогреть интерес. По коату. Этот плагин называется апплинк to maya. Как то так. Псд же на удивление имеет сложный код для начинающих. Есть два варианта. Первый - цыпцын, гугл, хелп и терпение.В награду получите возможность выжать из майки максимум под свой уникальный пайплайн. Второй - ждать пока я разберусь со статей на инглише и гамроуде. Хочется чтоб у кого есть возможность кинули хоть бакс за полугодичное удовольствие 
RENDER.RU