
Catlantean 3D — это хобби-проект, который я неспешно пишу в своё свободное время уже больше года. В следующем году я планирую выпустить его в Steam.

Catlantean 3D — это хобби-проект, который я неспешно пишу в своё свободное время уже больше года. В следующем году я планирую выпустить его в Steam.
Игры FPS (first-person shooter, шутер от первого лица) стали неотъемлемой частью видеоигровой индустрии ещё с момента появления в 1992 году популярнейшей Wolfenstein 3D. С тех пор жанр эволюционировал: улучшалась графика, увеличивались бюджеты на разработку, развивалась экосистема киберспорта. Но что насчёт их фундамента — механики стрельбы? Как проходило развитие на этом фронте? Почему в некоторых играх оружие кажется реальными, а в других похоже на игрушки?
В предыдущую эпоху многие игры для рендеринга 3D-сцен в 2D-изображения использовали технику под названием raycasting («бросание лучей»). Raycasting позволяет движку определять первый объект, с которым пересечётся луч. Но потом разработчики задались вопросом: «Что, если выпустить луч из ствола оружия, чтобы имитировать пулю?» Благодаря этой идее родился hitscan («сканирование попадания»).

Пример raycasting
В большинстве реализаций оружия с hitscan при выстреле игрока физический движок выполняет следующие операции:
Если движок определил, что объект находится на линии огня, то он сообщит ему об этом, сказав, что в него «попала» пуля. Затем цель может выполнить все вычисления, необходимые для регистрации повреждений.Читать полностью »

Я с удовольствием погрузился в изучение исходного кода Quake World и изложил в статье всё, что я понял. Надеюсь, это поможет желающим разобраться. Эта статья разделена на четыре части:

Недавно я вместе с дизайнерами Майком Баркли (Mike Barclay) и Сэмом Хауэлсом (Sam Howels) выступал на GDC Europe 2016 с докладом «Создание конфликта: дизайн боя для экшн-игр уровня AAA». Сам доклад доступен только для участников GDC Vault, так что я решил поделиться своей частью в статье.
Я рассмотрю наш подход к геометрии уровня в связи с тем, как окружение передаёт его сложность для игрока. Мы знаем, что стандартным и самым простым способом изменения сложности является добавление и сочетание различных типов врагов. Это изменения на макроуровне: чем больше, тем сложнее, и это заметно для игрока. Но как насчёт микроувеличения сложности вместо крупных изменений? Как можно сбалансировать сложность, не полагаясь на количество противников или типы персонажей? К тому, же иногда нарратив может накладывать ограничения на определённые типы персонажей.
Читать полностью »