Render.ru

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

Еван Антонов

Активный участник
Рейтинг
5
Если же версия майки другая, то делаем следующее:
Майка как раз у меня 2008. Подправил свой файлик и все заработало. Единственное, не очень понятно, как работают данные операции
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Единственное, не очень понятно, как работают данные операции
булевые операции с выделением (запомнить выделение, пересечь, вычесть, добавить)
Если более подробно:
Эти команды позволяют запоминать произвольные комбинации выделений и добавлять в / убирать из запомненного. "Произвольные комбинации" - значит можно как угодно комбинировать выделения объектов/компонентов.
  • Memorized > Select
    - собственно выбирает запомненное. Первое - потому, что используется чаще всего. Но, само собой, нужно сперва что-то запомнить.
  • Memorized > Replace
    - запоминает выделение. Если при этом уже что-то было запомнено, то текущее выделение его заменит. Т.е. "очистить запомненное и запомнить то, что выделено сейчас".
  • Memorized > Add to & select
    - добавить текущее выделение к запомненному и выбрать всё, что теперь запомнено.
  • Memorized > Add to
    - просто добавить к запомненному, сохранив выделение.
  • Memorized > Remove from & select
    - убрать текущее выделение из запомненного и выделить то, что в нём осталось (то, что теперь запомнено).
  • Memorized > Remove from
    - убрать выделенное из запомненного и выделить то, что не было убрано (то, чего не было в запомненном).
  • Memorized > Intersect with & select
    - пересечь с запомненным и выделить его (т.е. пересечение).
  • Memorized > Intersect with
    - пересечь с запомненным и выделить оставшееся (то, что не пересеклось - т.е. то, чего не было в запомненном).
Иными словами, есть простые добавление, вычитание и пересечение - они выделены курсивом (Add to, Remove from и Intersect with). После их выполнения выделение на объектах старается сохраниться.
И есть те же операции, но с последующим выделением запомненного (с постфиксом "& select"). Т.е. произвели булевую операцию и выделили результат. При этом, разумеется теряется выделение со всего, что в запомненное не попало.

Пояснение о том, как работает:
для запоминания используется обычный майский сет под именем "DRL_tmpMem" - так что не пугайтесь и не стремитесь его удалять каждый раз, как откроете Outliner: в нём-то и хранится выделение. Кстати, благодаря ему (поскольку он в сцене тоже сохраняется), с запомненным выделением можно работать и после сохранения/открытия сцены. Т.е., долго и упорно получали какое-то мега сложное выделение, запомнили его, сохранили сцену, продолжили работу, через пару минут Майка упала... Но не беда: если открыть сценку - наше хитрое-прехитрое выделение осталось, достаточно сделать Memorized > Select на любом объекте.
Повторюсь, идею и принцип работы придумал не я, заимствовано у Дениса 0-1. Сет называется по-другому во избежание конфликтов с его кодом.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
А про назначение материалов - полностью солидарен с Дмитрием. Через hypershade - как-то оно стройнее, что ли... логичнее, яснее, очевиднее... более однозначно, предсказуемо...
 
Рейтинг
47
Господа добрый вечер.
Просматривал это тему еще в самом ее зарождении, после чего приблизительный аналог скрипта views появился у меня в максе. И вот, решил перейти на Maya. Прочел всю переписку, опробовал скрипты, появились некоторые вопросы и наблюдения.

1) Xumi. Если я не путаю, DRL писал, что при нажатии на Q, включается Моов тоол вместо Селект тоола (и в последствии нашел ошибку в коде). В Xumi 2010-х64 скаченном с сайта Дмитрия, та же проблема.

Поюзал я это Xumi и принял стратегическое решение не пользоваться им.
Во-первых, потому что плагин существует до 2010 версии. Понимаю что за последние несколько версий инструментарий (особенно в области моделирования) не сильно то изменился (сам сидел на максе 2009). Но мне кажется, что переходя на новый пакет, приспосабливаться к программе 2-3х летней давности нерационально. Лучше я настрою все в 2012 и буду на ней сидеть не переходя на новые версии. Мотивируя это тем, что все равно ничего нового в них нет :)
Во-вторых, я так понимаю, что все это Xumi держится на нескольких энтузиастах и каждый выполняет свою часть работы. А в жизни ведь бывает разное. Кому то из них надоест, сменит род деятельности или уедет в Тибет обретать просвещение. И получится, что целое поколение Майщиков останется без своего главного козыря.
На мой взгляд достойная, а главное, совершенно стандартная замена это - More Good'r RMB Context Marking Menus. Спасибо yursiv. По сути это тоже самое интерактивное меню с возможность перенастройки (хоть и слегка муторной). Те клавиши которые в xumi не являются интерактивными тоже можно легко заменить с помощью Маркинг меню.

По поводу главного плюса xumi – картиночек. Мне кажется это важно только для начинающего. Потому что когда работаешь некоторое время, то четко представляешь где что находится и в этот момент совершенно все равно картинки там или надписи. Нажимаешь сочетание клавиш и дергаешь мышку в нужную сторону, даже не дожидаясь появления меню.

2)Скрипт Isolate Selected на 3-й странице (сообщение 48).
Готов поклясться, что когда я его поставил он работал иначе, не так как сейчас.
Раньше, при выделении допустим трех объектов и запуска скрипта, они изолировались. Если из этих трех выделить еще хотя бы один, остальные два исчезали. И только когда сбрасывал выделение со всего, скрипт возвращал объекты и писал в комманд лайн warning Nothing to isolate!
Теперь, работает как стандартный Isolate. Первый клик изолирует выделенные объекты, второй (в независимости от выделения) возвращает все объекты (полигоны) назад.

3) По поводу скрипта natHUD на 8-странице (сообщение 153).
Ни как не получается запустить скрипт со старта Майи. Пробовал в userSetup.mel вписывать
source "natHUD.mel";
natHUDenableAll;
evalDeferred "natHUDenableAll"
и их сочетания, ничего не получалось. В итоге со старта так и не получилось, но решение нашлось. В userSetup.mel вписываю natHUD;, и в Майе сажу на два хоткея natHUDenableAll()и natHUDenableAll().

Продолжение будет завтра.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
1. про ксуми.
В Xumi 2010-х64 скаченном с сайта Дмитрия, та же проблема.
архивы для разных версий майи отличаются только файлом wheelboxcontext.mll. Все скрипты - одинаковые. Я там же вроде кидал пофикшенный файл скрипта. Если нет - писал, какой файл правил. Можешь откопать, кину его (самому перерывать 18 страниц - лень).

все это Xumi держится на нескольких энтузиастах
Как я понял, даже не на нескольких, а на одном - на топик-стартере. :)

следствие из предыдущего. Ведущий девелопер сидит на предыдущих версиях майи - плагина для новых версий нет.

тискал я этот скрипт, не впечатлило. Но, видимо, нужно поразбираться по 2-му разу. спасибо за повторную наводку.

По поводу главного плюса xumi – картиночек.
Как по мне, главный плюс - это вовсе не картиночки, а пресеты. Плюс у меня почему-то глючит драг-н-дроп в стандартном маркинг-меню эдиторе, если пытаться перемещать пункты, которые идут внизу списком. Причём далеко не на первой машине уже глючит. Доходило до того, что приходилось текстовым редактором изменять файлы менюшек, чтоб поменять порядок пунктов. В ксуми хотя бы этого нет.

По поводу скрипта natHUD на 8-странице
Код:
source "natHUD.mel";
evalDeferred "natHUDenableAll";
и всё.

Про ксуми в общем... меня в ней жутко бесят несколько откровенных багов, о которых писал ранее. Дмитрий отписывался, что часть из них "заложены в архитектуре плагина" (или как-то так), часть возможно будут исправлены в будущем, про некоторые он благоразумно промолчал. Вот у меня всё же теплится надежда на исправление в будущем. Но периодически эти косяки вконец достают - сношу ксуми и пробую работать без неё. Не получается, каждый раз потом скрипя зубами ставлю обратно. Потому что несмотря на недостатки с ней всё же удобнее, чем без неё. Но возможно терпение-таки у меня однажды окончательно лопнет, и я присоединюсь к лагерю сторонников дефолтных маркинг-менюшек. :)
А сам Дмитрий не раз писал, что ксуми - на любителя. Кому-то понравится, кому-то - нет.
 
Рейтинг
47
Drl, по моему все таки Xumi дирижирует не один Дмитрий. Где то на форуме попадалось на глаза сообщение, в котором сам Дмитрий кому то отвечал, что не может адоптировать хumi до 2011 и выше, пока кто-то не доделает кокую та часть плагина. Ну, это уже такое…
----------------------------
По поводу скрипта natHUD на 8-странице
Заработало, большое спасибо.
-----------------------------------------------------
Пример с включение\выключением Title Bar. Страница 3 (сообщение 48)
Все три варианта при запуске в Скрипт эдиторе и Шелфе работают нормально, но когда это оформляешь как скрипт и запускаешь с хоткея, выдает ошибку
// Error: "$gMainWindow" is an undeclared variable. //
-----------------------------------
И еще одно.
Посмотрел мастер класс Дмитрия (ускоряя Майю). Он там в разговоре о тройном переключателе обмолвился, что в этом коде можно использовать функцию двойного клика.

И вот вопрос.
Можно ли с помощью этой команды настроить так, что бы допустим при нажатии на Q включался СелектТоол, а при двойном клике на Q активировалось к примеру лассо. В общем, что бы клавиша срабатывала как кнопка на панели Шелф.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Drl, по моему все таки Xumi дирижирует не один Дмитрий.
Изначально (давным-давно) плагин был написан вообще другими людьми. Успешно выложен на (тогда ещё) ХайЭнд и настолько же успешно проигнорирован сообществом, в результате чего заглох. Позже Дмитрий связался с разрабами с предложением воскресить проект, и они предоставили ему исходники, сильно удивившись, что xumi кому-то нужен. Это как я понял.
Соответственно, никого он не ждёт, а тащит проект в одиночку. И пока что у него просто руки не доходят лезть в дебри собственно плагина - лишь изредка правит скрипты.
damat, я ничего не перепутал?

Можно ли с помощью этой команды настроить так, что бы допустим при нажатии на Q включался СелектТоол,
Можно. Для этого достаточно завести свою глобальную переменную и воспользоваться командой timerX. Что-то типа такого:
Код:
global float $gDRL_timer;
float $current, $delta;

$current = `timerX`;
$delta = $current - $gDRL_timer;
$gDRL_timer = $current;

if ($delta <= 0.1) { // Вместо 0.1 - промежуток времени (в секундах), меньше которого повторное нажатие считается двойным
	// тут код, который выполняется при двойном щелчке
} else {
	// тут код, который - при одиночном
}
Вместо float можно попробовать double, но я не проверял, и сейчас Майку запускать лень. Это выдернуто из моего скрипта.
Подсмотрено в книжке "F1" нашего, российского издательства.

Offtop: я пишусь со всеми тремя буквами заглавными. Ну или на худой конец со всеми строчными ;)
 
Прошу прощение за затянувшееся молчание: сильно занят по работе.

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

Во-вторых, спасибо DRL, который дает ответы в таком же позитивном ключе и считает необходимым поднимать эту тему. Я был очень приятно удивлен, когда ты все очень четко изложил про историю Xumi и очень верно подметил про баги и «на любителя». Все на самом деле именно так, за вот каким исключением: проекту в свое время помогли Don Jao и Максим Благай с этого форума – они сделали версии плагина для Maya 2009/10 обоих битностей. Так же мы с Максом хотели полностью переделать Xumi, но об этом позже.

Про скрипты:
- Isolate Selected: я не понял описание кейса про «раньше»: как можно сначала выделить 3 объекта, а потом выделить еще один из них? В целом код должен работать так, как написано в кейсе «теперь». Единственное, что могу предположить по поводу разницы, так это влияние галки, которая автоматически добавляет новые объекты в изолированные. Пишу из дома, не могу с ходу вспомнить ее название, но она точно живет в одном из меню viewport. Сам код тоглера не менялся с Майя 2008, если не 8.0

- Тогглер titlebar: не очень понял сентенцию про “оформляешь как скрипт и запускаешь с хоткея”. Если имеется в виду оформление в виде процедуры, тогда надо в явном виде указать внутри процедуры $gMainWindow как глобальную переменную:
Код:
global string $gMainWindow;
Но могу сказать, что для хоткея этого делать не требуется - код будет исполняться и без вложения в процедуру.

- Тройной тогглер: в мастерклассе я имел в виду не двойной клик, а тогглер на три состояния. Т.е. обычно мы тогглим два состояния: “вкл./выкл.”, а можно сделать три состояния “вкл1/вкл2/вкл3”, которые будут переходить одно в другое. В мастерклассе я приводил этот пример для переключения “Attribute Editor/Channel Editor/ Пусто” по комбинации кнопок ctrl+a. Двойным нажатием этой комбинации при открытом Channel Editor можно перейти в Attribute Editor. Аналогично можно расширить набор состояний до 4, 5 и т.д., но это не представляется удобным

Про Xumi будет отдельный длинный пост, скорее всего на этих выходных. Радовать не стану - пока руки до него не доходят, в посте постараюсь пояснить почему и чего можно будет ждать в будущем.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Про Xumi будет отдельный длинный пост, скорее всего на этих выходных. Радовать не стану - пока руки до него не доходят, в посте постараюсь пояснить почему и чего можно будет ждать в будущем.
Вот это было бы очень кстати. :)
 
Рейтинг
47
Добрый день.

Тогглер titlebar – заработало.
Под словами “оформляешь как скрипт и запускаешь с хоткея”, я имел в веду создание файла назв.mel и помещение его в папку скриптс. После чего в Хоткей Эдиторе в поле Комманд, втавлять не код, а название вписанное после global proc. Значит это и называется «оформить в виде процедуры». В общем, добавил строчку с объявлением глобальной переменной и все заработало.

Isolate Selected
Похоже это был какой-то глюк. На тот момент у меня стояла непонятная сборка виндовса + была изрядно засорена.

Но все же скрипт срабатывал достаточно интересно и главное удобно. Он не просто изолировал (объекты или подобъекты), а потом возвращал назад. Он как бы при каждом выделении и запуске скрипта уходил на уровень в глубь, а при сбрасывании выделения (со всего) и запуске скрипта, возвращал все назад. По большому счету, скрипт представлял из себя команды Hide_Unselected + Unhide_All соединенные вместе (+ действовало с подобъектами). Срабатывание команд зависело от наличия или отсутствия выделения.

При использовании стандартной майевксой кнопки, Скрипт Эдитор возвращает несколько строк. Две из которых, интересные:
modelPanelBarIsolateSelectCallback("IsolateSelectedBtn", "modelPanel4", "MayaWindow|formLayout1|viewPanes|modelPanel4|modelPanel4|modelEditorIconBar"); restoreLastPanelWithFocus();
isolateSelect -state 0 modelPanel4;

Если сперва для группы выделенных объектов (или подобъектов), использовать скрипт или кнопку Isolate, а потом запускать строчку SelectCallback, изолирование будет происходить, как бы в глубь. А при использовании второй строчки, все что было изолированно на несколько раз, вернется назад.

Я попытался по впихивать эти строчки в в скрипт Isolate Selected, но у меня ничего не вышло.
(пока писал этот текст и экспериментировал с кодом, начал сомневаться, нужно ли вообще такой в Майе :)

--------------------
DRL, большущие спасибо за код. Жирнейший скрипт!
Я специально взял паузу, что бы посмотреть как его можно использовать в рабочих условиях.

Удивлен, почему о таком функционале не упоминалось в самом начале темы. Конечно это не везде можно использвать, но как уже писалось, удобных клавишь мало, так что их разумно экономить.

К примеру:
Rotate Tool, на двойное нажатие подсадил скрипт Deniseich 0-1
rotateAlign 90, доворачивающим объект до ближайшей отметки кратно 90 градусам

Move Tool
Paint Selection

Select Tool
Lasso

fitPanel -selected; (стандартное f)
fitPanel -all; (стандартное а)

так же можно объединить в одну:
SelectVertexMask (стандартное F9)
ConvertSelectionToVertices. (стандартное Ctrl+F9)
(правда придется немного по химичить, что бы при двойном клике включался предыдущий подобъект (эджи, фэйсы) и после этого выделение конвертировалось в Вертексы )
и т.д.

К сожалению использование этого кода ограничено из-за того что даже при двойном клике, обязательно выполняется действие одинарного. Так что нельзя сделать к примеру:
Wireframe;
Wireframe On Shaded;

Конечно можно сделать так:
Wireframe;
Wireframe; Wireframe On Shaded;

И получиться, что при разовом нажатии произойдет переключение с Wireframe на Shaded. А при двойном клике, включится Wireframe On Shaded. Но при этом жутко надоест мерцание вьюпорта, так как он будет постоянно переключться между режимами Wireframe и Shaded.

Так же нельзя использовать переменные:
Один клик - string $Selected[] = `ls -sl`;
Двойной клик - select $Selected;

Вот если бы определялось, сколько раз была нажата клавиши в определенный промежуток времени (к примеру 0,5 сек) и от этого срабатывали разные коды. Хотя все равно приходилось бы комбинировать, так как далеко не всегда удобно ждать пол секунды до действия либо включения инструмента.

------------------------------------------------------
И на последок, вопрос:
Можно ли к Wireframe On Shaded добавить ОТК,/ВКЛ подсвечивания каркаса выделенных объектов?

Я пришел с Макса, а там, аналог Wireframe On Shaded действует на все объекты находящиеся в сцене.

PS: кнопка Спасибо не срабатывает, видимо введен какой то лимит.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
К сожалению использование этого кода ограничено из-за того что даже при двойном клике, обязательно выполняется действие одинарного.
Можно попробовать через Undo. Т.е.:
ЕСЛИ (предыдущее нажатие было меньше заданного промежутка времени назад) {
отмена;
собственно действие двойного нажатия;
} ИНАЧЕ {
одиночное действие;
}

Не сказал бы, что это прямое решение, и для всего тоже не подойдёт, но где-то может сработать. Там, где не сработает - можно вместо отмены выполнять противоположную команду. Напр., с примером wireframe on shaded - вручную обратно выключать сетку.
 
Это большой пост, в нем очень много букв и вообще нет картинок или видео. Возможно, именно поэтому его не будут читать, но все уже написано, и отступать некуда. Эот

В свое время, года три назад, я был просто шокирован тем, что xumi вообще возможно придумать, реализовать, наполнить контентом и выложить за просто так в сеть. Скорее всего, именно то, что это все можно было разобрать, покрутить и дополнить своими инструментами, и стало для меня решающим фактором: я реально хотел докопаться до сути этих 15 000+ строчек кода. Месяц ночей с Xumi помог мне очень четко понять, как это все работает, и в целом очень сильно продвинул вперед мои знания и навыки скриптования. Могу только пожелать всем, кто решил стать техническим художником, найти для себя в начале профессионального пути подобную прикладную задачу.

По прошествии определенного количества времени (уже после того, как были написаны мои основные внешние скрипты и после того, как я перешел в Нивал) я переключился на доработку нивальского пайплайна. Дело в том, что по разным причинам Prime World пришлось начинать почти с нуля с точки зрения как движка, так и команды, поэтому было совсем не до шлифовки своих скриптов. Сначала были улучшены уже существовавшие до меня скрипты для экспорта ассетов, потом был начат проект под Майя с названием NAT (Nival Artist Tools, о котором писал в самом начале топика), а так же несколько других минипроектов в рамках Prime World, которые далеко не всегда были связаны с Майя. Параллельно с этим надо было искать аутсорсеров, налаживать производство и наращивать команду. По мере появления в нашей команде технических художников я передавал им свои знания и уже почти ничего сам не скриптовал: достаточно было ставить задачи и проверять их исполнение, иногда помогая с конкретными проблемами. В итоге удалось вырастить большую и очень классную команду художников, однако самой Майя удавалось заниматься все реже: я постепенно становился скорее менеджером, чем исполнителем. Но нет худа без добра: по мере того, как формировалась команда, как появлялись новые ассеты на новой технологии, в голове началось формирование идей про большой мастеркласс, который позволил бы обобщить набранный опыт по скриптам и выкинуть его уже из своей головы, которая и так была занята под завязку. Так в 2009 году появился мастеркласс про “Ускорение Майя” =)

После того летнего эвента появилась эта тема, в которой я хотел дорассказать все, что не вошло в мастеркласс. Надеюсь, у меня это получилось. По крайней мере, иногда я перечитываю первые посты, и мне почти не хочется что-либо в них исправлять. В то время у меня еще было время заниматься Xumi: появление этой темы помогло найти don Jao и Макса, которые сильно помогли по программерской части. Более того, Макс начал писать новую версию Xumi, которая могла бы работать везде, а так же имела бы дополнительные фичи. С первого захода у него не вышло довести все до конца, а я все дальше уходил от Майя в сторону планирования, прототипирования, контроля и налаживания процессов в нивальской артовой разработке.

Однако по некоторому стечению обстоятельств в начале 2011 года у меня появилось время: сформированный отдел художников была поделен на 2 части, которые отправились в самостоятельное плавание как 2 отдельные команды для разных частей проекта. У меня снова появилось время! Поковырявшись в 2011 Майя в процессе написания пайплайна для Unity, я сильно заскучал по Xumi и начал доставать Макса с идеями по доработкам. Наших совместных сил хватило на еще одну итерацию, которая в целом была уже довольно недалеко от чего-то вполне работающего. Она заинтересовала парней из Автодеск на GDC, хотя пока ничего конкретного мне не ответили. После этого сначала у Макса, а потом у меня окончательно кончилось время. Не знаю, что приключилось у него, а я начал руководить отдельным социальным направлением Prime World под рабочим названием «Замок» (вы могли его видеть в роликах с КРИ и Е3). Постепенно пришло лето, с ним приблизился и официальный релиз проекта, а вместе с этим количество моих подчинненных дошло до 20-ти человек (2d/3d художники, дизайнеры, программисты). Как правильно заметил Александр Чернега «в жизни бывает разное»: на Тибет я не уехал, но фокус своей деятельности сильно изменил.

Сейчас мне более-менее хватает времени по выходным, чтобы подготовится к 2-м докладам в недалеком будущем: на форуме Автодеск и на конференции Unite (постараюсь выложить их оба сюда). Хватает во многом потому, что я четко понимаю, что я хочу рассказать. Сил для разработки и доведения чего-то нового с нуля уже нет. Поэтому пока Xumi пылиться на харде и ждет своего часа: либо у меня снова появится время, или появится новый mel-сумашедший, который готов потащить проект вперед.

И тут случилось небольшое чудо. Этот пост я написал во вторник поздно вечером. Посмотрев на законченный текст, я понял, что получилось многовато для просто ответа, и решил взять паузу до выходных, чтобы дошлифовать все и спокойно подвести итог. Разбил пост на две части, одну опубликовал на форуме, другую сохранил и отправился спать. А утром в ящике было письмо от Автодеска … про xumi … =) Не могу говорить о деталях, но если в целом, то у них есть одна партнерская компания в Канаде, которая занимается альтернативными вариантами управления: меню, камеры, планшетные устройства и т.д. Их отправили ко мне на предмет посмотреть на xumi, и, возможно, когда-то реализовать это в виде нового решения меню для майя. Пока мы только начали общение, надеюсь, что у нас что-нибудь получится.
 

Dark™

Модератор форума
Команда форума
Рейтинг
431
у них есть одна партнерская компания в Канаде, которая занимается альтернативными вариантами управления: меню, камеры, планшетные устройства и т.д. Их отправили ко мне на предмет посмотреть на xumi, и, возможно, когда-то реализовать это в виде нового решения меню для майя. Пока мы только начали общение, надеюсь, что у нас что-нибудь получится.
А вот это уже интересно, но боюсь, что за рамки бонусного пака это не выйдет. Но уделенное внимание уже радует. Видимо, для этого надо как минимум на GDC отправляться.
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Вновь про views...
Сегодня поковырялся - и таки выловил тот баг:

  1. Если на кастомной камере
  2. управлять хотя бы одним атрибутом Transform/rotate через экспрешн или констрейнт
  3. и через views переключиться на эту камеру (нажатие тильды - выбор в попап-менюшке), то
  4. при нажатии на тильду (чтоб переключиться обратно на persp или выбрать другую камеру) вылазит ошибка:
Код:
// Error: No object matches name: CustomCamShape.t //
Скрипт всё равно работает: в зависимости от того, что сделал переключает на persp (если просто отпустил клавишу) или на другую камеру (если выбрал мышью). Но этот эррор жутко бесит.

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

Вот файл сценки, демонстрирующий баг:
http://dl.dropbox.com/u/22103610/ViewsBug.ma
 
Добрый день.

Wireframe On Shaded +ОТК/ВКЛ подсвечивания каркаса выделенных объектов
Да Дмитрий оно, спасибо. Теперь как в Максе

DRL (сообщение 352)
Про вклинивания в код противоположной команды я допетрил, а про Undo как то не подумал.

По поводу несколько уровневого изолирования которое я так рьяно описывал.
Где то слышал от Дмитрия что парой скрипты устаревают, и в новой версии программы разные действия реализуются еще лучше. Так вот это стандартный isolete (по крайне мере в 2012)

Открыл для себя dRaster NEX 1.5
В контексте темы "Ускоряя Maya", я считаю что это самое оно. Добавлены вроде как мелкие, но на самом деле чертовски полезные инструменты и свойства. В основном все те, недостаток которых ощущается после перехода с Макса (+ в 2012 улучшен инструмент экстуд, вернее работа его параметра offset. Получается полнейший аналог максовского inset (я так понимаю это самое первое на что жалуются бывшие максовики) ).
Вопрос по поводу NEX уже поднимался в этой теме. Сошлись на том, что очень здорово, но неоправданно дорого и следовательно не сильно нужно. Я с этим не согласен. Во первых, можно не для коммерческого использования скачать вместе с ключом. Если же с помощью этого зарабатывать деньги и работать так сказать в чистую: быть зарегистрированным, платить налоги, иметь лицензионную виндовс, ворд, фотошоп, отдать много тысяч за Майю, то покупка плагина который значительно расширяет возможности полигонального моделирования за 170 единиц, не такая уж большая трата.
 
Рейтинг
137
Люди, почему у меня ни с того, ни с сего майя начала писать вот такое при активизации любого скрипта (будь то views, deselect или isolate selection): // Error: Cannot find procedure "viewsOFF"? (Имя процедуры меняется с использованием разных скриптов соответственно).
 

Лекс Дарлог (DRL)

Активный участник
Рейтинг
14
Перемещал папку со скриптами? Переустановил ось, забыл скопировать префы? Потерял/повредил файл userSetup.mel?
Вообще, префы надо бэкапить. Я взял это за привычку: минимум раз в неделю загоняю всю папку майских префом в архив. Если что-то слетает - текстовым сравнением в Тотале можно вычислить, что слетело и где именно.
 
Рейтинг
137
Ничего такого не делал, в том-то и дело. В субботу ушел - выключил комп. Сегодня пришел, не работает. Ну ладно, дома префы остались старенькие. Может поможет. Спасибо.
 
Сверху