В принципе, можно обходиться без знания и использования MEL в своей работе, особенно если ваши служебные или домашние обязанности сводятся к выдаче двух минут анимации в день или моделированию заданного количества элементов интерьера. Но подумайте о том, что рано или поздно вам это сильно надоест, и в этот момент знание MEL может вам сильно пригодиться в поиске новой работы или смене характера ЗР-деятельности.
Про что эта глава Кроме того, не спешите пугаться и разбегаться, кто куда. Я и не собираюсь в одной главе давать полное описание языка программирования с полным разбором синтаксиса и типов данных.
Во-первых, для этого есть специальные, неплохие книжки (например, «MAYA: полное руководство по программированию» Дэвида Гоулда; текст там дельный, перевод - на совести издательства).
Во-вторых, в одной главе это невозможно сделать.
В-третьих, я просто собираюсь порассуждать здесь на тему о том, как бы я (или кто-то другой, более скромный) осваивал язык MEL, только-только познакомившись с MAYA. На примере таких рассуждений я намереваюсь описать логику использования и основные правила работы с MEL, но уж никак не полный синтаксис этого языка и все существующие в нем функции.
Как и в предыдущих главах, освоив логику использования, вы легко расширите собственную сферу применения MEL, просто читая описание новых функций и текст чужих скриптов.
Боюсь, правда, что вам не удастся использовать эту главу как справочное пособие по MEL. Ее можно лишь прочитать с начала до конца (опуская наиболее жуткие, не лезущие в голову вещи) и попытаться вникнуть в суть использования MEL. Ведь, как вы сами знаете, наилучшее справочное пособие - в документации.
Что такое MEL?
Так что же это за зверь, про которого все так много говорят? Как следует из дословного перевода этой аббревиатуры, это встроенный (embedded) в MAYA язык программирования для выполнения различных спецзаданий.
Какого рода спецзадания выполняются с помощью MEL? В рекламно-популярной литературе обычно пишут: «позволяет расширить функциональность MAYA за счет добавления новых функций». Но это - лишь часть работы, выполняемой MEL.
Во-первых, вся интерфейсная часть MAYA - ее, так сказать, витрина - написана на MEL и поэтому может быть дополнена новыми меню, окнами, кнопками. Соответственно, интерфейс MAYA может быть улучшен, изменен или обезображен до неузнаваемости. Вы можете писать свои окошки для выполнения вами же запрограммированных действий или встраиваться в стандартные меню MAYA, чувствуя себя агрессивным хакером. MEL позволяет делать и то и другое.
Пример из прошлого. В первой версии MAYA не было никаких операций, связанных с выравниванием и привязкой объектов друг к другу (snap & align). Мои друзья, только что перешедшие с другого пакета на MAYA, были в шоке от такой аскетичности и горестно молили о помощи. Запрограммировать выравнивание объектов было делом нехитрым, а вот в качестве интерфейса для написанного скрипта я сделал копию окошка из другого пакета, повторяющую все кнопочки и педальки соответствующего инструмента.