Если в файле superscript.mel отсутствует описание процедуры superscript, совпадающей по имени с названием файла, значит вы скачали не тот файл. Удалите его и не мучайтесь.

Примечание. Здесь и далее я буду ссылаться на вашу (или пользовательскую) папку scripts, имея в виду ту самую папку, которая лежит в директории тауа, содержащей в себе все настройки и установки MAYA. Как правило, эта директория располагается в каталоге My Documents, если вы работаете под Windows, или, в ином случае, в вашей домашней (home) директории.

Что такое Source Script

Если вы сохранили свои (или чужие) процедуры в каком нибудь-файле, то запускаете скрипт, выполняя команду, совпадающую по имени с названием файла, и все прекрасно работает. До тех пор, пока вы не откроете файл и не внесете туда гениальные изменения радикально улучшающие работу скрипта. Сохранив файл, вы обнаружите, что MAYA выполняет прежнюю версию скрипта, так как она была загружена в память с диска при первом вызове скрипта и благополучно там находится.

Чтобы загрузить изменения, только что сделанные в файле, не перезапуская MAYA, надо принудительно выполнить скрипт из файла. Эта операция называется Source Script и находится в меню File окна Script Editor. Все команды из указанного фала просто выполняются, поэтому если в файле находятся только объявления процедур, они обновляются в памяти, а если набор команд, то эти команды выполняются.

Можно представить, на пальцах, действие операции Source Script как мгновенное открытие текста скрипта в нижней части Script Editor, выполнение его и удаление текста.

Совет. Если вы пишете скрипты с помощью какого-нибудь текстового редактора, то для операции Source Script имеет смысл сделать кнопку на полке или горячую клавишу, обновляющую или выполняющую ваш скрипт из файла. Соответствующая команда может выглядеть примерно так. source “C:/Work/scripts/myScript.mel”;

Script Node, или expression по вызову

Иногда возникает задача сохранения набора команд, то есть скрипта, вместе со сценой, а не в виде отдельного независимого файла. Скрипт, над которым мы только что трудились, создающий окно с атрибутами для конкретных объектов из конкретной сцены, являет собой пример такого набора команд, который хочется хранить в сцене, а не таскать за собой с машины на машину.

Более того, хочется, чтобы такой скрипт выполнялся каждый раз при открытии сцены и мы имели бы, например, интерфейс для работы с атрибутами объектов.

Чтобы сохранить набор команд вместе со сценой, надо создать объект типа Script Node. Это делается при помощи Expression Editor.

Загрузите сцену с частицами (dropPreset.ma).

Откройте Expression Editor и в меню Select Filter выберите By Script Node Name.

В окне появится интерфейс, очень напоминающий создание expression, однако слово script напоминает о том, что мы на грани создания объекта Script Node.

В текстовое поле следует просто вписать набор команд и нажать кнопку Create.

При этом писать следует именно скрипт, а не expression. То есть фамильярности типа Sx=pCube1.tx недопустимы.

В нашем примере, в принципе, достаточно вписать сюда одну команду:


⇐ вернуться назад | | далее ⇒