Render.ru

MEL моделирование

Рейтинг
47
#22
VARVAR13 есть такое дело. Действительно в 2010 меню не возвращаются. Прокомментировать это не могу, потому шо сам дундук.
iNOD наконец то скрипты нормально срабатывают и запускаются. Решил это с помощью переустановки своего убитого виндовса.
 
Рейтинг
47
#23
Господа, как с помощью Mel принудительно сохранить файл userHotkeys.mel (нажатие на кнопку Сейв в Хоткей Эдиторе.)
Сохранение перестало нормально срабатывать. С помощью Скрипт Этитора нашел команду hotkeyEditorSave; Видимо она и запускается, когда жмешь на кнопку. Следоватльно она тоже не помогает.
Maya 2012
 
Рейтинг
47
#24
Нашел способ (хоть и дурацкий) как заставлять Майю сохранять.
Заметил закономерность. Файл userHotkeys.mel, сохраняется только тогда, когда назначается сочетание клавиш которое еще не использовалось в майе (включая дефолтовые).

Итак, сейчас для срабатывание сохранения хоткеев, после настроек, на любое действие нужно назначить что-то вроде Альт либо Контрол + F1 – F12. Когда такие безумные комбинации заканчиваются, удаляю их в ручную и файла userHotkeys.mel. После этого их опять можно назначать и сохранять.

Если кто-то знает более изящный способ или хотя бы имеет какое-то предположение, с радостью выслушаю.
 
Рейтинг
47
#25
Господа, помогите пожалуйста сделать Toggle сглаживания

Хочу соединить стандартные кнопки 1 и 3
LowQualityDisplay;
HighQualityDisplay;
Пробовал в If писать и в кавычках и в ``, также писал … == true, …==1, ни чего ни получилось.

И еще вопрос по поводу задания атрибута Display Subdivisions (рис) для выделенного объекта.
При включении этой функции, скрипт эдитор возвращает:
setAttr "pCubeShape1.displaySubdComps" 1;
То есть эта строчка кода, жестко привязана к имени объекта pCubeShape1. Пробовал заменить имя объекта переменной, не вышло
string $Sel[] = `ls -sl`;
setAttr "$Sel.displaySubdComps" 1;
Возможно, не срабатывает потому что во время присвоения переменной, сохраняется нод // Result: pCube1 //, на нужен pCubeShape1. Может по какой то другой причине не действует. В общем сам не разобрался.
 

Вложения

Рейтинг
47
#27
007, большое спасибо!

Я так понял, что указывание в массиве цифры 0 ($Sel[0]), выделяет нужную ноду для команды .displaySubdComps

Доделал скрипт полностью:
Код:
string $Sel[] = `ls -sl`; 
$mesh = $Sel[0]+".displaySubdComps"; 
$MeshTest = getAttr ($mesh);
if ($MeshTest == 0) {
setAttr $mesh 1;
} else {
setAttr $mesh 0;
}
Но все же вопрос по Toggle сглаживания LowQualityDisplay; HighQualityDisplay; остается открытым!
Возможно мне и удастся залинковать эти два действия. Но я точно не смогу сделать так, что бы при выделении нескольких объектов с разным уровнем сглаживания, сперва все сбрасывались на 1, а потом начинали изменятся между 1 и 3.
 
Рейтинг
47
#28
Готово!
Оказывается в Майе есть стандартная предустановка Miscellaneous => QualityDisplayMarkingMenu
Которая при каждом нажатии, поочередно включает все три уровня сглаживания (Заменяя кнопки 1, 2, 3).

Нашел скрипт в папке Майя, немного перелопатил:
Код:
global int $currentDisplayQuality;
if ($currentDisplayQuality == 0 ) {
// Upgrade to High quality display
$currentDisplayQuality = 2;
displaySmoothness -du 2 -dv 2 -pw 16 -ps 4 -po 3;
if (`isTrue "SubdivUIExists"`) {
subdivDisplaySmoothness -smoothness 3;
}
} else {
// Loop back to Low quality display
$currentDisplayQuality = 0;
displaySmoothness -du 0 -dv 0 -pw 4 -ps 1 -po 1; 
if (`isTrue "SubdivUIExists"`) {
subdivDisplaySmoothness -smoothness 1;
}
}
Теперь, переключается между 1 и 3
 
Сверху