| engineerklub | Дата: Вторник, 25.08.2026, 06:02 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 39764
Статус: Offline
| Механика тряпичной куклы в Unity. Game дизайн
Задание
3.1 Скачайте любую Humanoid-модель с сайта Mixamo.com в формате FBX for Unity. Можете выбрать сразу модель с анимацией, либо скачать анимацию позднее
3.2 Добавьте модель в проект и на сцену Unity. Работает простое перетаскивание скачанной модели сначала в папку Project Unity, и далее – на сцену.
3.3 При добавлении на сцену модель будет белого цвета. Это происходит из-за отсутствия текстур. Текстуры в файле .fbx есть, но их нужно извлечь, для этого кликните по .fbx файлу и в окне Inspector выбираем Materials - Extract Textures. Появляется окно «Normal Map
Settings» - нажимаем «Fix Now». Здесь выводится информация о том, что нужно правильно интерпретировать настройки карт нормали.
3.4 В окне Hierarchy развернем персонажа: ALT (Option) + CLICK по нему. Так будут развернуты все вложенности. Чтобы сделать Ragdoll, нужно выделить каждую часть тела и назначить на нее серию компонентов: Rigidbody + Collider + Joint (шарнир). Для того чтобы сделать это в автоматическом режиме перейдите во вкладку GameObject -> 3D Object -> Ragdoll (инструмент создания тряпичной куклы).
3.5 Открывается окно со слотами, которое нужно наполнить частями тела персонажа (перетаскиванием из окна Hierarchy в окно Create Ragdoll). На те части, которых нет в списке - Rigidbody не назначается. В нижней части указывается Total Mass - вес тела, который будет распределен между всеми частями, пропорционально их размерам. Например, в нашем случае ставим вес тела 60 кг:
3.6 Завершите создание тряпичной куклы, подтвердив действие в окне Create Ragdoll. Если выделить самый верх иерархии (в окне Hiararchy) персонажа - то вы увидите автоматически созданные коллайдеры:
3.7 Запустите сцену. Что не так с механикой? Внесите исправления в автоматически назначенные компоненты, чтобы механика падения тряпичной куклы выглядела более натурально. Дайте развернутый ответ, что требовалось исправить.
3.8 Скачайте с сайта Mixamo скелет с анимацией какого-либо движения (если не сделали этого ранее). И добавьте в проект Unity (перетаскиванием в окно Project). Разверните скачанный файл (нажав стрелку рядом с моделью). Файл с анимацией выглядит как треугольник. Извлеките его из пакета, нажав Ctrl+D. Выберите извлеченный файл анимации и сделай так, чтобы она была зациклена (клик Loop Time в окне Inspector).
3.9 Правильный порядок создания анимации выглядит так: - создайте контроллер анимации (клик ПКМ в окне Project - Create - Animator Controller); - созданный Animator Controller назначьте на модель персонажа на сцене; - откройте созданный контроллер анимации (дважды кликнув по нему); - переместите анимацию из предыдущего пункта в контроллер анимации.
3.10 При запуске сцены анимация в вашем случае выглядит забагованной. Как вы считаете, почему это происходит? Дайте развернутый ответ. 3.11 Создадим скрипт файл RagdollControl.cs, который будет отключать анимацию и включать механику тряпичной куклы. Описание скрипта: - Скрипт RagdollControl.cs навешивается на персонажа. Скрипт будет содержать две переменные: - Animator для управления анимацией - Массив Rigidbodies, который будет отключаться - Когда скрипт будет написан и подключен, в поле переменной Animator подключается Animator в пределах поля Inspector. - Массив All Rigidbodies нужно заполнить всеми rigid bodies модели: чтобы это сделать удобно нужно нажать замок на инспекторе персонажа. - В окне иерархии выделить все внутренности персонажа (через shift) и перетащить на массив в инспекторе. - Так будут добавлены все rigidbodies этого персонажа. Содержание скрипта, отключающего анимацию показано ниже:
3.12 Что произойдет, если не все Rigidbody тряпичной куклы будут отключены? Дайте развернутый ответ.
3.13 Напишите развернутый вывод по проделанной работе. Как знания свойств компонентов Collider помогут в создании интерактивных приложений, игр и симуляторов?
СКАЧАТЬ
|
| |
|
|