Render.ru

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

Frame_First

Мастер
Рейтинг
126
Если я правильно понял что вы хотите получить, то для этих целей подходит mel команда fileDaolog2, с использованием флагов -fileMode 1 -fileFilter "Photoshop file(*.psd)" либо питоновский аналог.
навели на решение, копаюсь, спасибо!

Upd. Решил свою другую проблему благодаря совету))

Эту пока копаю и копаю и копаю

Upd. Проблема решена!

$modified = $mycurrentPSD + ".fileTextureName"; // втыкаем эту переменную как переходник

AEpsdFileTextureBrowser "AEassignTextureCB $modified"; // Всё работает, как - незнаю, НО

AEpsdFileTextureBrowser "AEassignTextureCB ($mycurrentPSD + ".fileTextureName")"; - не пашет
 
Последнее редактирование:
Рейтинг
126
Всем привет! Нужна помощь, есть рабочий скрипт на пару строк, он позволяет менять уровень сглаживания на мультиобъектах, при активном Smooth Mesh Preview.

for($multObjs in `ls -sl -l`){
setAttr ($multObjs+".smoothLevel") 3;
}

Требуется, чтобы этот скрипт работал не только в объектном, но и в компонентном режиме.
Что то подобное цыпцын писал в своей книге ( том 2 про мел ).. там он писал что то типа ls - sl - fl, покопай
 
Рейтинг
126
Когда то давно я пытался переделать всю майку "под себя", с кучей хоткеев нелепых. По итогу сижу исключительно по дефолту + чуток дополнительных хоткеев на самые частые команды. И, конечно же пользовательские полки (шелф со скриптами, шелф с менее частыми инструментами и т.д)
Опыт конечно чувтвуется в этих строках. Тяжело переходить было на другую версию майки? А у меня наоборот, благодаря этому я перешёл с 2009 на 2016.

Но ты наверное не моделлер.. Я щас пытаюсь в моделинге искать способы меньше отвлекатся на полки, сделать как в браше, где ты не отвлекаешся от процесса. НЕ ОТВЛЕКАЕШСЯ. Вот суть. Фокус на задаче

Мой способ - ММ. Редактироваание Marking Menu, где по дефолту куча хлама.
 

4i4ikov

Знаток
Рейтинг
37
$modified = $mycurrentPSD + ".fileTextureName"; // втыкаем эту переменную как переходник

AEpsdFileTextureBrowser "AEassignTextureCB $modified"; // Всё работает, как - незнаю, НО

AEpsdFileTextureBrowser "AEassignTextureCB ($mycurrentPSD + ".fileTextureName")"; - не пашет
попробуйте так:
AEpsdFileTextureBrowser "AEassignTextureCB ($mycurrentPSD + \".fileTextureName\")";
 
Рейтинг
137
Народ, в 2017 не работает views.mel - так горячо любимый мною (уверен, и не только мною) скрипт. Никто не переписал его под 2017-ю, случайно?
 

simon310

Мастер
Рейтинг
94
Народ, в 2017 не работает views.mel - так горячо любимый мною (уверен, и не только мною) скрипт. Никто не переписал его под 2017-ю, случайно?
под 17ю много чего не работает пока(....так что не стоит спешить переходить на нее
 

4i4ikov

Знаток
Рейтинг
37
Народ, в 2017 не работает views.mel - так горячо любимый мною (уверен, и не только мною) скрипт. Никто не переписал его под 2017-ю, случайно?
Чего там не работает?
Нашел его на 3дцентре, включается, выключается, менюшка создается, что ещё?
Почистил его только от ворнингов, да он и с ними работал.
 

Вложения

Последнее редактирование:
Рейтинг
137
Да я попутал... Как-то не работал, видать, по каким-то другим причинам. А сегодня все хорошо. Спасибо. Ложная тревога, в общем. Без него как без рук.
 

4i4ikov

Знаток
Рейтинг
37
Как-то не работал, видать, по каким-то другим причинам. А сегодня все хорошо.
Да тоже вроде не сработал первый раз, вроде бы, потому что не обратил на это внимания.
А похоже есть тенденция, подобные сообщения уже были по 2017-ой, когда сперва не работает, а потом внезапно работает (с Unlock Normals помню было). И тоже с этим сталкивался на стандартных инструментах. Как будто происходит кэширование или регистрация компонента при первом запуске, чего по идеи быть не должно, но какой-то похожий на это процесс происходит у неё там в кишочках.
 

Джейсон Альбедо (Genomo)

Активный участник
Рейтинг
5
Ребят, нужна помощь, если кто знает, в последнем апдейте майки достаточно хорошо поработали над UV и так же, гораздо плавнее стало работать переключение между workspace'ами. В связи с этим очень хочется сделать переключалку между воркспейсами на один хоткей (например между Modeling Workspace и UV Workspace).
Есть пример toggle кода для окна UV Editora (первичное нажатие на хоткей - открывает юви, вторичное - закрывает), может как-то взять за основу для переключалки между воркспейсами:

if( `window -exists polyTexturePlacementPanel1Window` )
deleteUI -window polyTexturePlacementPanel1Window;
else tearOffPanel "UV Editor" "polyTexturePlacementPanel1" true;

Если кто поможет, готов задонатить.
 
Последнее редактирование:

4i4ikov

Знаток
Рейтинг
37
Ребят, нужна помощь, если кто знает, в последнем апдейте майки достаточно хорошо поработали над UV и так же, гораздо плавнее стало работать переключение между workspace'ами. В связи с этим очень хочется сделать переключалку между воркспейсами на один хоткей (например между Modeling Workspace и UV Workspace).
Есть пример toggle кода для окна UV Editora (первичное нажатие на хоткей - открывает юви, вторичное - закрывает), может как-то взять за основу для переключалки между воркспейсами:

if( `window -exists polyTexturePlacementPanel1Window` )
deleteUI -window polyTexturePlacementPanel1Window;
else tearOffPanel "UV Editor" "polyTexturePlacementPanel1" true;

Если кто поможет, готов задонатить.
Вроде просто всё
Код:
proc wsToggle(){
    string $W,$W1,$W2;
    $W1 = "Modeling - Standard";
    $W2 = "UV Editing";
    $W = `workspaceLayoutManager -q -current`;
    if ($W == $W1) workspaceLayoutManager -setCurrent $W2;
    if ($W == $W2) workspaceLayoutManager -setCurrent $W1;
    }
wsToggle;
Если нужно настроить под себя, то посмотреть текущий воркспейс:
workspaceLayoutManager -q -current
и его имя вставить в переменную $W1 или $W2


либо, если написать в таком виде, тогда, если текущий спейс любой другой, то сперва включится первый, а потом они будут меняться
Код:
proc wsToggle(){
    string $W,$W1,$W2;
    $W1 = "Modeling - Standard";
    $W2 = "UV Editing";
    $W = `workspaceLayoutManager -q -current`;
    if ($W == $W1) workspaceLayoutManager -setCurrent $W2;
    else workspaceLayoutManager -setCurrent $W1;
    }
wsToggle;
 
Последнее редактирование:

RoN43

Активный участник
Рейтинг
11
import maya.cmds as cmds
cmds.selectMode(component=True)
cmds.selectMode(object=True)
import maya.cmds as mc
vertModeON = mc.selectType(q=1, pv=True)
if vertModeON:
mc.selectMode(object=True)
mc.selectType(alc=False)
else:
mc.selectMode(component=True)
mc.selectType(pv=True)


есть этот код от многоуважаемого Александра Чернега.
запускается не всегда с первого раза.
выделяешь объект - запускаешь, и вот иногда скабатывает только со 2 раза.
В чем может быть загвоздка?
СПС
 

2manoff

Активный участник
Рейтинг
14
import maya.cmds as cmds
cmds.selectMode(component=True)
cmds.selectMode(object=True)
import maya.cmds as mc
vertModeON = mc.selectType(q=1, pv=True)
if vertModeON:
mc.selectMode(object=True)
mc.selectType(alc=False)
else:
mc.selectMode(component=True)
mc.selectType(pv=True)


есть этот код от многоуважаемого Александра Чернега.
запускается не всегда с первого раза.
выделяешь объект - запускаешь, и вот иногда скабатывает только со 2 раза.
В чем может быть загвоздка?
СПС
у тебя модуль cmds дважды импортится при чем с разным нейм спейсом. попробуй так:
import maya.cmds as mc эту строчку нужно убрать, и нейм спейс mc заменить на cmds
 

Лексей

Активный участник
Рейтинг
8
Подскажите плиз, как заставить майку загружать скрипт с кастомными маркинг меню, которые лежат отдельным файлом в дефолтный майский скрипт? Требуется, чтобы из файла подгружалось, а не код переносить. (Если такое вообще возможно).
См. скриншот:
 

Вложения

Последнее редактирование:

RoN43

Активный участник
Рейтинг
11
удалил строчку. Не помогает. Итак он не срабатывает в 100 % случаев при таком порядке действий
Выделяем объект запуск скрипт-не сработал, нажимаем еще раз - вошел в режим выделения точек - выходим в обжект мод - деселект и теперь при запуске он не сработает с первого раза.
срабатывает с первого раза когда:
Выделяем объект запуск скрипт-не сработал, еще раз не нажимаем, а делаем деселект и тогда при первом же запуске сразу войдет в режим точек.
какой то режим не дает сра ботать с первого раза.
еще один вопрос: есть подобный скрипт на mel(вот он всегда с 1 раза срабатывает) Как туда вставить плюсом выделение контрол вертексов на кривых?

{
if (!` selectMode -q -co`)
{
selectMode -co;
selectType -alc 0 -v 1;
}
else if (`selectType -q -v` || `selectType -q -co`)
selectMode -o;

}
 

2manoff

Активный участник
Рейтинг
14
удалил строчку. Не помогает. Итак он не срабатывает в 100 % случаев при таком порядке действий
Выделяем объект запуск скрипт-не сработал, нажимаем еще раз - вошел в режим выделения точек - выходим в обжект мод - деселект и теперь при запуске он не сработает с первого раза.
срабатывает с первого раза когда:
Выделяем объект запуск скрипт-не сработал, еще раз не нажимаем, а делаем деселект и тогда при первом же запуске сразу войдет в режим точек.
какой то режим не дает сра ботать с первого раза.
еще один вопрос: есть подобный скрипт на mel(вот он всегда с 1 раза срабатывает) Как туда вставить плюсом выделение контрол вертексов на кривых?

{
if (!` selectMode -q -co`)
{
selectMode -co;
selectType -alc 0 -v 1;
}
else if (`selectType -q -v` || `selectType -q -co`)
selectMode -o;

}
что должен делать скрипт? входить в режим подобъектов?
 

4i4ikov

Знаток
Рейтинг
37
Подскажите плиз, как заставить майку загружать скрипт с кастомными маркинг меню, которые лежат отдельным файлом в дефолтный майский скрипт? Требуется, чтобы из файла подгружалось, а не код переносить. (Если такое вообще возможно).
См. скриншот:
В общем случае, чтобы из файла подгружалось:
source "aaa.mel";
http://download.autodesk.com/us/maya/2010help/commands/source.html
 
Сверху