Render.ru

А есть ли в Майе Untemplate All ?

Рейтинг
172
#1
Есть такая функция ?
А то как я вижу - единственная замена фризу из Макса - это тэмплэйт, но какой ужас искать потом серенький объект в аутлайнере ! а если их сотни ?
 
#2
Можно назначать объекты на Layer и затем Template. И в Outliner не нужно копаться.
 
#3
На слоя назначать надо. Кстати это гораздо лучше чем фриз из Макс.
 
#4
Есть еще слои, которые можно темплейтить и референсить легким
нажатием.
Можно положить на полку, что то типа:
// set Template OFF
string $select[] = `ls -sl`;
string $atr;
for ( $node in $select )
{
print ("\n"+$node);
$atr = $node+".template";
setAttr $atr 0;
}

И все выделенное (в outliner-t напр.) будет Untemplate
Удачи.
 
Рейтинг
172
#5
Да, да, да... слои рулят, но !
но если объекты уже в слое ?
Есть чел. посередины комнаты.
Есть комната. Всё очень логично по своим слоям.
И вот я захожу в слой мебели, что бы поправить тумбочку.
И хочу сделать тэмплэйт шкаф, и что вокруг него, ну, чтобы тумбочку спокойно двигать и мне ничего не мешалось... абстрактно, но суть ясна: а)объекты уже по слоям; б) нужно затэплэйтить объекты из одного слоя; с) независимо не от чего, есть ли в Майе - антэмплэйт ол ?
 
Рейтинг
172
#6
Скриптик попробовал...
но если я всё выделяю в аутлайнере, что мне мешает просто нажать антэплэйт ?
 
#7
Можно сделать скрипт, который будет темплейтить шейпы обьектов, а не трансформы - тогда можно будет по идее пользоваться и лэйерами и простым темплейтом.

А можно ещё не темплейтить, а референсить - тогда обьекты будут "совсем как живые", но выделить их нельзя будет. Но референсить надо уже скриптом - стандартно оно только из AE или посредством лэйеров включается.

У меня просто добавлены три пункта в RMB'шную менюшку в outliner'е - "Reference/Template/и-ещё-что-то-уже-не-помню". Очень удобно.
 
#8
//Вот тебе untemplate all.
// Он untemplate делает всем нодам трансформации. Если ты так хочеш.
// Я думаю тебе его хватит . Это чуть-чуть переделанный скрипт mesh`а
// set Template OFF
string $select[] = `ls -transforms`;
string $atr;
for ( $node in $select )
{
print ("\n"+$node);
$atr = $node+".template";
setAttr $atr 0;
}
/*
А чтобы не лазить в OUTLINER :

selectMode -template

и ты будеш в сцене выделять обьекты template.
А вот сриптик которым пользуюсь я .
Я его повесил себе на Alt+t.
Он выделенное темплейтит или антемплейтит если выделенное уже темплейт.
А если ничего не выделено то он переключаестя в режим выделения темплейтов. (и обратно если опять нажмёш)
П.С. На хот-кей вешай toggleTemplate.
Текст помести в файл toggleTemplate.mel и помести етот файл в директорию со скриптами. Если чего не знаеш - спрашивай.
*/
/***********************************************************
*
* Program: toggleTemplate
* Created: 17.01.2003 0:23
* Author: Vladimir Kazantsev aka BoBaH aka Vovka
* (Firestarter project, level designer). Network name - "Vovka".
* Requested: own use
* Comments: bind it on a hotkey. E.G. Alt+t
* Usage:
*
*
************************************************************
*
* History:
*
* GSC 2002 vovka@gsc-game.kiev.ua
************************************************************/
global proc toggleTemplate()
{
if(size(`ls -sl`)>0)
{
string $objs[] = `ls -sl`;
if(`getAttr ($objs[0]+".template")`)
for($obj in $objs){
setAttr ($obj+".template") 0;
selectMode -object;
}
else
for($obj in $objs) setAttr ($obj+".template") 1;
}
else {
if (`selectMode -q -template`) selectMode -object;
else selectMode -template;
}

}
 
Рейтинг
172
#9
Да, действительно, рэференсить удобнее. Видишь объекты как они есть.
Если можно, то подробнее, плзь. как референзить конкретный объект.

Спасибо за скрипт Вовке, дал идею написать скриптик по открыванию аутлайнера и выдления в нём всех объектов. А потом просто хоткий 'антэмплэйт'.
Криво, но эффективно :)
 
#10
setAttr .overrideEnabled 1;
setAttr .overrideDisplayType 2;

То есть, это скорее закрытая фишка. Через неё слой к обьекту конектится.
Так что не очень советую.
Если обьект к слою добавить, то ".overrideDisplayType" будет определяться
слоем.
 
#12
Joss, так ведь прикольно по RMB это сделать. А ещё можно во вьюпортах менюшку приписать, скажем Actions для всех объектов - там (на шапке вьпорта) место свобдное есть;-) А шельвами это мы делать не будем - не стрёмно ;-)

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