Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ponimayka1

.pdf
Скачиваний:
123
Добавлен:
07.06.2015
Размер:
37.11 Mб
Скачать

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

Теперь надо получить симметричный ряд колес. Быстрее всего это сделать при помощи дополнительной группировки и отрицательного масштабирования, пользуясь тем, что pivot новой группы по умолчанию устанавливается в начало координат.

Объедините все три группы (Wheel1, Wheel2, Wheel3) в новую группу и назовите ее WheeLsLeft. Скопируйте ее (Edit=>Duplicate).

В Channel Box задайте scaleX=-1 и переименуйте группу в WheelsRight.

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

231

Это и есть следствие махинаций с масштабом. Для того, чтобы избавиться от «вывернутости» масштаба, надо применить к группе WheelsRight операцию Freeze, которая сбрасывает все значения атрибутов translate, rotate и scale, оставляя при этом объект на месте, как будто бы он только что был создан в такой позиции и с таким размером. (Подробнее о Freeze Transformations и ResetTrans formations читайте во главе про изнанку MAYA.)

Выберите группу WheelsRight и выполните Modify=>Freeze Transformations. Это решит проблему отрицательных вращений.

Объедините все четыре группы (Base, Cabin, WheelsRight, WheelsLeft) в новую группу назовите ее Train.

Сохраните файл (train05.ma).

Паровоз готов, займемся железной дорогой.

Спрячьте группу Train.

Выберите Option Box для CV Curve Tool и установите Curve Degree=3 Cubic. Постройте кривую пути для паровоза.

232

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

Мой хороший друг Олег Булгак поехал работать по распределению в Новый Уренгой. Работать ему пришлось на разных объектах, в том числе и на строительстве железной дороги. И котя в его обязанности никак не входили задачи проектирования, однажды он был застигнут неопределенного рода начальством с безапелляционным предложением проложить маршрут для очередного участка железной дороги между местных болот. На робкие возражения, что, мол, не обучен и, типа, некомпетентен, последовал убойный аргумент: «Вы там штаны протирали пять лет, вот и покажите, на что способны! А то кому же еще план рисовать да бумагу марать, инженеры разные!" Вместо «разныя» подставлялись различные прилагательные, характеризующие степень компетентности в инженерном деле. Выхода не было, дело пахло скандалом, начальство пахло перегаром, и Олег, просидев несколько часов над секретным планом окрестных топей и болот, начертал дрожащей рукой кривую третьего порядка, ставшую впоследствии следующим участком железнодорожной магистрали. Дождаться конца строительства Олегу, к счастью, не довелось, и скоро он вернулся в менее сибирскую Молдавию. Однако через несколько лет ему пришлось ехать по той самой железной дороге. Всю дорогу скорый поезд мчался среди безлюдной местности, практически обгоняя свой собственный шум. Однако в районе знакомых болот состав вдруг сбросил скорость и стал медленно и осторожно красться между кустиков осоки и кочек моха, подобно змее, подбирающейся к добыче. Добыча, видать, была пугливая, потому что тащился поезд довольно долго. Однако затем, как ни в чем не бывало, весело рванул в направлении пункта назначения. Бывалый Олег связал было такое странное поведение поезда с состоянием здоровья машиниста и его помощника, однако все-таки поинтересовался у соседей о причинах столь значительной задержки. Соседи в незатейливых выражениях быстро объяснили, что пару лет назад какой-то шибко умный инженер из Москвы проложил здесь железнодорожный маршрут ТАК, что любой поезд сходит с рельс, если движется быстрее пешехода. Далее следовали слова благодарности этому инженеру и его родителям. Олег скромно промолчал, избегая лучей славы, однако поклялся больше не заниматься железнодорожным делом.

История не только реальная, но и поучительная, притом применительно к компьютерной графике. Если вы рисуете траекторию движения или, тем более, путь для паровоза, избегайте внезапных поворотов и резких изгибов. Вращение объекта на таких поворотах будет дерганым. Кроме того, при попытке сделать копию кривой с отступом (offset curve), внутри резких изгибов будут появляться острые углы. Поэтому старайтесь рисовать траектории движения максимально падкими, если только это не противоречит замыслу «жесткого» движения.

Выберите построенную кривую и выполните Edit Curves=>Offset=>Offset Curve.

Это создаст кривую, «отступающую» от исходной на фиксированное расстояние (в данном случае, distanced, как следует из Channel Box). Такую копию невозможно получить, просто масштабируя кривую, так как точки новой, «отступающей» кривой сдвигаются по нормали к исходной, а не относительно центра масштабирования.

Снова выберите первую кривую и снова выполните Edit Curves=>Offset=>Offset Curve. В Channel Box установите distance=-1. Это создаст «отступ» в другую сторону.

233

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

Перейдите в камеру front.

Откройте Option Box для CV Curve Tool и установите Curve Degree=Linear. Постройте профиль вокруг начала координат с помощью привязки к сетке.

Уменьшите кривую. Установите scale=0.2; 0.2;0.2

Выберите построенную кривую профиля, а потом одну из полученных через Offset криви (порядок выбора, как обычно, важен).

Откройте Option Box для Surfaces=>Extrude.

Установите параметры по «правилу правой руки» - для первых четырех параметров должны быть установлены крайние правые опции (Tube, At Path, Component, Profile Normal). В этом случае получается «хороший» и предсказуемый extrude.

234

Нажмите Apply.

Снова выберите кривую профиля и вторую кривую и снова нажмите Apply. Закройте Option Box. Профиль слишком велик. Воспользуемся Construction History.

Снова выберите профиль и установите все scale-атрибуты в 0.1.

Если вас устраивает размер полученных объектов, спрячьте профиль.

Займемся шпалами.

Лучшая шпала в мире - это полигональный куб. Создайте его и задайте приблизительные Предварительные размеры (Scale = 0.3; 0.8; 3.0).

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

235

Установите на Range Slider диапазон анимации равным 100 кадрам.

Выберите шпалу, а затем кривую между рельсами (порядок, как ни странно, опять важен В основном меню выберите Animate=>Motion Paths=>Attach to Motion Path.

Шпала «насадилась» на путь и при нажатии кнопки Play на TimeLine весело бегает по пути Недостаток один - она насадилась на путь своим pivot'OM, который расположен прямо в центре шпалы. Попробуем сдвинуть pivot прямо на анимированной шпале.

Нажмите Insert и тяните pivot вверх!

Чтобы скомпенсировать смещение вверх вынужденного оставаться на пути пивота, шпала смешается вниз.

Загнав шпалу под рельсы, снова нажмите Insert.

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

Выберите шпалу.

Откройте Option Box для Animate=>Create Animation=>Snapshot.

Установите диапазон Time Range=Time Slider. Это определит диапазон выполнения копирования равным диапазону анимации.

Задайте параметр Increment=3, это установит каждый третий кадр для копирования анимированного объекта.

236

После выполнения операции Snapshot вдоль пути возникнет последовательность из шпал, а в Outliner появится snapshot1 Group.

Коль скоро мы вооружились передовыми знаниями по запусканию объекта вдоль пути, поставим паровоз на рельсы. Залезем немного в анимацию.

В Outliner выберите группу Train и покажите ее (например, установите visibility=on). (масштабируйте паровоз приблизительно так, чтобы он вставал на рельсы. (Пользуйтесь только центральным манипулятором). Не обязательно точно подбирать размер, это можно сделать позже. Перемещать паровоз тоже необязательно: MAYA сама сделает это.

Выберите группу Train, затем центральный путь. Выполните Animate=>Motion Paths=>Attach to Motion Path.

Засада! Паровоз, конечно, бодро ездит по пути. Но как-то ... боком.

Очевидно мы использовали установки по умолчанию и запустили паровоз по пути «носом вперед». Правда, не определили, где у него «нос». Глядя на манипулятор Scale Tool, можно понять, что локальная ось X паровоза направлена вбок, а ось Z - в «нос».

В Attribute Editor можно разыскать закладку для ноды motionPath1, отвечающей за присоединение паровоза по пути. Там можно определить, какой локальной осью объект поедет вперед по пути. Установите Front Axis=Z. Паровоз встанет в правильную стойку.

237

С помощью махинаций с pivot'OM и регулировки размера паровоза установите его на рельсы окончательно.

Запустите анимацию, откиньтесь на спинку кресла и скажите: «Волшебно!». Или «Омерзительно!». В зависимости от настроения. Если вас не веселит безумная шпала, носящаю по пути вместе с паровозом, спрячьте ее.

Сохраните сцену.

Пытливые умы, дожившие до запуска паровоза по пути и сохранившие ясность ума, воскликнут: - А мы же не удаляли историю с тех пор, как строили путь! А если сейчас поредактировать центральную кривую?». Действительно, от центральной кривой зависит множество объекта и рельсы (через offset и extrude), и шпалы (через snapshot) и паровоз (через анимацию). Если в режиме Wireframe выбрать центральную кривую, то на экране порозовеют все объекты. Это означает их зависимость от выбранного объекта.

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

Дело в том, что обновление всей группы скопированных шпал дело непростое и по умолчанию интерактивно не обновляется. Однако вы можете выбрать любую шпалу и выполнить Ammate=>Update Motion Trail/Snapshot, чтобы поставить шпалы на место.

238

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

Продвинутое паровозостроение

Если вы подумали, что на этом построение паровоза заканчивается, вы, извините, ошиблись. До сих пор было ознакомление с инструментами и операциями моделирования, в духе «ваш первый паровоз в MAYA». Теперь посмотрим, как можно улучшить нашу модель в соответствии

впрактическими рекомендациями лучших паровозоводов.

Апрактические рекомендации следующие:

Избегайте острых углов между поверхностями. Для реалистичной визуализации.

Старайтесь не применять Trim и Planar (в пределах разумного, без фанатизма), в основном из-за потенциальных дырок на швах.

Не оставляйте видимыми открытые края поверхностей. Они выглядят как острые грани

ирежут глаз. Загните или закамуфлируйте их чем-нибудь.

Не используйте Round Tool и Circular Filet. Они работают медленно, создают тяжелую геометрию, а результат не всегда предсказуем.

Далее следуют некоторые инструкции по улучшению некоторых частей модели. Они призваны продемонстрировать некоторые хитрости сплайнового моделирования и не могут быть рассмотрены как руководство к полной сборке паровоза. Я лишь попытался обозначить часто встречающиеся проблемы и привести методы их решения.

Котел

Начнем с котла. То есть с цилиндра. Цилиндр проще создать заново или можно выбрать его и выполнить Edit NURBS=>Untrim.

Закрытие дырки при помощи Planar и Round Tool и борьба с объектами-мутантами - это неспортивно. Закрываем дырку вручную. Сначала вставим несколько (а именно, пять) изопарм на краю цилиндра.

Выберем крайнюю изопарму и одну изопарму недалеко от края и применим операцию In­ sert Isoparm с опцией Between и количеством, равным четырем.

239

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

Дальше нам предстоит таскать и масштабировать ряды контрольных точек. Это удобно делать в камере side, выбирая ряды точек с помощью компонентов Hull. Будьте внимательны таскать будем только по оси Z, а масштабировать строго за центральный манипулятор.

Выбираем крайний ряд точек и сжимаем его.

240

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]