«Juice», или почему ваш выстрел ощущается глухим
Есть два вида выстрелов в играх. В одних ты нажимаешь ЛКМ и чувствуешь: случилось что-то. В других — нажал, цифра улетела, идём дальше. Разница между ними не в графике и не в бюджете. Разница — в «соке»: английском juice, слое обратной связи, который превращает механику в ощущение.
Анатомия одного попадания
Хороший hit состоит из шести событий, уложенных в ~300 миллисекунд:
- Вспышка/частицы (0 мс) — глаз игрока должен увидеть, что снаряд долетел.
- Hit-stop (0–60 мс) — обе модели на доли кадра замирают. Мгновенная пауза говорит мозгу: «столкновение!». В файтингах это 8–12 кадров, в шутерах — 2–4.
- Тряска камеры (10–80 мс) — затухающий импульс. Правило: тряска пропорциональна урону, и никогда не трясите камеру на событиях, которые игрок не совершал — иначе обесценится всё остальное.
- Звук удара (20–100 мс) — с лёгким запаздыванием относительно визуала: так работает в жизни, и «в идеальной синхронности» мозг считывает как искусственность.
- Числа/индикаторы (50–150 мс) — урон всплывает, но не загораживает прицел.
- Реакция цели (100–300 мс) — отшагивание, мигание, оседание. Цель без реакции = манекен; цель, которая всегда падает одинаково = метроном, тоже смерть.
Закон убывающей сочности
Первые три слоя (частицы, тряска, звук) дают 90% ощущения. Остальное — полировка. А вот перебор: если тряска дергает камеру на каждый шаг, игрок выключит её в настройках — и выключит половину вашей обратной связи. Сок — приправа, не суп. Эталон проверки: запись геймплея без звука и без тряски. Если по одной картинке понятно, что происходит и что получилось — сок распределён верно.
Бесплатные соки, о которых забывают
- Анимация отдачи оружия — даже 2 кадра отката затвора делают выстрел «дороже».
- Звук промаха — свист снаряда рядом с целью учит и наказывает, не требуя UI.
- Материальные удары — попадание в металл, стекло, мясо звучит и выглядит по-разному. Три материала в игре дают ощущение глубины, которого не купите ни одним скином.
- Пауза перед смертью цели — 200 мс «оцепенения» перед ragdoll превращают добивание в событие.
Что я сделал со своим прототипом
Добавил hit-stop 3 кадра, три звука материалов и затухающую тряску с амплитудой от урона. Субъективная «приятность» по отзывам тестеров выросла сильнее, чем после недели возни с балансом. Мораль: баланс делает игру справедливой, а сок — хотелкой. Люди возвращаются не в справедливую, а в приятную.
Комментарии (3)
Hit-stop — это зло, которым никто не пользуется в инди. У меня после добавления 3 кадров даже тестеры заметили: «удары стали весить». Слово «весить» в контексте без звука, идеально.
Про запаздывание звука относительно картинки — это же чистая физика (скорость звука), да? Я всегда думала, что это баг движка, и пыталась синхронизировать :)
Лиза, да, для ближнего боя это 5–20 мс, но мозг их считывает. На больших дистанциях в шутерах задержку делают заметной намеренно — и это отдельный источник «киношности».
Форма для гостей комментариев пока не принимается — писать можно автору (expeot@outlook.com) или через владельца блога. Все записи выше настоящие, никто их не модерирует молча.