Электронная библиотека » Владимир Верстак » » онлайн чтение - страница 25


  • Текст добавлен: 16 апреля 2014, 14:39


Автор книги: Владимир Верстак


Жанр: Программы, Компьютеры


Возрастные ограничения: +12

сообщить о неприемлемом содержимом

Текущая страница: 25 (всего у книги 46 страниц)

Шрифт:
- 100% +

setBeforeORT $.pos.controller.percent.controller #cycle

setAfterORT $.pos.controller.percent.controller #cycle

5. Завершает код закрывающая круглая скобка (рис. 8.78).

ПРИМЕЧАНИЕ

На DVD в папке ExamplesГлава 08Track находится файл trackScript.ms. Это созданный нами сценарий. Его можно загрузить в окно редактора макрокоманд и выполнить.

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


Рис. 8.78. Окончательный код в окне редактора макрокоманд


ВНИМАНИЕ

Минимальное значение скорости нужно установить сразу, так как в дальнейшем скорость можно будет увеличить.

Для этого задайте общее количество кадров анимации равным не менее 400. Для этого откройте окно Time Configuration (Настройка временных интервалов) и в поле End Time (Время окончания) введите значение 400. После этого в одном из окон проекций выделите объект track и передвиньте ключевой кадр из 100, созданного по умолчанию, в 400.

СОВЕТ

Чтобы быстро изменить временной диапазон шкалы анимации, можно нажать сочетание клавиш Ctrl+Alt, щелкнуть правой кнопкой мыши на шкале анимации и перемещать указатель влево (для уменьшения количества кадров) или вправо (для увеличения). Нажатие этих же клавиш в сочетании с левой кнопкой мыши позволяет изменять начало временного диапазона, установленное по умолчанию в нулевой кадр.

Теперь необходимо установить зацикливание для анимации главного звена. Для этого выделите объект track и откройте окно редактора кривых командой Graph Editors ► Track View – Curve Editor (Графические редакторы ► Просмотр треков – редактирование кривых). В левой части появившегося окна выберите анимированный трек для выделенного объекта (рис. 8.79).


Рис. 8.79. Окно редактора кривых с выделенным треком анимации процентов контроллера Path Constraint (Ограничение по пути)


В окне редактора кривых щелкните на кнопке Parameter Curve Out-of-Range Types (Типы экстраполяции параметрических кривых)

В открывшемся окне Param Curve Out-of-Range Types (Типы экстраполяции параметрических кривых) щелкните на кнопках со стрелками под значком Cycle (Циклический) (рис. 8.80).


Рис. 8.80. Окно Param Curves Out-of-Range Types (Типы экстраполяции параметрических кривых) с установленным параметром циклического повторения анимации


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

ПРИМЕЧАНИЕ

Как вы помните, основной объект track имеет два ключа анимации, соответствующих положению 0 и 100% пройденного пути. Если изменять на временной шкале положение ключа, имеющего значение 100 %, то будет изменяться скорость движения. Например, передвинув ключ анимации с 400 на 200, вы увеличите скорость движения гусеницы в два раза.

Сейчас анимируем вращение колес, по которым движется гусеница. Очевидно, что колесо выполнит столько оборотов за один оборот гусеницы, сколько длин окружностей колеса укладывается в длине сплайна. Разберемся в этом на практике. Сначала узнаем диаметр колеса. Для этого выделите большое колесо и на вкладке Utilities (Утилиты) командной панели щелкните на кнопке Measure (Линейка). В области Dimensions (Размеры) посмотрите размер колеса по осям Y и Z. Таким образом, диаметр колеса в нашем случае – 16,693.

Как известно, длина окружности составляет π ■ D, где число π – постоянная величина, а D – диаметр колеса. Таким образом, длина окружности большого колеса равна 3,14 • 16,693 = 52,4066. Разделив длину сплайна пути trackpath на полученную величину, узнаем, сколько оборотов сделает колесо за один оборот гусеницы: 344,721 /52,4066 = 6,578. Теперь нужно привязать вращение колеса к скорости движения гусеницы. Это можно сделать, воспользовавшись анимацией процентов пройденного пути.

ПРИМЕЧАНИЕ

Создав зависимость вращения колеса от пройденного главным звеном (track) пути, мы оставляем за собой возможность изменения скорости не только движения гусеницы, но и вращения колес.

Для этого сделайте следующее.

1. Выделите колесо Wheel01 и перейдите к свитку Assign Controller (Назначить контроллер) вкладки Motion (Движение) командной панели.

2. В свитке Assign Controller (Назначить контроллер) раскройте список контроллеров для осей поворота и выберите строку Y Rotation: Bezier Float (Y-поворот: значение Безье с плавающей точкой) (рис. 8.81).


Рис. 8.81. Свиток Assign Controller (Назначить контроллер) объекта Wheel01


3. Щелкните на кнопке Assign Controller (Назначить контроллер)

и выберите из появившегося списка контроллер Float Expression (Выражение с плавающей точкой). Щелкните на кнопке OK для подтверждения выбора.

4. В области Create Variables (Создать переменную) открывшегося окна Expression Controller (Контроллер выражения) создайте переменную pathPerc. Для этого в поле Name (Имя) введите имя переменной и щелкните на кнопке Create (Создать) (рис. 8.82).

5. В нижней части окна щелкните на кнопке Assign to Controller (Назначить контроллеру) и в появившемся окне Track View Pick (Выбрать трек) выберите объект track. Раскройте списки его параметров и активизируйте строку Percent: Linear Float (Проценты: линейное значение с плавающей точкой) (рис. 8.83).


Рис. 8.82. Переменная pathPerc, созданная в окне Expression Controller (Контроллер выражения)


Рис. 8.83. Окно Track View Pick (Выбрать трек)


6. В области Expression (Выражение) окна Expression Controller (Контроллер выражения) введите следующее выражение: degToRad(6.578*360*pathPerc) и щелкните на кнопке Evaluate (Оценить). Разберем это выражение. Функция degToRad(), как вы уже знаете, переводит градусы, которыми удобно оперировать пользователю, в радианы, с которыми работает 3ds Max. Выражение в скобках определяет угол поворота колеса в градусах: количество оборотов колеса на один оборот гусеницы, рассчитанный нами ранее (6,578), умноженное на 360° (один полный оборот в градусах) и на процент пройденного пути, который мы получаем от объекта track, используя созданную нами переменную pathPerc.

7. Проверьте анимацию, нажав кнопку Play Animation (Воспроизвести анимацию)

Колесо должно вращаться вместе с вращением гусеницы.

Теперь нужно связать анимированное колесо с остальными колесами. Это просто сделать, если воспользоваться окном Parameter Wire Dialog (Окно параметров связей) следующим образом.

1. Выполните команду меню Animation ► Wire Parameters ► Parameter Wire Dialog (Анимация ► Параметры связей ► Окно параметров связей).

2. В левой части открывшегося окна Parameter Wiring (Связываемые параметры) выберите из списка анимированное колесо (Wheel01). Разверните список параметров выбранного объекта, щелкнув на плюсе слева от имени, и выберите из списка строку Y Rotation: Float Expression (Y-поворот: выражение с плавающей точкой).

3. В правой части окна Parameter Wiring (Связываемые параметры) выберите из списка следующее большое колесо – Wheel02. Разверните список его параметров и выберите строку Y Rotation: Bezier Float (Y-поворот: значение Безье с плавающей точкой).

4. Щелкните на кнопке со стрелкой, направленной вправо. В результате выбранный параметр объекта слева будет управлять выбранным параметром объекта справа.

5. Щелкните на кнопке Connect (Соединить) для завершения создания связи (рис. 8.84).

6. Повторите вышеописанные операции назначения связей для двух оставшихся больших колес. В моем случае это колеса Wheel03 и Wheel04.

Для меньших колес, расположенных в верхней части гусеницы, необходимо изменить выражение в поле Expression for Y_Rotation (Функция для поворота по оси Y) на следующее: Y Rotation+degToRad((7.379-6.578)*360) (рис. 8.85). Это выражение означает, что угол поворота по оси Y малого колеса будет равняться углу поворота большого колеса плюс угол, который получился из разницы количества оборотов большого и малого колес, умноженной на 360°. Количество оборотов малого колеса считается по той же формуле, что и для большого, то есть длина пути делится на длину окружности колеса.

Рассмотрим, как повысить реалистичность сцены и внести изменения в анимацию гусеницы для учета неровности дороги. Это можно сделать при помощи управления положением вершин сплайна пути trackpath, привязанным к колесам. Для этого выполните следующее.

1. Нажмите на панели инструментов кнопку Select by Name (Выделить по имени)

и выберите из списка все объекты, в имени которых есть слово track, то есть все звенья танковой гусеницы.


Рис. 8.84. Окно Parameter Wiring (Связываемые параметры) для большого колеса


Рис. 8.85. Окно Parameter Wiring (Связываемые параметры) для малого колеса


2. Щелкните на выделении правой кнопкой мыши и выберите из контекстного меню команду Hide Selection (Спрятать выделенное).

3. В окне проекции Left (Слева) немного выше правого верхнего колеса постройте объект Rectangle (Прямоугольник) небольшого размера (рис. 8.86). Форма и размер этого объекта не имеют принципиального значения, так как он играет роль вспомогательного объекта, к которому будут привязываться вершины сплайна пути.


Рис. 8.86. Прямоугольник, построенный над колесом


4. Выделите созданный прямоугольник, если он не остался выделенным после построения, и перейдите на вкладку Utilities (Утилиты) командной панели. В одноименном свитке щелкните на кнопке Reset XForm (Сбросить преобразования).

ВНИМАНИЕ

Преобразования необходимо сбросить потому, что профиль колеса строился в окне проекции Front (Спереди), а прямоугольник – в окне проекции Left (Слева). Следовательно, эти два объекта имеют разные локальные системы координат, что вызовет изменение положения колеса при его связывании с прямоугольником, если не сбросить преобразования.

5. В окне проекции Left (Слева) выберите сплайн пути (track_path) и перейдите на вкладку Modify (Изменение) командной панели.

6. Перейдите на уровень редактирования вершин и выберите две вершины, расположенные рядом с правым верхним колесом (рис. 8.87).

7. Примените к выбранным вершинам модификатор Linked XForm (Связанное преобразование), выбрав его из списка модификаторов вкладки Modify (Изменение).

8. В свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите построенный прямоугольник (рис. 8.88).


Рис. 8.87. Вершины, выбранные для редактирования


Рис. 8.88. Свиток Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование)


9. Проверьте сделанную привязку, для чего в окне проекции Left (Слева) выделите и произвольно переместите прямоугольник. Вместе с прямоугольником должны перемещаться вершины сплайна пути.

1 0. Отмените выполненные перемещения, чтобы вершины сплайна пути вернулись в исходное состояние.

1 1. Привяжите к прямоугольнику правое верхнее колесо. Для этого нажмите кнопку Select and Link (Выделить и связать)

на главной панели инструментов, затем щелкните на колесе и, когда указатель примет соответствующий вид, перетащите его на прямоугольник.

1 2. Снова проверьте правильность привязки, перемещая прямоугольник: теперь вместе с вершинами сплайна будет перемещаться колесо.

Далее необходимо выполнить такие же привязки для всех остальных колес. Отличие состоит лишь в том, что для выбора необходимых вершин применяется модификатор SplineSelect (Выбор сплайна) или Edit Spline (Редактирование сплайна). Рассмотрим пример привязки следующего колеса.

1. Скопируйте прямоугольник или постройте новый и разместите его напротив второго колеса (рис. 8.89).


Рис. 8.89. Расположение второго управляющего прямоугольника


2. Если вы построили новый прямоугольник, то сбросьте преобразования, для чего перейдите на вкладку Utilities (Утилиты) командной панели и в одноименном свитке щелкните на кнопке Reset XForm (Сбросить преобразования).

3. Вернитесь к стеку модификаторов сплайна пути, для чего выделите сплайн track_path и перейдите на вкладку Modify (Изменение) командной панели.

4. Выберите из списка модификаторов строку SplineSelect (Выбор сплайна) и перейдите на уровень редактирования вершин.

5. Выделите две вершины, расположенные у основания второго колеса.

6. Примените к выбранным вершинам модификатор Linked XForm (Связанное преобразование), выбрав его из списка модификаторов. В результате стек модификаторов будет выглядеть, как показано на рис. 8.90.


Рис. 8.90. Стек модификаторов объекта track_path после привязки второй группы вершин


7. В свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите второй прямоугольник.

8. Привяжите ко второму прямоугольнику второе колесо. Для этого нажмите кнопку Select and Link (Выделить и связать)

на главной панели инструментов, затем щелкните на колесе и, когда указатель примет соответствующий вид, перетащите его на прямоугольник.

9. Проверьте анимацию.

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

ПРИМЕЧАНИЕ

Ознакомиться с выполненной анимацией движения гусеницы танка можно, воспользовавшись файлом track_end.max, расположенным в папке ExamplesГлава 08Track прилагаемого DVD. В папке VideoГлава 08 находится готовая анимация track.avi.

Звук в 3ds Мах

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

Как обычно, для выполнения упражнения понадобится базовая сцена, которую вы можете загрузить из папки ExamplesГлава 08Sound_wave прилагаемого к книге DVD. Файл называется sound_wave_start.max. Все, что нам необходимо для работы, – это модель акустического динамика и параметрический объект Plane (Плоскость), на основе которого будем строить анализатор частотных характеристик звука. Начнем с анимации динамика. В первую очередь необходимо заставить мембрану динамика двигаться в такт музыке. Это проще всего сделать, анимировав выделенные вершины при помощи модификатора Linked XForm (Связанное преобразование) и контроллера AudioFloat (Звук, использующий значения с плавающей точкой). Для этого сделайте следующее.

1. В окне проекции Top (Сверху) постройте вспомогательный объект-пустышку, выполнив команду Create ► Helpers ► Dummy (Создание ► Вспомогательные объекты ► Пустышка).

2. Используя инструмент Select and Move (Выделить и переместить)

переместите построенный объект Dummy01 так, чтобы он находился прямо перед динамиком (рис. 8.91).

3. В одном из окон проекций выделите динамик (объект speakerR) и в стеке модификаторов вкладки Modify (Изменение) командной панели щелкните на плюсике в строке Editable Poly (Редактируемая полигональная поверхность), а в раскрывшемся списке выберите строку Vertex (Вершина).

4. В окне проекции Front (Спереди) выделите вершины, находящиеся внутри динамика (рис. 8.92) (при необходимости обратитесь к цветной иллюстрации, расположенной на диске в папке ImagesГлава 08).


Рис. 8.91. Положение объекта Dummy01 в окне проекции Top (Сверху)


Рис. 8.92. Восемь рядов вершин, выделенных внутри динамика


СОВЕТ

Проще всего выделить вершины, расположенные по кругу, при помощи инструмента выделения Circular Selection Region (Область выделения по окружности)

Можно также выделить одну точку, расположенную в середине динамика, и в свитке Selection (Выделение) щелкнуть восемь раз на кнопке Grow (Увеличить), увеличив выделяемую область до нужного размера.

5. Назначьте выделению модификатор Linked XForm (Связанное преобразование), выполнив команду Modifiers ► Animation ► Linked XForm (Модификаторы ► Анимация ► Связанное преобразование).

6. В свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите объект Dummy01.

7. На главной панели инструментов активизируйте инструмент Select and Move (Выделить и переместить)

и в окне проекции Left (Слева) переместите вспомогательный объект-пустышку Dummy01 в сторону от динамика. При перемещении пустышки должна двигаться и привязанная к ней часть вершин динамика. Если этого не происходит, повторите привязку вершин к вспомогательному объекту.

8. Верните объект-пустышку в первоначальное положение, выполнив команду Undo (Отменить) или воспользовавшись сочетанием клавиш Ctrl+Z.

Далее необходимо назначить вспомогательному объекту Dummy01 контроллер управления положением по звуку.

ВНИМАНИЕ

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

Программа 3ds Max поддерживает два формата звуковых файлов: WAV и AVI. В связи с этим необходимо конвертировать имеющуюся звуковую дорожку в один из этих форматов. Для этого можно использовать как специализированные программы редактирования звука (такие как Sound Forge), так и простые проигрыватели (например, Winamp).

Увеличьте время анимации до двух с половиной минут. Именно такое время длится звуковая дорожка, которую мы будем использовать в данном упражнении. Для увеличения времени анимации щелкните на кнопке Time Configuration (Настройка временных интервалов)

и в области Animation (Анимация) открывшегося окна измените значение параметра End Time (Время окончания) на 4500 кадров (из расчета 30 кадров в секунду). Можно также установить отображение единиц времени в минутах, секундах и тиках, соответственно, в таком же формате устанавливается значение счетчика End Time (Время окончания).

Вернемся к анимации. Прежде всего необходимо «заморозить» трансформацию положения вспомогательного объекта Dummy01, чтобы обнулить все значения координат по осям X, Y и Z. Это облегчит работу с контроллером, использующим звуковую дорожку. Кроме того, следует загрузить в программу звуковой файл, чтобы иметь возможность контролировать процесс анимации не только визуально, но и вместе со звуком. Для этого выполните следующие действия.

1. В одном из окон проекций выделите объект-пустышку Dummy01.

2. Удерживая нажатой клавишу Alt, щелкните правой кнопкой мыши в окне проекции. В результате появится контекстное меню.


Рис. 8.93. Контекстное меню с выбором команды, замораживающей все трансформации


3. В группе transform (Трансформации) щелкните на строке Freeze Transform (Заморозить трансформацию) (рис. 8.93), после чего откроется окно с предупреждением о том, что могут быть утеряны ранее выполненные трансформации или анимация. В данном случае это как раз то, что нам нужно. На вопрос о том, желаете ли вы продолжить, ответьте утвердительно.

4. Откройте редактор кривых командой Graph Editors ► Track View – Curve Editor (Графические редакторы ► Просмотр треков – редактирование кривых).

5. В левой части редактора кривых выберите строку Sound (Звук) (рис. 8.94) и щелкните на ней правой кнопкой мыши, в результате чего откроется контекстное меню.


Рис. 8.94. Окно редактора кривых


6. В контекстном меню выберите строку Properties (Свойства).

7. В открывшемся окне Sound Option (Свойства звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу. Вы можете выбрать собственный звуковой файл или воспользоваться файлом Sound.wav, расположенным в папке ExamplesГлава 08Sound_wave прилагаемого к книге DVD.

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

Теперь можно продолжить присвоение объекту Dummy01 контроллера, управляющего перемещением по оси Y (перпендикулярно динамику).

1. Выделите вспомогательный объект Dummy01 (если он не выделен) и перейдите на вкладку Motion (Движение) командной панели.

2. В свитке Assign Controller (Назначить контроллер) щелкните на плюсике, расположенном рядом со строкой Position: Position List (Положение: список положения), для раскрытия списка контроллеров положения.

3. Раскройте строку Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: положение по XYZ) и выберите строку Y Position (Положение по оси Y).

4. Щелкните на кнопке Assign Controller (Назначить контроллер)

и в раскрывшемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите строку AudioFloat (Звук, использующий значения с плавающей точкой) (рис. 8.95).

5. В появившемся окне Audio Controller (Контроллер звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу.

6. В области Controller Range (Диапазон контроллера) увеличьте значение параметра Max (Максимум) до 30. В зависимости от уровня записи, которую вы используете, величина максимального значения может быть меньше или больше.

7. В области Channel (Канал) установите переключатель в положение Right (Правый) (рис. 8.96).


Рис. 8.95. Окно Assign Float Controller (Назначить контроллер с плавающей точкой)


Рис. 8.96. Настройки окна Audio Controller (Контроллер звука) для правого динамика


8. Закройте окно Audio Controller (Контроллер звука) и проверьте анимацию. Объект-пустышка и связанный с ним динамик должны колебаться в такт музыке.

Скопируйте динамик вместе с объектом-пустышкой. Для этого в окне проекции Front (Спереди) выделите оба объекта и, удерживая нажатой клавишу Shift, переместите их вправо на 680 единиц (величину смещения можно увидеть в строке информации в нижней части окна 3ds Max). В качестве способа копирования укажите Copy (Независимая копия объекта).

СОВЕТ

Копировать со смещением можно разными способами, например используя инструмент Array (Массив).

После копирования новый динамик унаследует старые связи, что вызовет нежелательную трансформацию. Избавиться от них просто – достаточно на вкладке Modify (Изменение) командной панели переопределить объект контроля. Для этого в свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) необходимо щелкнуть на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций указать на новый вспомогательный объект-пустышку Dummy02.

Последнее, что осталось сделать для анимации динамиков, – изменить для вновь построенного динамика звуковой канал. Для этого выполните следующее.

1. Выделите новый объект-пустышку Dummy02.

2. Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контроллер) выберите строку с именем Y Position (Положение по оси Y), расположенную внутри списка Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: положение по XYZ).

3. Щелкните на строке Y Position (Положение по оси Y) правой кнопкой мыши и выберите из контекстного меню строку Properties (Свойства).

4. В области Channel (Канал) открывшегося окна Audio Controller (Контроллер звука) установите переключатель в положение Left (Левый) (рис. 8.97).


Рис. 8.97. Окно Audio Controller (Контроллер звука) с установленным каналом для левого динамика


5. Закройте окно и проверьте анимацию. Оба динамика должны вибрировать в такт музыке.

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

Перейдите на вкладку Display (Дисплей) командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени), в результате чего откроется окно со списком спрятанных объектов. Выберите из него объект analyzer_wave и щелкните на кнопке Unhide (Отобразить). Этот объект – будущая панель анализатора спектра, разделенная на десять сегментов по горизонтали (по количеству каналов, которые мы будем анимировать).

Рассмотрим, как будет работать наш анализатор. Есть несколько способов отображения и передачи информации звукового контроллера параметрам объекта. Мы будем использовать анимированный материал. Такой подход позволит получить приемлемый результат, не создавая дополнительной геометрии. Можно построить сложный материал, основанный на серии масок для каждого канала, однако такой способ может оказаться достаточно трудным для начинающих. По этой причине мы создадим многокомпонентный материал, каждый компонент которого будет являться копией одного материала с измененными параметрами звукового контроллера (для получения колебаний различной амплитуды).

1. В одном из окон проекций выделите объект analyzer_wave и перейдите на вкладку Modify (Изменение) командной панели.

2. Выберите из списка модификаторов (или выполните соответствующую команду главного меню) модификатор Edit Mesh (Редактирование поверхности).

3. Перейдите на уровень редактирования полигонов, для чего в свитке Selection (Выделение) щелкните на кнопке Polygon (Полигон)

4. В окне проекции Front (Спереди) выделите первый полигон и присвойте ему первый идентификатор материала, для чего задайте параметру Set ID (Установить идентификатор материала) из свитка Surface Properties (Свойства поверхности) значение 1 (рис. 8.98) и нажмите на клавиатуре Enter для подтверждения внесенных изменений.

5. Выделите второй полигон объекта analyzer_wave и установите идентификатор материала равным 2.

6. Проделайте вышеописанные операции для оставшихся восьми полигонов, присвоив им идентификаторы материала согласно порядку их следования.

Для создания и настройки базовых параметров материала сделайте следующее.

1. Откройте редактор материалов, выполнив команду Rendering ► Material Editor (Визуализация ► Редактор материалов) или нажав клавишу M.


Рис. 8.98. Установка идентификатора материала для первого полигона анализатора спектра


2. Выберите ячейку со свободным материалом и щелкните на кнопке Standard (Стандартный), расположенной справа от имени материала.

3. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка материал Multi/Sub-Object (Многокомпонентный). На вопрос Keep old material as sub-material? (Оставить старый материал в качестве компонента?) ответьте утвердительно.

4. В свитке Multi/Sub-Object Basic Parameters (Базовые параметры многокомпонентного материала) щелкните на кнопке с именем первого материала. В результате появятся его настройки.

5. В области Self-Illumination (Собственное свечение) свитка Blinn Basic Parameters (Базовые параметры раскраски по Блинну) задайте параметру Color (Цвет) значение 100. Это позволит имитировать яркий светящийся индикатор.

6. В свитке Maps (Карты текстур) нажмите кнопку None (Отсутствует), расположенную справа от Diffuse Color (Цвет рассеивания).

7. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент) (рис. 8.99) и щелкните на кнопке OK для подтверждения выбора и закрытия окна.

8. После выбора карты Gradient Ramp (Улучшенный градиент) в окне редактора материалов автоматически отобразятся свитки параметров этой карты. В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) необходимо настроить следующие цвета флагов градиента:

для первого флага, расположенного в позиции 0, установите зеленый цвет со значениями Red (Красный) – 0, Green (Зеленый) – 255, Blue (Синий) – 0. Для этого дважды щелкните на флаге и в открывшемся окне Color Selector (Выбор цвета) задайте значения цветовых каналов;


Рис. 8.99. Выбор карты улучшенного градиента в окне Material/Map Browser (Окно выбора материалов и карт)


для флага, расположенного в позиции 100, задайте красный цвет: Red (Красный) – 255, Green (Зеленый) – 0, Blue (Синий) – 0;

флаг, расположенный посередине (в позиции 50), передвиньте в позицию 70 и установите желтый цвет: Red (Красный) – 255, Green (Зеленый) – 220, Blue (Синий) – 20.

СОВЕТ

Более точно установить позицию флага, изменить имя, установленное по умолчанию, или назначить ему текстуру можно, щелкнув на флаге правой кнопкой мыши и выбрав из контекстного меню строку Edit Properties (Правка свойств).

ПРИМЕЧАНИЕ

Данный градиент влияет на внешний вид анализатора звука. Он настраивается один раз для всех каналов. При желании вы можете использовать другие цвета анализатора звука. Если вы решите в дальнейшем менять цвет, то эту градиентную карту лучше всего настраивать как внешнюю, с последующим копированием в качестве образца (Instance) в многокомпонентный материал. В таком случае при редактировании одной карты будут изменяться цвета сразу во всех 10 каналах.

9. Поверните градиентную карту в вертикальное положение, задав параметру W области Angle (Угол) свитка Coordinates (Координаты) значение -90 (рис. 8.100).

10. Вернитесь к свитку Maps (Карты текстур), щелкнув на панели инструментов редактора материалов на кнопке Go to Parent (Вернуться к исходному)

Перейдем к настройке карты прозрачности, которая будет не только имитировать разбиение полоски анализатора на отдельные сегменты, но и управлять их отображением. Для этого нам понадобится составная карта Mask (Маска), построением которой мы сейчас и займемся.

1. В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует), расположенной справа от Opacity (Непрозрачность).

2. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент) и щелкните на кнопке OK для подтверждения выбора и закрытия окна.


Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | Следующая
  • 0 Оценок: 0

Правообладателям!

Это произведение, предположительно, находится в статусе 'public domain'. Если это не так и размещение материала нарушает чьи-либо права, то сообщите нам об этом.


Популярные книги за неделю


Рекомендации