Что происходит, когда в Rainbow Six Siege происходит взрыв? Какие факторы влияют на расчет ущерба от взрыва? Как все это работает?
Взрывы играют главную роль в игровом процессе Rainbow Six Siege. Они не просто бум — они открывают оборону, создают пути, предоставляют информацию и полезности, а иногда они помогают вам получить W. В этом блоге разработчиков мы немного рассмотрим, как работают взрывы, и как мы их хотим развиваться.
Разрушение в Rainbow Six Siege уникально, и взрывы никогда не происходят одинаково дважды.
Ущерб и разрушение, которые происходят после взрыва, рассчитываются за считанные миллисекунды. Игроки получат визуальные и звуковые сигналы, а также получат урон, если попадут во взрыв. Чтобы сделать все это возможным, наш взрывной двигатель должен пройти несколько этапов.
Каждый тип взрыва определяется несколькими точками данных, и это определяет форму взрыва и радиус его воздействия. Формы взрыва варьируются в зависимости от типа взрывчатого вещества — осколочная граната является радиальной, а глина — продолговатой.
Когда происходит взрыв, игра принимает форму взрыва и отправляет запрос нашему физическому движку. Затем, используя источник детонации и форму взрыва, запрос возвращается со списком объектов (операторов и объектов), присутствующих в радиусе взрыва. Этот список — наш список потенциальных объектов, которые будут затронуты взрывом.
Со списком потенциальных объектов изнутри AOE, наш физический движок выполняет лучевые трансляции. Эти лучевые трансляции представляют собой исследовательские линии, которые проходят от эпицентра к любым объектам и их точкам запроса в радиусе взрыва.
У каждого объекта есть много отдельных точек запроса, которые используются, чтобы определить, был ли получен ущерб. Вместо нацеливания на кости в каркасе модели или установки произвольной единственной целевой точки для оператора, эти точки запроса позволяют нам лучше решить, должен ли оператор быть уязвимым к урону от взрыва, при этом оптимизируя производительность и минимизируя задержку.
Raycast направляет эти точки запроса на основе определенных параметров и создает точки данных для последующего расчета ущерба. Например, радиопередачи будут нацелены на самые близкие точки в физической капсуле Оператора к началу взрыва, а также на 4 точки на их ограничивающем объеме (форма, которая охватывает визуальные элементы Оператора), в то время как радиопередачи будут нацеливаться на точки запроса стены, используя другой набор правил.
Прежде чем рассчитать урон, в игру вступает еще одна переменная. Объекты окружающей среды изменяют элементы формы взрыва и потенциально спасают вас от повреждений.
После того, как радиопередачи завершили свое путешествие к объектам, пострадавшим от взрыва, возвращенные данные определяют исход взрыва. В осаде есть объекты, которые могут блокировать урон от взрыва. Все объекты содержат метаданные, которые определяют, что это такое и как оно взаимодействует с другими элементами в игре. Некоторые объекты содержат метаданные, которые блокируют ущерб от взрыватакие как металлические баррикады, стены замка, развертываемые щиты и т. д.
Если путь радиопередачи сталкивается с объектом, имеющим метаданные для блокирования взрывного повреждения, до достижения точки запроса на операторе в радиусе взрыва, вы в безопасности. Если лучевая трансляция ничего не поражает или объекты без метаданных блокируют урон, вы получаете урон. Это также относится к гаджетам с взрывным эффектом AOE, таким как EMP Тэтчер.
Наконец, со всеми этими точками данных, ущерб от взрыва рассчитывается и выполняется.
При расчете выходного урона урон уменьшается по мере удаления от эпицентра взрыва. Разные взрывы имеют разные кривые урона, с наибольшим выходом урона обычно в начале координат. Используя результаты радиопередач, окончательный результат повреждения определяется путем интерполяции кривой ущерба относительно расстояния до взрыва.
Взрывы в осаде выполняются нашим двигателем разрушения, Realblast. Это процедурно созданная система уничтожения, которая является основой для поддержки уникальных и динамичных элементов игрового процесса, которые вы знаете и любите в Siege. Вы можете посмотреть панель GDC Жюльена Леро на Realblast Вот,
Взрывы обычно имеют два эффекта — разрушение и повреждение. Ущерб наносит урон игрокам, а разрушение — то, что вызывает любое разрушение окружающей среды. Каждый может иметь различные диапазоны и формы в зависимости от взрыва.
В настоящее время в осаде, после того, как начальное исследование и передача запросов возвращены, мы определяем диапазон эффектов повреждения и разрушения. Если радиопередача наталкивается на блокиратор, диапазон урона ограничен радиусом реального взрыва.
Однако текущее решение для взрывных воздействий и дальностей не является идеальным, поскольку в некоторых случаях оно может сделать результат взрыва нереальным. Например, при существующей системе взрыва, C4 на открытом воздухе гораздо более смертоносен, чем при использовании внутри здания из-за стен, которые могут ограничивать радиус повреждения.
С Y5S1 мы сделаем несколько тонких, но важных улучшений для взрывов, которые сделают урон от взрыва больше реалистический и прозрачный, Мы будем вводить концепцию Шрапнели во взрывы в Rainbow Six Siege. Это означает, что разрушаемые объекты больше не будут ограничивать диапазон повреждений от взрыва, тем самым решая проблему разрушения и диапазона повреждений, описанную выше.
Шрапнель сделает урон от взрыва более реалистичным, так как урон, наносимый игроку, будет уменьшаться в зависимости от количества разрушаемых объектов, которые лучи попали по пути. Взрывы также будут более прозрачными, так как шрапнельные отверстия обеспечат намного больше визуальной обратной связи о направлении, из которого произошел ущерб от взрыва.
Искусство разрушения в Rainbow Six Siege — это уникальный опыт, который способствует реалистичным результатам и реакциям. Добавление урона от шрапнели будет улучшением в сторону более реалистичных эффектов взрыва и урона, а также сделает визуальную обратную связь от взрывов более визуальной и прозрачной.
Чтобы узнать больше о взрывах и осколках, посмотрите эксклюзивный первый взгляд на Logic Bomb Podcast и обсудите изменения: