Там он наблюдает, какие команды MAYA выполняет в ответ на его неуклюжие действия. Потом, набравшись наглости, пользователь пытается скопировать эти команды из верхней части окна Script Editor в нижнюю и даже выполнять их. Продравшись сквозь вереницу сообщений об ошибке, пользователь затем пытается изменять скопированные команды и даже выполнять их целыми пачками. С этого момента его можно причислять к числу скриптописателей, ибо дальнейшее его совершенствование как супер-программиста сводится к чтению документации по командам и текста чужих скриптов.
Это, кстати, наиболее правильный, наглядный и адекватный способ овладения MEL. Преимущество такого подхода в мгновенной интерактивности и абсолютной наглядности. Если пользователь выполнил команду sphere, он получит сферу на экране, а если выполнил move 0 5 0, выделенный объект тут же скакнет в точку 0 5 0.
При чтении лекций и даже при письменном изложении материала я всегда стараюсь придерживаться этакого «любопытствующего» подхода, чтобы MEL не показался начинающим «майщикам» чем-то абстрактным, оторванным от жизни.
Лирическое отступление. MEL - полноценный язык программирования. При этом он -стопроцентно процедурный язык. С тех пор, как в мир ворвался язык C++, законодателем мод стал не процедурный, а объектно-ориентированный подход. С точки зрения оптимизации производства программных продуктов и разработки больших систем это, несомненно, оптимальный подход. Но человек с нормальной психикой ориентирован на «процедурный” образ жизни и мысли, то есть на совершение некоторых последовательностей действий и на созерцание результата этих действий, и потому для него объектно-ориентированный подход кажется не сильно естественным и даже довольно затруднительным для освоения. Трудно представлять свои действия как манипуляции с некоторыми данными, которые вызывают изменения в окружающей среде. Это уже смахивает на эзотерику. Я, как математик по образованию, всегда был нацелен на алгоритм, то есть на последовательность действий, решающих задачу, или иначе говоря на процедуру решения проблемы. Изготовление компьютерной графики тоже являет собой образец чисто процедурных действий, типа: моделируем, деформируем, ставим ключи, назначаем материал и т.д. Поэтому, на мой взгляд, абсолютно процедурный MEL на самом деле довольно прост в освоении. Кроме того, чтение чужих скриптов как последовательности инструкций выполняемых в MAYA, также облегчает изучение и применение MELa нормальными людьми, а не одними оголтелыми программистами. (Я, кстати, в прошлой жизни тоже был одним из них.) Я также думаю, что в силу процедурности мышления нормальных людей основной постулат MAYA о том, что любой объект
- это набор атрибутов, определяющих его свойства, со скрипом воспринимается начинающими пользователями, поскольку этот постулат как раз отличается явной объектно-ориентированной направленностью.
Суть этой моей сентенции такова: MEL - вполне «человеческий» язык программирования. Даешь старый добрый процедурный подход!
Примечание. Технический критик, в лице Алексея, был просто взбешен и ошарашен этими моими радикальными, пусть и лирическими заявлениями. Мне с трудом удалось его успокоить. Однако я почел за лучшее асе же еь/черкнуть свои нападки на Visual Basic…