Для удобства и лучшей наглядности проект был поделен на две части. ProceduralAnimation – содержит в себе все из обозначенных анимаций, кроме анимации отдачи. Она есть в данном проекте, но финальное решение по отдачи находится в папке Procedural Recoil. Для того, чтобы запустить и ознакомиться с анимациями, достаточно запустить начальную сцену и нажимать на клавиши 1, 2 и 3. На данные клавиши назначены уже готовые примеры оружия, так что их можно сразу же опробовать. Для того, чтобы добавить собственное оружие, необходимо перейти в Content/Main, там лежат 3 конфига, любой из них можно менять, настроить подходящее для себя оружия. Самые важные параметры в данном конфиге:
- Weapon Mesh - нужен для выбора самого оружия
- GrabPoint 1 и 2 - два места крепления оружия
- AdsNear и AdsFar - настройка сокетов для прицеливания (мушка и целик)
- IsDirectErgo - ставим true если не хотим высчитывать эргономику используя формулу предаставленую в отчете.
- Ergo - если IsDirectErgo true, то просто ставим кастомное значение эргономики.
- Иначе меняем параметры используя описания и формулы из отчета.
Второй проект содержит в себе исключительно отдачу, и уже имеет некоторые примеры в проекте. Чтоб создать собственный пример, нужно дублировать любой из имеющихся уже контрол ригов в папке Content/FirstPerson/Main/CRigs. Далее поменять ему скилет на тот, который хотите использовать, а так же поменять сам меш оружию. В переменных все так, как описано в отчете:
- Если хотите использовать угол подъема на прямую ставим галочку JustUseAngle на true.
- YAngle - и есть угол который стоит выставить в случае не желания формы.
- HasShellEjector - ставим true если хотим сделать подвижную затворную раму.
- EjectorSlotName - в случае если HasShellEjector true.
- Все остальные параметры исключительно из отчёта для более точного нахождения угла подъема на основе формул.