Определение боевой системы 0:55 Создание боевой системы с двумя режимами: вооружённый и невооружённый.
Создание переменной для режимов 1:17 Создание переменной булевого типа «баттл мод» для переключения режимов. Настройка клавиши «два» для изменения значения переменной.
Тестирование системы 2:51 Добавление отображения состояния переменной через событие «эвент-тик». Проверка работы системы в игре: переключение режима при нажатии клавиши.
Добавление оружия 4:57 Поиск и добавление 3D-модели меча из бесплатного пакета «Инфинити Блейд Файер Ленс». Добавление меча как компонента в персонажа.
Создание сокетов для меча 6:52 Добавление сокетов за спиной и в руке персонажа для размещения меча. Переименование сокетов: «сейф мод сокет» и «баттл мод сворд сокет».
Создание сцен-компонентов 11:18 Создание сцен-компонентов «сейф мод сакет» и «баттл мод сакет». Дублирование компонентов и их перетаскивание внутрь компонента «меш».
Настройка положения меча 12:52 Настройка координат сокета, а не самого меча. Соединение сцен-компонентов с сокетами через вкладку «дтс».
Завершение настройки 13:46 Добавление меча на спину персонажа. Финальная проверка соединения компонентов и сокетов.
Настройка положения меча 14:29 Добавляем меч за спиной персонажа. Настраиваем координаты: X = -20.9, Y = -6.3, Z = -22.7, Rotation = -90,0, -20. Перетаскиваем меч во второй сокет для настройки положения в руке персонажа.
Настройка меча в руке 16:48 Сбиваем координаты по умолчанию и добавляем меч в руку персонажа. Вводим координаты: X = -22.2, Y = 5.1, Z = 10, Rotation = 0. Проверяем положение меча в руке.
Логика одевания меча 19:33 Используем функцию `attachComponent` для управления мечом. При включении боевого режима меч добавляется в сокет `battleModeSwordSocket`. При выключении боевого режима меч возвращается в сокет `safeModeSwordSocket`.
Тестирование логики 22:47 Нажимаем «Play» и проверяем работу меча. Исправляем координаты при необходимости. Убеждаемся, что меч правильно появляется и исчезает при переключении режимов.
Добавление звуков 24:30 Создаём папку для звуков меча. Перетаскиваем звуки в папку. Создаём Q-файлы для звуков доставания и убирания меча.
Настройка звуков в коде 26:15 Вызываем функцию `playSoundAtLocation` для проигрывания звуков. Добавляем звуки в функции включения и выключения боевого режима. Тестируем звуки в игре.
Оптимизация кода 28:18 Коллапсируем функции для удобства работы. Переходим к настройке анимационного blueprint для изменения стойки персонажа.
Создание переменной «Баттл Мод» 29:09 Переход в компонент «Мэш» и анимационный «Блуприн». Добавление переменной «Баттл Мод» в «Эвент-граф». Запись переменной «Баттл Мод» для управления анимацией.
Использование функции «Гет Пау Онер» 30:08 Вызов функции «Гет Пау Онер» после каста на «Торт Персон Чаректора». Запись переменной «Гет Баттл Мод» в анимационном «Блуприн». Проверка состояния переменной «Баттл Мод» для переключения анимаций.
Скачивание анимаций с сайта Mixamo 31:51 Поиск и скачивание анимаций «Айдол», «Волк» и «Ран» для персонажа. Настройка параметров анимаций: увеличение «Чартер Арм Спейс» до 70. Импорт анимаций в папку с анимациями персонажа.
Создание бленд-спейса 35:32 Создание бленд-спейса «Баттл Айдол Ран 1D». Настройка значений скорости от 0 до 600. Добавление анимаций «Айдол» на нулевую скорость, «Ран» на максимальную скорость и «Волк» на скорость 200. Настройка времени интерполяции «Интерплейшн-тайм» на 0.2.
Тестирование анимации 39:03 Подключение бленд-спейса к «Тру Позу». Проверка работы анимации при включении «Баттл Мода». Настройка разрешения для улучшения FPS.
Добавление звуков шагов 41:35 Добавление звуков шагов «Лефт Степ» и «Райт Степ» в анимации «Волк» и «Ран». Проверка воспроизведения звуков в боевом и не боевом режимах. Корректировка времени перехода между анимациями для более плавного звучания.
Настройка системы сохранения персонажа 44:23 Создание системы сохранения персонажа. Добавление сохранения переменной «баттл мод» для сохранения боевого режима. Реализация сохранения в Level Blueprint.
Добавление переменной в объект сохранения 45:19 Открытие Level Blueprint и добавление функции сохранения переменной. Поиск объекта «Сейф Гейм Б.П.» и добавление переменной «баттл мод». Проверка существующих переменных, сохраняемых в объекте.
Сохранение переменной «баттл мод» 46:19 Запись переменной «баттл мод» в файл сохранения. Использование функций «гет плеер чарактер» и «сет баттл мод» для сохранения переменной.
Загрузка переменной «баттл мод» 48:08 Добавление функции загрузки переменной «баттл мод». Вызов функций «гет баттл мод» и «сет баттл мод» для загрузки переменной.
Проверка и настройка боевого режима 50:01 Проверка состояния боевого режима при входе в игру. Настройка поведения персонажа в зависимости от состояния боевого режима. Создание функций «тейк сворд» и «антейк сворд» для управления мечом.
Тестирование системы сохранения 53:01 Тестирование автоматического сохранения игрового состояния. Подтверждение корректной работы системы сохранения.
Добавление анимации доставания меча 54:01 Поиск анимации на сайте Mixamo для доставания меча. Скачивание и добавление анимации в проект. Увеличение скорости анимации в три раза.
Создание анимационного монтажа 56:38 Создание анимационного монтажа для соединения нескольких анимаций. Переименование монтажа для удобства использования. Добавление монтажа в анимационный Blueprint.
Добавление слота для анимации 57:45 В анимационном блупринте добавляем слот перед финальной позой. Вставляем функцию «плей аним монтач» для проигрывания дополнительных анимаций.
Настройка дефолт слота 58:39 Вызываем дефолт слот для анимации между «стоит машиной» и финальной позой. Из эвент-графа персонажа вызываем монтаж «эквипс».
Добавление задержки для анимации 59:37 Добавляем задержку 0,4 секунды для добавления меча. Для снятия оружия устанавливаем задержку 0,2 секунды.
Проблема с анимацией ходьбы 1:01:32 При ходьбе анимация доставания меча не проигрывается. Необходимо, чтобы анимация доставания меча проигрывалась только выше пояса, а ниже пояса персонаж должен продолжать ходить.
Решение проблемы с анимацией 1:02:31 Добавляем функцию «лейт блед пер-бон» для определения кости, выше которой будет проигрываться одна анимация, а ниже — другая. Сохраняем положение «стоит машины» с помощью «кешит полос».
Настройка кости для анимации 1:05:19 Находим кость «спайн» в скелете персонажа. Прописываем кость в функции «лейт блед пер-бон».
Тестирование с новой настройкой 1:06:17 Тестируем анимацию в игре: персонаж продолжает идти, доставая и пряча меч. Подтверждаем, что персонаж может идти и параллельно прятать или доставать меч.
Заключение 1:09:12 Подводим итоги урока, призываем ставить лайки, подписываться на канал и задавать вопросы в комментариях.