Здорова! Как и обещал, двухнедельный девлог:
1. Тотальная победа над отдачей. Но с нюансами, конечно. Если стреляем от бедра, то пули летят в центр, отдача процедурная — чисто под визуал. Когда стрельба прицельная, то процедурка работает и как визуал, и как направление патрона, так как стрельба уже не в центр экрана, а из ствола. Плюс в обоих режимах есть рандомный коэффициент под стрельбу от бедра и отдельно. Короче, параметров для попадания масса. Отдача очень похожа на таковую из MW 19.
2. Процедурное прицеливание. Так как стволов много, да ещё и с разными прицелами в виде аттачей, решено было делать процедурку — ибо анимаций не напасёшься. Камеру двигать не хотелось (у нас тут ААА‑проект). Положение прицела вычисляется по сокетам. И это быстро! И ни одной анимации прицеливания! Это ещё дало возможность делать разную скорость прицеливания для разных стволов!
3. Пока крутил кучу анимаций, решил добить так называемый weapon sway. Мне вообще не очень нравилось, как двигалась рука с оружием. В первой версии WS я просто добавил задержку на поворот контроллера. В общем, что тут было сделано:
3.1. Откорректировал кривые.
3.2. Добавил новую ось поворота.
3.3. Появились условия, корректирующие это движение, — например, прицеливание, стрельба, скорость движения.
3.4. Теперь рука не только поворачивается, но и смещается по оси X.
3.5. Мини‑фича: если долго не целился, не стрелял или рука не направлена на врага, то персонаж чуть опускает руку, чтобы не держать её статично перед собой.
3.6. В слайде персонаж наклоняет оружие и смещает, как бы целясь, но не полностью.
4. Аттачи:
4.1. Настроил зум у прицелов (выпилил прицел через дабл‑рендер, ибо много гемора).
4.2. Во имя иммерсивности добавил счётчик патронов в виде доп. аттача. Когда мало патронов, горит «Reload» на экранчике (потом надо будет сделать ещё пару вариаций). Стандартный UI с патронами и здоровьем тоже будет, но так не хочется. Возможно, что‑нибудь придумаю, чтобы была комбинация.
5. Оружие:
5.1. Добавил ШВ, чтобы тестировать всё, что выше, не только с СМГ, дробовиком и пистолетом.
5.2. Добавил мини‑логику для выстрела орудий (теперь у СМГ «бегает» затвор).
6. Мувмент:
6.1. Переделал логику скорости бега. Это позволило как раз менять скорость в зависимости от типа оружия и устранило кучу багов.
6.2. Устранил баги в подкате.
6.3. Начал переделывать паркур. Ранее можно было залезать только на определённые виды препятствий, проверяя их через коллизию Obstacle (так было в уроке MakeYourGame). Но это вызывало кучу странных моментов, плюс я мог тупо забыть поставить нужную коллизию. Теперь через кучку трейсов проверка идёт автоматически, и залезать можно на большее количество штук. Добавил микропроверки, чтобы можно было залезать, например, в вентиляцию и сразу сесть автоматически (плюс правки в виде невозможности прыгнуть или встать, если над головой мало пространства).
7. Фишечки:
7.1. Добавил пинок помимо удара прикладом.
7.2. Добавил добивание, если у врага мало здоровья. Выглядит эффектно.
Post #141
319