Широкое распространение пакета трехмерного моделирования и анимации 3ds max в области производства компьютерных игр не случайно. Развитые средства моделирования сложных поверхностей, впечатляющие спецэффекты и высококачественная визуализация обеспечили художников всеми необходимыми инструментами для воплощения их идей. А открытая архитектура способствовала появлению множества специализированных приложений различной сложности и полезности. Отлично зарекомендовал себя пакет Character Studio для создания и анимации живых персонажей. Таким образом, проблем с созданием собственного игрового мира больше не возникало. Остро встала другая проблема: как оживить нашу сцену? Можно, конечно, вручную задать траекторию падающего со скалы камня или задействовать кучу модификаторов для воспроизведения колышущейся от ветра занавески. Но такие титанические усилия вряд ли вознаградят аниматоров высокой реалистичностью движения объектов. Именно поэтому примерно год назад компания discreet обратила внимание на пакет фирмы Havok — приложение тогда еще к третьей версии 3ds max, которое служит для расчета динамики твердых и мягких тел, жидкостей и гибких объектов. Основываясь на этой технологии, discreet под своей торговой маркой выпустил приложение уже для 3ds max 4, которое получило название reactor.

Остановимся на основных возможностях этого пакета чуть подробнее и рассмотрим, какие объекты реального мира способен моделировать reactor.

Разрушение стены, смоделированное в пакете reactor
Разрушение стены, смоделированное в пакете reactor
Разрушение стены, смоделированное в пакете reactor
Разрушение стены, смоделированное в пакете reactor
Разрушение стены, смоделированное в пакете reactor
Разрушение стены, смоделированное в пакете reactor

Гибкие объекты

На сегодня reactor — единственное приложение для 3ds max, способное с завидной реалистичностью воспроизводить гибкие объекты: веревки, цепи и т.п. Можно разрешить или запретить самопересечения.

Ткань

Ткань создается из любого mesh-объекта. Особое внимание при расчете reactor уделяет поведению ткани на поверхности воды и при воздействии на ткань ветра.

Твердые объекты

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

«Мягкие» тела

Любой объект 3ds max может быть превращен в «мягкое» тело. Не забудьте только определить дополнительные параметры, свойственные пластичным материалам.

Динамика жидкостей

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

Проверка анимации в окне предварительного просмотра
Проверка анимации в окне предварительного просмотра

Все гениальное просто

Не нужно быть семи пядей во лбу, чтобы разобраться, как работает reactor — все предельно просто. Если мы хотим превратить какой-либо предмет в объект reactor`а, просто назначаем ему соответствующий модификатор и определяем его параметры. Существуют общие для всех типов объектов свойства — например, масса, коэффициент трения и геометрические характеристики тела. Есть и специфические свойства: у «мягких» тел это податливость, у ткани — удельный вес и коэффициент сопротивления ветру, у объектов типа «веревка» — толщина и параметры самопересечения. Теперь, чтобы наши объекты участвовали в расчете, достаточно добавить их в соответствующие коллекции. Затем открываем окно предварительного просмотра и отслеживаем, как reactor в режиме реального времени рассчитывает движения и взаимодействия выбранных предметов. Вносим необходимые изменения и, если все нравится, нужно только натравить reactor на сцену 3ds max. На этом этапе происходит непосредственно модификация объектов сцены и добавление ключей анимации. Просто, не правда ли? К тому же в комплекте поставки есть небольшой учебник, проделав упражнения из которого, можно за 1−2 дня освоить основные принципы работы. Все прочее зависит только от вашей фантазии!

Осталось только добавить, что пользователи-профессионалы, использующие в работе макросы, не будут разочарованы, поскольку все функции reactor доступны для программирования с помощью внутреннего языка MAXScript.