3ds max
Меню сайта
Категории каталога
уроки [96]
Чертежи [1]
Мини-чат
300
Наш опрос
Оцените мой сайт
Всего ответов: 171
Главная » Статьи » Моделирование » уроки

Звук в 3ds max Часть 1

Часть первая

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

Как обычно для начала выполнения упражнения понадобится базовая сцена. Для работы нам понадобится модель акустического динамика и параметрический объект Plane (Плоскость), на основе которого будем строить анализатор частотных характеристик звука. Начнем с анимации динамика. Все, что нам необходимо сделать, это заставить мембрану динамика двигаться в такт музыке. И проще всего это сделать, анимировав выделенные вершины на уровне подобъектов, при помощи модификатора Linked XForm (Связанное преобразование) и контроллера использующего звук — AudioFloat (Звук, использующий значения с плавающей точкой). Чтобы сделать это, необходимо выполнить следующие действия:

  • В окне проекции Top (Сверху) постройте вспомогательный объект-пустышку, для чего выполните из главного меню команду Create>Helpers>Dummy (Создать>Вспомогательные объекты>Пустышка).
  • Используя инструмент Select and Move (Выделить и переместить)  переместите построенный объект Dummy01 так, чтобы он находился прямо перед динамиком (рис. 1).
  • рис. 1

  • В одном из окон проекций выделите динамик (объект speaker) и в стеке модификаторов вкладки Modify (Изменить), командной панели, щелкните на знаке «плюс» рядом с именем модификатора для доступа к уровню подобъектов Vertex (Вершина).
  • ПРИМЕЧАНИЕ

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

  • В окне проекции Front (Спереди) выделите вершины, находящиеся внутри динамика (рис. 2).
  • рис. 2

    СОВЕТ

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

  • Назначьте выделению модификатор Linked XForm (Связанное преобразование), для чего выполните из главного меню команду Modifiers>Animation>Linked XForm (Модификаторы>Анимация>Связанное преобразование).
  • В свитке Parameters (Параметры) модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите объект Dummy01.
  • На главной панели инструментов активизируйте инструмент Select and Move (Выделить и переместить)  и в окне проекции Left (Слева) переместите вспомогательный объект-пустышку Dummy01 в сторону от динамика. Вслед за перемещением пустышки должна перемещаться привязанная к ней часть вершин динамика. Если этого не происходит, повторите операции привязки вершин к вспомогательному объекту.
  • Верните объект-пустышку в первоначальное положение, выполнив команду Undo (Отменить) или воспользовавшись сочетанием клавиш Ctrl+Z.
  • ВНИМАНИЕ

    Далее необходимо назначить вспомогательному объекту dummy01 контроллер управления положением по звуку, но прежде чем это делать, необходимо обратить ваше внимание на два важных фактора:

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

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

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

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

    рис. 3

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

  • В одном из окон проекций выделите объект-пустышку Dummy01.
  • Удерживая нажатой клавишу Alt , щелкните правой кнопкой мыши в окне проекции, в результате чего откроется контекстное меню.
  • В группе transform (Трансформации) щелкните на строке Freeze Transform (Заморозить трансформацию) (рис. 4) после чего откроется окно диалога с предупреждением о том, что могут быть утеряны ранее выполненные трансформации или анимация. В данном случае это как раз то, что нам нужно. На вопрос о том, желаете ли вы продолжить, ответьте утвердительно.

  • рис. 4

  • Откройте окно редактора кривых, для чего выполните из главного меню команду Graph Editors>Track View-Curve Editor (Редакторы графов>Просмотр треков-Редактирование кривых).
  • В левой части редактора кривых выберите строку с именем Sound (Звук) (рис. 5) и щелкните на ней правой кнопкой мыши, в результате чего откроется контекстное меню.

    рис. 5

  • В контекстном меню выберите строку Properties (Свойства), в результате чего откроется следующее окно диалога — Sound Option (Свойства звука).
  • В окне диалога Sound Option (Свойства звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу.
  • Протестируйте выполненные действия, запустив воспроизведение анимации. Сейчас во время воспроизведения анимации должен звучать выбранный вами звуковой файл.

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

  • Выделите вспомогательный объект Dummy01 (если он не выделен) и перейдите на вкладку Motion (Движение) командной панели.
  • В свитке Assign Controller (Назначить контроллер), щелкните на знаке «плюс», расположенном рядом со строкой Position: Position XYZ (Положение: Положение по XYZ) для раскрытия списка контроллеров положения.
  • Здесь же, в свитке Assign Controller (Назначить контроллер), щелкните на знаке «плюс», расположенном рядом со строкой Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: Положение по XYZ) и выберите строку с именем Y Position (Положение по оси Y) (рис. 6).
  • В этом же свитке щелкните на кнопке Assign Controller (Назначить контроллер)  и в раскрывшемся окне диалога Assign Float Controller (Назначить контроллер с плавающей точкой) выбелите строку с именем контроллера AudioFloat (Звук, использующий значения с плавающей точкой).
  • рис. 6

  • Как только вы подтвердите выбор контроллера, откроется новое окно диалога Audio Controller (Контроллер звука), в котором необходимо щелкнуть на кнопке Choose Sound (Выбор звука) и указать путь к звуковому файлу.
  • В группе Controller Range (Диапазон контроллера) увеличьте значение поля Max (Максимум) до 30.
  • ПРИМЕЧАНИЕ

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

  • В группе Channel (Канал) установите переключатель на Right (Правый) (рис. 7)
рис. 7
  • Закройте окно диалога и проверьте анимацию. Объект-пустышка, а вслед за ним и динамик должны колебаться в такт музыке.
  • Выполните копирование динамика вместе с объектом-пустышкой, для чего в окне проекции Front (Спереди) выделите оба объекта и, удерживая нажатой клавишу Shift, переместите их вправо на 680 единиц (смещение можно увидеть внизу интерфейса в строке информации). В качестве способа копирования укажите Copy (Копия).

СОВЕТ

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

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

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

  • Выделите новый объект-пустышку Dummy02.
  • Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контроллер) выберите строку с именем Y Position (Положение по оси Y), расположенную внутри списка Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: Положение по XYZ).
  • Щелкните на строке Y Position (Положение по оси Y) правой кнопкой мыши и выберите из контекстного меню строку Properties (Свойства) в результате чего появится окно диалога Audio Controller (Контроллер звука) (рис. 8).
рис. 8
  • В группе Channel (Канал) окна диалога Audio Controller (Контроллер звука) установите переключатель на Left (Левый).
  • Закройте окно диалога и проверьте анимацию. У вас должны оба динамика вибрировать в такт музыке.

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

Для продолжения урока постройте между двумя динамиками объект Plane (Плоскость), размером 120 х 240 и назовите его analyzer_wave. В свитке Patameters (Свойства) этого объекта установите значение счетчика Width Segs: (Сегментов по ширине) на 10. Это будет не что иное, как будущая панель анализатора спектра, разделенная на десять сегментов по горизонтали — по числу каналов, которые мы будем анимировать.

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

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

  • В одном из окон проекций выделите объект analyzer_wave и перейдите к вкладке Modify (Изменить) командной панели.
  • Выберите из списка модификаторов (или добавьте из главного меню) модификатор Mesh Editing (Правка сетки).
  • Перейдите на уровень редактирования полигонов, для чего в свитке Selection (Выделение) щелкните на кнопке Polygon (Полигон) .
  • В окне проекции Front (Спереди) выделите первый полигон и присвойте ему первый идентификатор материала, для чего в счетчике Set ID (Установить идентификатор материала) свитка Surface Properties (Свойства Поверхности) введите цифру «1» (рис. 9) и нажмите на клавиатуре Enter (Ввод), для подтверждения внесенных изменений.
рис. 9
  • Выделите второй полигон объекта analyzer_wave и установите идентификатор материала равный двум.
  • Проделайте вышеописанные операции для оставшихся восьми полигонов, присвоив всем идентификаторы материала согласно порядку их следования.

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

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

  • Откройте редактор материалов, для чего выполните из главного меню команду Rendering>Material Editor (Визуализация>Редактор материалов) или просто воспользуйтесь клавишей быстрого доступа M.
  • Выберите ячейку со свободным материалом и щелкните на кнопке Standard (Стандартный), расположенной справа от имени материала, в результате чего откроется окно диалога Material/Map Browser (Просмотр материалов и карт текстур).
  • В окне Material/Map Browser (Просмотр материалов и карт текстур) выберите из списка многокомпонентный материал (Multi/Sub-Object). На вопрос оставить ли основной материал в качестве одного из компонентов ответьте утвердительно.
  • В свитке Multi/Sub-Object Basic Parameters (Базовые параметры многокомпонентного материала) щелкните на кнопке с именем первого материала (в моем случае это материал 13 – Default, бывший базовым материалом), в результате чего вы перейдете на уровень его редактирования.
  • В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) в счетчике Color (Цвет) группы Self-Illumination (Самосвечение) установите значение равное 100. Это позволит имитировать яркий светящийся индикатор.
  • Для доступа к элементам свитка Maps (Карты текстур), щелкните на одноименной кнопке со знаком «+» и далее в раскрывшемся свитке щелкните на кнопке None (Отсутствует), расположенной справа от Diffuse Color (Цвет рассеивания). В результате выполненных действий откроется окно диалога Material/Map Browser (Просмотр материалов и карт текстур).
  • В окне диалога Material/Map Browser (Просмотр материалов и карт текстур) выберите из списка карту Gradient Ramp (Улучшенный градиент) (рис. 10) и щелкните на кнопке Ok для подтверждения выбора и закрытия окна.
рис. 10

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

ПРИМЕЧАНИЕ

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

  • для первого флага, расположенного в позиции 0, установите градации цвета по шкале RGB равные 0, 255, 0 соответственно (зеленый цвет). Для этого дважды щелкните на флаге, в результате чего откроется окно выбора цвета Color Selector (Выбор цвета), где и установите требуемый цвет.
  • для второго флага, расположенного в позиции 100, установите градации цвета по шкале RGB равные  255, 0,0 соответственно (красный цвет).
  • для построения третьего флага щелкните в пределах шкалы градиента, затем передвиньте его в позицию 70 и установите градации цвета по шкале RGB равные  255, 220,20 соответственно (желтый цвет).

СОВЕТ

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

  • Поверните градиентную карту в вертикальное положение для чего установите в счетчике W группы Angle (Угол) свитка Coordinates (Координаты) значение -90 (рис. 11).
рис.11
  • Вернитесь к свитку Maps (Карты текстур), щелкнув в панели инструментов редактора материалов на кнопке Go to Parent (Перейти к предку) .

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

  • В свитке Maps (Карты текстур), щелкните на кнопке None (Отсутствует), расположенной справа от Opacity (Непрозрачность). В результате выполненных действий откроется окно диалога Material/Map Browser (Просмотр материалов и карт текстур).
  • В окне диалога Material/Map Browser (Просмотр материалов и карт текстур) выберите из списка карту Gradient Ramp (Улучшенный градиент) и щелкните на кнопке Ok для подтверждения выбора и закрытия окна.
  • В свитке Coordinates (Координаты) выставьте следующие значения:
    • для координат по горизонтали (U) установите смещение (Offset) равное 0.05 и количество повторений (Tiling) равное 10, по числу каналов анализатора. Смещение позиционирует маску в середине используемого полигона.
    • для координат по вертикали (V) установите смещение (Offset) равное 0.025 и количество повторений (Tiling) равное 20, по числу сегментов одного канала анализатора.
  • В этом же свитке установите минимальное размытие карты, для чего в счетчике Blur (Размытие) выставьте значение «0».
  • В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) для первого флага установите белый цвет (карта прозрачности работает с градациями монохромного цвета от белого, до черного).
  • Постройте третий флаг, для чего щелкните в пределах шкалы градиента, затем передвиньте этот флаг в позицию 80 и установите для него черный цвет.
  • В этом же свитке выберите из списка Gradient Type (Тип градиента) строку Box (Параллелепипед) и Solid (Сплошной), для списка Interpolation (Интерполяция) (рис. 12).
рис. 12

Источник: easy-render.nm.ru
Категория: уроки | Добавил: alteros (13.03.2008)
Просмотров: 1749 | Рейтинг: 5.0/4 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Друзья сайта
Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0
Copyright MyCorp © 2024