1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

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

Тема в разделе "Maya", создана пользователем Boris Chuprin, 16 янв 2003.

Модераторы: Dark™, Skif
  1. Boris Chuprin

    Boris Chuprin Мастер

    С нами с:
    16.11.2001
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    177
    Есть такая функция ?
    А то как я вижу - единственная замена фризу из Макса - это тэмплэйт, но какой ужас искать потом серенький объект в аутлайнере ! а если их сотни ?
     
  2. Guest

    Можно назначать объекты на Layer и затем Template. И в Outliner не нужно копаться.
     
  3. Guest

    На слоя назначать надо. Кстати это гораздо лучше чем фриз из Макс.
     
  4. Guest

    Есть еще слои, которые можно темплейтить и референсить легким
    нажатием.
    Можно положить на полку, что то типа:
    // 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
    Удачи.
     
  5. Boris Chuprin

    Boris Chuprin Мастер

    С нами с:
    16.11.2001
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    177
    Да, да, да... слои рулят, но !
    но если объекты уже в слое ?
    Есть чел. посередины комнаты.
    Есть комната. Всё очень логично по своим слоям.
    И вот я захожу в слой мебели, что бы поправить тумбочку.
    И хочу сделать тэмплэйт шкаф, и что вокруг него, ну, чтобы тумбочку спокойно двигать и мне ничего не мешалось... абстрактно, но суть ясна: а)объекты уже по слоям; б) нужно затэплэйтить объекты из одного слоя; с) независимо не от чего, есть ли в Майе - антэмплэйт ол ?
     
  6. Boris Chuprin

    Boris Chuprin Мастер

    С нами с:
    16.11.2001
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    177
    Скриптик попробовал...
    но если я всё выделяю в аутлайнере, что мне мешает просто нажать антэплэйт ?
     
  7. Guest

    Можно сделать скрипт, который будет темплейтить шейпы обьектов, а не трансформы - тогда можно будет по идее пользоваться и лэйерами и простым темплейтом.

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

    У меня просто добавлены три пункта в RMB'шную менюшку в outliner'е - "Reference/Template/и-ещё-что-то-уже-не-помню". Очень удобно.
     
  8. Guest

    //Вот тебе 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;
    }

    }
     
  9. Boris Chuprin

    Boris Chuprin Мастер

    С нами с:
    16.11.2001
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    177
    Да, действительно, рэференсить удобнее. Видишь объекты как они есть.
    Если можно, то подробнее, плзь. как референзить конкретный объект.

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

    setAttr .overrideEnabled 1;
    setAttr .overrideDisplayType 2;

    То есть, это скорее закрытая фишка. Через неё слой к обьекту конектится.
    Так что не очень советую.
    Если обьект к слою добавить, то ".overrideDisplayType" будет определяться
    слоем.
     
  11. Guest

    А в AE галочку не пробовали ставить? Мышкой?
     
  12. Guest

    Joss, так ведь прикольно по RMB это сделать. А ещё можно во вьюпортах менюшку приписать, скажем Actions для всех объектов - там (на шапке вьпорта) место свобдное есть;-) А шельвами это мы делать не будем - не стрёмно ;-)

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

Поделиться этой страницей