- Ревью и рефакторинг кода.
- Потренироваться в использовании кода движка.
- Создать простые инструменты для интеграции в проект.
Изучите дополнительные материалы к лекции в личном кабинете.
Готовые gitignore и clang-format, настроенные под наш проект.
Cлабая сторона Blueprints — расчёт математических операций. В лекции мы заставили наш объект двигаться по закону синуса вверх и вниз. Переведите наши математические формулы в С++ в следующей последовательности.
- Удалите всю логику и переменные, связанные с проведёнными ранее операциями, из нашего блюпринтового наследника.
- Объявите новый метод в хедер файле С++ — SinMovement().
- Функция должна быть доступна для вызова в Blueprints.
- Объявите необходимые переменные в хедер файле С++ — Amplitude, Frequency, InitialLocation.
- Переменные Amplitude, Frequency должны быть доступны для редактирования у объектов на сцене и проинициализированы по умолчанию необходимыми вам значениями.
- Проинициализируйте переменную InitialLocation в функции BeginPlay().
- Реализуйте математические расчёты в CppBaseActor.срр файле в методе SinMovement().
Небольшая подсказка
Чтобы обратиться к расчёту синуса в коде, нужно воспользоваться специальной структурой, которая называется FMath. Она хранит различные математические и тригонометрические выражения.
- Скомпилируйте свой код. Запустите проект и вызовите свою функцию в Event Graph в событии Event Tick.
Вы подготовили простейший инструмент, который может использовать любой желающий (геймдизайнеры, художники и т. д.), даже не знакомый с языком С++. Проверьте, что переменные Amplitude, Frequency доступны к редактированию у объектов A_CppBase на уровне.
Чтобы сдать домашнее задание, пришлите в личном кабинете удалённый репозиторий со своим проектом, в соответствии с разделом урока «Подключения проекта к системе контроля версий».
- В личном кабинете прикреплена ссылка на удалённый репозиторий со своим проектом для задания 1.