7.4. Практическое задание. Боулинг
7.4. Практическое задание. Боулинг
Как вы можете догадаться из названия упражнения, мы будем говорить о боулинге, а точнее, о динамике твердых тел, использованной при моделировании такой сцены. Нам понадобится примитивный зал для боулинга, кегли и шар. Вы можете использовать файл bowling_start.max из папки ExamplesГлава 07Bowling прилагаемого к книге DVD или создать объекты самостоятельно.
Для моделирования дорожки выполните следующие действия.
1. Постройте профиль дорожки, напоминающий по форме перевернутую букву «П». Для этого воспользуйтесь формой Rectangle (Прямоугольник) и немного отредактируйте ее.
2. Примените к профилю модификатор Extrude (Выдавливание) с величиной, в 5–6 раз превышающей ширину профиля.
3. В окне проекции Left (Слева) при помощи инструмента Select and Rotate (Выделить и повернуть) немного наклоните дорожку, чтобы шар мог катиться вниз (рис. 7.7).
Построим кегли и шар. Для создания шара используйте примитив Sphere (Сфера). Чтобы построить кегли, выполните следующие действия.
1. Постройте в окне проекции Front (Спереди) профиль кегли, для чего воспользуйтесь сплайном с последующим редактированием вершин.
2. Примените к профилю модификатор Lathe (Вращение вокруг оси).
3. Клонируйте кеглю, выполнив команду Edit ? Clone (Правка ? Клонирование), и в появившемся окне Clone Options (Параметры клонирования) установите переключатель в положение Copy (Независимая копия объекта).
На рис. 7.8 показана сцена, подготовленная для расчетов динамики твердых тел.
После создания объектов для взаимодействия нужно добавить в сцену значок коллекции твердых тел. Для этого выполните следующие действия.
1. На вкладке Create (Создание) командной панели щелкните на кнопке Helpers (Вспомогательные объекты)
и выберите в раскрывающемся списке разновидностей объектов строку reactor.
2. Нажмите кнопку RBCollection (Коллекция твердых тел) и щелкните в произвольном месте любого окна проекции для создания коллекции твердых тел (положение и размер значка значения не имеют) (рис. 7.9).
3. Щелкните на значке RBCollection (Коллекция твердых тел) в окне проекции.
4. В свитке RB Collection Properties (Свойства коллекции твердых тел) вкладки Modify (Изменение) командной панели щелкните на кнопке Pick (Выбрать) и выберите в окне проекции все объекты сцены.
Теперь необходимо изменить свойства объектов, чтобы указать программе, какие объекты просчитывать и каким образом это будет происходить.
1. Выделите сферу в окне проекции.
2. Перейдите на вкладку Utilities (Утилиты) командной панели и щелкните на кнопке reactor.
3. В свитке Properties (Свойства) задайте параметру Mass (Вес) значение 3.
4. Выделите все кегли в окне проекции.
5. В свитке Properties (Свойства) задайте параметру Mass (Вес) значение 2.
6. Вес дорожки должен остаться равным 0. Это будет означать, что данное тело неподвижно. Кроме того, в свитке Properties (Свойства) ее настроек нужно установить переключатель Simulation Geometry (Просчет геометрии) в положение Concave Mesh (Изогнутая поверхность). Это необходимо в том случае, если поверхность не плоская, а, как у меня, с краями.
Перед тем как запустить просчет анимации, нужно задать начальное движение сферы. Для этого выполните следующие действия.
1. Расположите сферу так, чтобы она находилась немного выше и впереди дорожки.
2. Щелкните на кнопке Auto Key (Автоключ) в правом нижнем углу окна программы. В результате кнопка выделится цветом, указывая, что включен режим записи ключей анимации.
3. Передвиньте ползунок таймера анимации в 5 кадр.
4. Переместите сферу так, чтобы она оказалась в начале дорожки.
5. Выключите запись ключей анимации.
Перейдите на вкладку Utilities (Утилиты) командной панели и щелкните на кнопке reactor. В свитке Preview & Animation (Просмотр и анимация) определите начало анимации пятым кадром (для этого задайте параметру Start Frame (Начальный кадр) значение 5) и щелкните на кнопке Create Animation (Создать анимацию). В результате начнется просчет динамики. На рис. 7.10 показан фрагмент сцены – как шар разбивает кегли.
Рис. 7.10. Кегли, разбиваемые шаром