20/2/2020

BLOG DO DESENVOLVEDOR: EXPLOSÕES E ESTILHAÇOS NA Y5S1

O que acontece quando algo explode em Rainbow Six Siege? Quais fatores afetam o cálculo do dano da explosão? Como tudo isso funciona?

As explosões exercem um papel essencial em Rainbow Six Siege. Não é como se elas apenas fizessem "booom" - elas abrem defesas, criam caminhos, fornecem informações e, algumas vezes, ajudam a trazer a vitória. Neste artigo, vamos abordar o funcionamento das explosões e como queremos que evoluam.

A anatomia de uma explosão

A destruição é única em Rainbow Six Siege, e as explosões nunca acontecem duas vezes da mesma forma.

O dano e a destruição resultantes de uma explosão são calculados em questão de milissegundos. Os jogadores recebem informações visuais e sonoras e sofrem dano se estiverem no raio da explosão. Para tornar tudo isso possível, nosso motor de explosão realiza vários passos.

O raio e a forma da explosão

Cada tipo de explosão é definida por diversos pontos de dados; isso determina a forma da explosão e o raio de efeito. As formas de explosão variam conforme o tipo de explosivo: uma granada frag é radial, enquanto uma claymore é oblonga.

Quando ocorre uma explosão, o jogo pega sua forma e envia uma solicitação a nosso motor de física. Em seguida, usando a origem da detonação e a forma da explosão, a solicitação volta com uma lista de elementos (agentes e objetos) presentes no raio de efeito. Esta é nossa lista de elementos potenciais a serem afetados pela explosão.

[R6S] Explosões: Área de explosão em R6 - Animação

*A barricada e o Agente dentro da esfera são identificados como elementos que a explosão pode afetar.*

Definindo quem ou o que recebe um impacto

Com a lista de elementos potenciais dentro da área de explosão, nosso motor de física executa raycasts (raios de câmara). Estes raios são linhas exploratórias que viajam para fora a partir do epicentro em direção a qualquer elemento e seus pontos de solicitação dentro do raio da explosão.

Cada elemento tem diversos pontos de solicitação individuais usados para determinar se o dano é recebido. Ao invés de apontar para os ossos no esqueleto modelo ou estabelecer um único ponto alvo para um Agente, estes pontos de solicitação nos permitem decidir se um Agente deve ser vulnerável ao dano da explosão, ao mesmo tempo que otimizamos o desempenho e minimizamos a latência.

Os raycasts miram esses pontos de solicitação baseando-se em parâmetros específicos e criam pontos de dados para calcular depois o dano final. Por exemplo, os raios se dirigem aos pontos da cápsula física de um Agente que estão mais próximos à origem da explosão, assim como quatro pontos de seu volume limitante (a forma que abrange a imagem desse Agente), enquanto os raios se dirigem aos pontos de solicitação de uma parede usando regras diferentes.

[R6S] Explosões: Raycast em R6 - Animação

*Os resultados dos raycasts determinam se podemos ou não afetar o elemento com a explosão.*

Antes que o dano seja calculado, outra variável entra em jogo. Os objetos do cenário mudam elementos da forma da explosão e poderiam evitar que você sofresse dano.

Salvos pelos metadados

Assim que os raycasts tenham concluído sua jornada rumo aos elementos afetados pela explosão, os dados recebidos determinam o resultado da explosão.
Em Siege, há objetos que podem bloquear o dano da explosão. Todos os objetos contêm metadados que definem o que são e como interagem com outros elementos do jogo. Alguns objetos têm metadados que bloqueiam o dano da explosão, como barricadas de metal, os muros do castelo, escudos extensíveis etc.

Se o trajeto de um raycast colidir com um objeto cujos metadados bloqueiam o dano explosivo, antes de chegar aos pontos de solicitação de um Agente no raio da explosão, este Agente está a salvo. Se o raio não atingir nada, ou objetos sem metadados para bloquear dano, o Agente sofre danos. Isso também se aplica a gadgets com efeito de área de explosão, como o EMP de Thatcher.

[R6S] Explosões: Resultados em R6 - Animação

*Objetos com metadados que bloqueiam dano explosivo vs objetos sem esses metadados dentro da área do Realblast.*

Por fim, com todos esses pontos de dados, o dano da explosão é calculado e executado.

Calculando o dano recebido

Ao calcular quanto dano se produz, há uma diminuição conforme o jogador se afasta do epicentro da explosão. Cada explosão tem diferentes curvas de dano, com uma maior concentração de dano geralmente na origem. Usando os resultados dos raycasts, o dano final é determinado interpolando a curva de dano com relação à sua distância da explosão.

Destruição vs Dano

As explosões de Siege são executadas por nosso motor de destruição, Realblast. É um sistema de destruição por procedimentos essencial a promover os elementos únicos e dinâmicos da jogabilidade que você conhece e adora em Siege. Confira um painel com Julien L’Heureux na GDC sobre o Realblast clicando aqui.

As explosões geralmente têm dois efeitos - destruição e dano. O dano afeta os jogadores, e a destruição afeta o ambiente. Cada um varia em alcance e forma, a depender da explosão.

[R6S] Explosões: Dano vs destruição em R6 - Animação

*Alcance da destruição (Realblast) vs alcance do dano.*

Atualmente, depois da exploração inicial dos raios e do retorno dos dados das solicitações, determinamos o alcance do dano e os efeitos da destruição. Se os raios se depararem com um bloqueador, o alcance do dano se limita ao raio do Realblast.

Porém, a solução atual para os efeitos e alcances das explosões não é ideal, já que em alguns casos o efeito da explosão é pouco realista. Por exemplo, com o atual sistema, uma C4 a céu aberto é muito mais letal do que quando usada dentro de uma edificação, devido às paredes que podem limitar o raio do dano.

Mudanças na fragmentação na Y5S1

Com a chegada da Y5S1, teremos melhorias sutis mas importantes nas explosões: agora, o dano será mais realista e transparente. Traremos um conceito de fragmentação nas explosões de Rainbow Six Siege. Isso quer dizer que objetos destrutíveis não mais limitarão o alcance dos danos das explosões, tratando, assim, do problema de destruição vs alcance do dano descrito acima.

A fragmentação permitirá que o dano de explosões seja mais realista, já que o dano aplicado ao jogador é reduzido conforme o número de objetos destrutíveis que os raycasts acertam pelo caminho. As explosões também serão mais transparentes, já que os buracos dos estilhaços darão muito mais informações visuais quanto à origem da explosão.

[R6S] Explosões: Estilhaços - Animação

*Mudanças nas fragmentações.*

RESUMO

A arte da destruição em Rainbow Six Siege é uma experiência única que promove reações e resultados realísticos. A adição de dano pelos estilhaços será uma melhoria em direção a efeitos e danos de explosão mais realistas, além de tornar o feedback das explosões muito mais visual e transparente.

Para saber mais sobre explosões e fragmentações, confira as primeiras impressões e a discussão exclusivas no podcast da Bomba Lógica clicando:

Visite Outros Canais de Rainbow Six Siege

facebook icontwitter iconyoutube icontwitch icon