Владимир Верстак - 3ds Max 2008. Секреты мастерства
- Название:3ds Max 2008. Секреты мастерства
- Автор:
- Жанр:
- Издательство:Издательство «Питер»046ebc0b-b024-102a-94d5-07de47c81719
- Год:2008
- Город:Санкт-Петербург
- ISBN:978-5-388-00082-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Владимир Верстак - 3ds Max 2008. Секреты мастерства краткое содержание
Узнайте секреты профессиональной работы в 3ds Max 2008 от настоящего мастера своего дела! Автор – профессионал трехмерного дизайна. Его оригинальный подход к созданию объектов и сцен, к моделированию и визуализации будет полезен и специалисту, и начинающему пользователю. Вы узнаете обо всех возможностях новейшей версии лучшего 3D-пакета, в том числе и скрытых от непосвященных. Особое внимание уделено моделированию: вы начнете с простейших объектов и завершите созданием трехмерного автомобиля.
3ds Max 2008. Секреты мастерства - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
4. Щелкните на кнопке OK – откроется окно для ввода сценария. Закройте это окно.
5. Обратитесь к окну MAXScript Listener (Интерпретатор MAXScript), выделите и переместите в окно редактора макрокоманд последнюю строку кода.
То, что мы сейчас сделали, позволило нам записать в окно редактора макрокоманд строку кода, меняющую контроллер, созданный по умолчанию, на свой, который можно редактировать с использованием сценария. На рис. 8.77 представлен вид редактора со всеми полученными до настоящего момента командами.
Теперь нужно добавить в окно редактора несколько строк, написанных самостоятельно, без помощи окна MAXScript Listener (Интерпретатор MAXScript).
1. Добавьте первой строкой for i = 1 to 90 do(. Таким образом мы создаем цикл, выполняющий выражение, которое находится внутри круглых скобок, начиная от 1 до 90. Число 90 – это количество копий звена танковой гусеницы (если помните, мы рассчитали их ранее).
2. Удалите закомментированную вторую строку.
3. В конце кода допишите: $.pos.controller.percent.controller.script ="at time (currenttime) $track.pos.controller.percent*0.01+ 0.011*"+i as string.
В первой части этого выражения мы обращаемся к контроллеру управления по коду, созданному в предыдущей строке, и присваиваем ему строковое выражение, находящееся в правой части. Это означает следующее. В текущий момент времени (at time (currenttime) ) контроллеру выделенного объекта, управляющему процентами ($.pos.controller.percent.controller.script), присваиваем значение процентов контроллера объекта track ($track.pos. controller.percent), деленное на 100 (так как на самом деле значение процентов считается не от 0 до 100, а от 0 до 1, то есть используем выражение *0.01), и задаем смещение на одно звено (общие проценты пути, деленные на количество звеньев: 1/90=0.011). Затем это выражение умножаем на порядковый номер (он же номер кадра), который в первой строке присваивается переменной i. Но так как код записывается в виде строковой переменной, числовое значение необходимо вынести за кавычки и обозначить как строковую переменную (i as string), оставив в кавычках знак умножения. Умножение на число i позволит каждому новому звену смещаться на соответствующую величину.

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

Рис. 8.77.Окно редактора макрокоманд на данном этапе
4. И наконец, две последние строки кода будут указывать на то, что вся анимация до первого ключевого кадра и после последнего будет повторяться, то есть станет непрерывной, вне зависимости от положения ключевых кадров на шкале анимации. Добавьте эти строки:
•setBeforeORT $.pos.controller.percent.controller #cycle
•setAfterORT $.pos.controller.percent.controller #cycle
5. Завершает код закрывающая круглая скобка (рис. 8.78).
ПРИМЕЧАНИЕ
На DVD в папке Examples\Глава 08\Track находится файл 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.
Читать дальшеИнтервал:
Закладка: