Иллюстрированный самоучитель по Maya 6

Структура объектов в Maya. Узловая структура.

Видимой частью приложения Maya является интерфейс, но существует еще и скрытая часть – лежащий в его основе код.

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

Поэтому чтобы работать эффективно, крайне важно понимать, как же в Maya определяются объекты и как они взаимодействуют. Вы должны знать и то, как узлы взаимодействуют друг с другом. Это касается как простой иерархической цепочки, в которой один объект непосредственно влияет на другой, так и сложного, заданного сценарием выражения, соединяющего друг с другом 15 принадлежащих нескольким объектам атрибутов.

Хотя интерфейс Maya по большей части автоматизирует процесс создания узлов и формирования связей между ними, чем быстрее вы осознаете узловую структуру объектов, тем проще будет процесс освоения Maya. Даже если вы непосредственно не видите процесса создания связей между узлами и атрибутами, он тем не менее осуществляется при каждой выполненной команде.

Узловая структура

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

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

Узлы, определяющие форму поверхности или объекта-примитива, называются узлами формы (shape nodes). Они несут информацию, определяющую способ создания объекта. Например, узел формы сферы имеет такой атрибут, как ее радиус. Изменение этого атрибута на базовом уровне меняет размер сферы. Узлы формы находятся в самом низу иерархической цепочки и всегда являются дочерними по отношению к узлам преобразования (transform nodes). Сначала рассматриваются узлы формы сферы, затем происходит переход к другим узлам, например положения, ориентации и масштаба.

Примечание
Не все примитивы и объекты создаются с узлами формы, поэтому в некоторых случаях отсутствует возможность менять параметры объекта на этом уровне. Чтобы гарантировать наличие узла формы, необходимо включить фиксацию истории конструирования объектов, нажав на кнопку Construction History (История конструирования) в строке состояния
.

Наиболее заметными и используемыми являются узлы преобразования, также известные как DAG-узлы (directed acyclic graph – направленный ациклический граф). Они содержат все атрибуты преобразования объекта или группы объектов. К преобразованиям в данном случае относятся положение объекта, а также его ориентация и масштаб. Также эти узлы хранят информацию о присоединенных к ним дочерних или родительских узлах. В процессе перемещения или масштабирования объекта вы меняете атрибуты его узла преобразования.

Рассмотрим пример работы с узлом преобразования:

  1. Создайте сферу и нажмите комбинацию клавиш CTRL + A, чтобы открыть для нее окно диалога Attribute Editor (Редактор атрибутов).
    Вкладки в верхней части этого окна позволяют переходить от одного узла сферы к другому. В данный момент должна быть открыта вкладка, соответствующая узлу формы сферы. Она называется nurbsSphereShapel. Этот узел содержит определенную информацию об объекте, но обычно последняя не подвергается редактированию.
  2. Нажмите клавишу W, чтобы активизировать инструмент Move (Переместить). Перейдите на вкладку nurbsSpherel, чтобы получить доступ к узлу преобразования сферы. Слегка переместите сферу вдоль оси X. Обратите внимание на то, как изменится значение Х-координаты атрибута Translate (Перемещение). Аналогичное изменение должно произойти и в окне диалога Channel Box (Окно каналов).
  3. Нажмите клавишу R, чтобы активизировать инструмент Scale (Масштабировать). Равномерно масштабируйте сферу, воспользовавшись центральным манипулятором голубого цвета. Обратите внимание на то, как изменятся значения атрибутов Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) в окне диалога Attribute Editor (Редактор атрибутов). Введите в эти поля значение 1, чтобы вернуть сферу в исходное состояние.
  4. Перейдите на вкладку makenurbsSpherel и введите в поле Radius (Радиус) значение 2. Размер сферы увеличится в два раза. Вернитесь на вкладку nurbsSpherel и обратите внимание на то, что значения атрибутов Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) при этом не изменились. Дело в том, что в данном случае размер был изменен на уровне узла формы, а не на более высоком уровне узла преобразования. Любые изменения атрибутов Scale (Масштабировать) вступают в силу после изменений в узлах более низкого уровня.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.