То есть вместо setAttr(“pCube1 .tx”, 10); можно написать setAttr pCubel.tx 10; При этом, если нужно «поймать» возвращаемое функцией значение, необходимо использовать спецкавычки.

Например, вместо int $х = size(Sarray); можно написать int $х = 'size $аггау'; Обилие встроенных команд-функций, с огромным количеством аргументов-флагов, делает такую «строковую^ запись удобнее.

Вместо string Scontrot =

attrFieldSliderGrpr-LV’magV-min”, 0,"-max”, 1,”-w”,400); удобнее написать:

string $control =

'attrFieldSliderGrp -t “magnitude” -min 0 -max 1 -w40Q'; Такой стиль вызова команд иногда называется императивным - в противовес традиционному функциональному.

Не для программистов. Как примерно все происходит.

Откройте Script Editor. Создайте сплайновую сферу.

Убедитесь в том, что MAYA напечатала в верхней части Script Editor команду:

sphere -р 0 0 0 -ах 0 1 0 -ssw 0 -esw 360 -г 1 -d 3 -ut 0 -tol 0.01 -s 8 -nsp 4 -ch 1; Теперь представьте себе, что MAYA состоит из двух частей. Первая часть - это интерфейс, то есть окно MAYA, которое вы наблюдаете каждый день, со всеми его менюшками, окошками и кнопками.

Вторая часть, ядро MAYA, скрывается позади интерфейса, и если вам еще не исполнилось семи лет, представьте себе, что оно (ядро) сидит в системном блоке, а интерфейс - в мониторе компьютера.

Когда пользователь своими непрямыми руками что-то делает через интерфейс (например, двигает сферу за манипулятор Move Tool) происходит примерно такая цепочка действий: Интерфейс MAYA преобразует судорожные движения рук пользователя в команду move с нужными параметрами и передает эту MEL-команду ядру MAYA. Ядро MAYA «ловит» эту команду, пересчитывает матрицы трансформаций, запоминает новое положение сферы и «кричит» интерфейсу MAYA: «Готово! Перерисуй экран!-. Интерфейс просто обновляет экран в соответствии с новым положением сферы, а пользователь гордится своим гениальными перемещением объекта.

Если не верите, передвиньте сферу по вертикали - и вы тут же убедитесь, что в Script Editor появилась команда типа

move -г 0 4.539716 0 ; Интерфейс ее и отсылает ядру, чтобы оно реально передвинуло сферу в новое положение, посчитало все, что нужно, и сообщило, где теперь сфера находится - чтобы именно там интерфейс ее и нарисовал.

Отсюда следует два вывода.

Вывод первый. Все, что делается через интерфейс MAYA, можно повторить с помощью MELкоманд.

Вывод второй. В помощью MEL-команд можно сделать гораздо больше, чем через интерфейс MAYA. Надо только их знать.

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

Немного MEL-команд. Работа с документацией На сегодняшний день число MEL-команд перевалило за тысячу сто, поэтому попытка запомнить их все приводит, как правило, к переполнению памяти у пользователя и потере им данных, так что гораздо проще воспользоваться документацией, где эти команды аккуратно разложены и в алфавитном порядке и по категориям, В главном меню Help есть отдельный пункт MEL Command Reference. Такой же пункт есть в меню Help в Script Editor.


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