/dev: Invocando o Dragão do Mundial
Transformando o Ninho do Pássaro, de Beijing, em um covil de dragão.
Nosso desejo sempre foi trazer eventos memoráveis e empolgantes ao Mundial todo ano, mas em 2017 queríamos ver se conseguíamos dar um passo além. Então, quando começamos a planejar a cerimônia de abertura das Finais desde ano, montamos uma equipe capaz de fazer o que todos nós, nos nossos momentos mais nerd, sempre quisemos fazer: invocar um dragão.
DANDO VIDA Ao LEAGUE
Uma das nossas prioridades ao planejar os eventos globais é fazer um tributo ao país-sede. Como o Mundial era na China este ano, incluir a cultura chinesa se tornou uma questão importante. Começando em fevereiro de 2017, fomos montando lentamente a cerimônia de abertura deste ano, com um autêntico tocador de violino chinês (erhu), máscaras de Ópera de Pequim moldadas como Campeões de LoL, uma aparição do superastro Jay Chou, e uma apresentação ao vivo de “Legends Never Die”, de Against the Current. Ainda assim, sentíamos que tinha algo faltando: alguma coisa especial que refletisse o tamanho e o escopo do icônico estádio Ninho de Pássaro, de Beijing.
Pensamos em algumas coisas, e chegamos à conclusão de que usar realidade aumentada, a arte de inserir gráficos num ambiente real, seria a melhor escolha. Realidade Aumentada, ou RA, é criada utilizando um controle de câmera na vida real e uma câmera virtual em uma engine de renderização, mesclando simultaneamente ambas as imagens para criar a ilusão de que o irreal é real. RA não é algo novo em transmissões esportivas: diversas formas de RA já foram usadas em eventos esportivos tradicionais e em outros eventos de Esports, como o International de Dota (além dos nossos LCS NA, MSI e Mundial), mas queríamos criar algo que estivesse um passo além de tudo o que tentamos antes.
Ideias iniciais para o uso de RA durante a cerimônia de abertura incluíam Ryze usando magia ao redor do estádio e Ashe disparando flechas para fora da tela de projeção. Mas também tinha anos que fazíamos essa piada interna: “Bora botar um dragão no palco.” Não tínhamos um portal que desse em Runeterra para trazer um dragão de verdade (ainda) e, quando essa piada surgiu, a tecnologia necessária para criar a ilusão de que um dragão estava voando ao redor do estádio ainda não tinha sido desenvolvida (ou custava caro). Porém, em 2017, a tecnologia de RA tinha avançado a um nível que acreditamos ser capaz de dar conta do recado. Montamos uma equipe com alguns dos nossos mais loucos inovadores tecnológicos para responder à pergunta: “A gente consegue fazer um dragão?”
Por mais que a transmissão televisiva de RA tivesse evoluído muito nos últimos anos, ainda não sabíamos se ela seria capaz de lidar com o tamanho e a fidelidade necessária para que o dragão parecesse real. Os nossos principais desafios eram:
- Como fazer um dragão voar no estádio e pousar na beira do Ninho de Pássaro?
- Como projetar sombras realistas do dragão não só no chão, mas nas paredes do próprio estádio?
- Será que conseguimos ajustar a iluminação do show para coincidir com o dia lá fora? Se sim, como?
Como fazemos para cronometrar sua entrada perfeitamente com a performance ao vivo?
SONHANDO COM DragÕES
Queríamos dar vida a uma presença poderosa e fascinante sobre os céus de Beijing, e nenhum monstro do League é mais forte, intimidador e sinistrão do que o Dragão Ancião.
Montamos uma parceria com colegas para criar uma arte toda nova que servisse de base para o modelo e para as animações necessárias para essa nova versão do Dragão Ancião. Levamos em conta muitas possibilidades, mas, quando olhávamos a arte conceitual, o que nos empolgava mesmo eram as ideias que jogavam com o que tinha de épico na fera mais intimidadora do Rift. Uma das coisas mais importantes era garantir que, independentemente do que fizéssemos, os jogadores ainda notassem que aquela coisa que vinha descendo no estádio era o bom e velho Dragão Ancião.
Para acertar em cheio o visual do Dragão Ancião, examinamos cada aspecto do dragão até os mínimos detalhes, da cabeça aos membros e às asas.
Após muitas versões de cada aspecto, conseguimos juntar tudo na arte conceitual final.
Com o conceito final, era hora de iniciar o processo de modelagem. Ao contrário da modelagem de personagens tradicional para animações pré-renderizadas, aqui nós tínhamos que ficar de olho nos detalhes para garantir que não só conseguiríamos criar o dragão, mas também renderizá-lo em tempo real.
O QUE É A RenderiZAÇÃO EM TEMPO REAL?
Renderização em tempo real significa ser capaz de renderizar uma animação tão rápido que parece que ela está sendo gerada ao vivo. Isso é diferente de animações pré-renderizadas, em que pode levar horas para renderizar uma cena de 10 segundos (Toy Story 3, por exemplo, é famoso por ter levado em média sete horas de renderização por quadro). Mesmo que você nunca tenha ouvido falar de renderização em tempo real, a verdade é que você está superfamiliarizado com ela: é como a sua placa de vídeo renderiza jogos.
Na nossa situação, tínhamos que ser capazes de renderizar o dragão voando no estádio em tempo real para mover as nossas câmeras livremente e pegar a cerimônia de abertura inteira de uma vez só. Ou seja, precisávamos ser capazes de acompanhar a contagem de polígonos, ou vértices, que estavam sendo usados para formar o dragão para que ele não bugasse nem desse lag no ar. O que não é muito diferente de acompanhar a contagem de polígonos em modelos do jogo ao projetar um jogo; sempre é um equilíbrio delicado entre qualidade e desempenho.
Aqui vai uma apanhado rápido do processo de modelagem:
Enquanto tudo isso estava rolando, tínhamos uma equipe separada trabalhando na animação do dragão voando no estádio. Analisamos alguns dos nossos dragões favoritos de Game of Thrones, Coração de Dragão, entro outros, para ter uma boa ideia de como um dragão poderia interagir com um ambiente como o Ninho de Pássaro. Como ele voaria? Como ele pousaria? Como ele reagiria com pessoas aos seus pés?
No primeiro animatic conceitual, o Dragão Ancião trazia a Copa do Invocador e a colocava no palco. No fim das contas, abandonamos a ideia de trazer a copa e optamos por fazer um troféu inflável de 16 metros subir no alto enquanto o dragão circundava o local. Fora que a verdadeira Copa do Invocador é pesada demais até para um dragão.
Tentamos fazer o Dragão Ancião pousar em partes diferentes do palco, e talvez ter algum tipo de interação com os artistas, tipo os dançarinos se assustarem ou saírem correndo ou se abaixarem de medo. Mas, no final, acreditamos que, se um dragão de verdade entrasse no seu covil e visse milhares de pessoas lá, ele faria questão de deixar bem claro quem é que manda. Estamos falando do covil do Dragão Ancião, então colocá-lo bem à frente e no centro nos pareceu a única opção.
Quando a animação começou a tomar forma, nos deparamos com outro problema: o dragão era meio grande demais. Basicamente, as asas dele atravessavam as paredes do estádio durante a descida, o que arruinava a ilusão. Também não conseguíamos ver a sombra dele, a qual precisávamos sobrepor na audiência para que a imagem ficasse mas real (basicamente, é isso que faz parecer que o dragão está lançando sua sombra sobre as pessoas no estádio). Pensamos em reduzir o tamanho do dragão, mas foi aí que tentamos fazer o que um verdadeiro dragão faria: Mudamos o curso de voo. Ajustamos a descida para garantir que a sombra ficasse certa e o modelo não entrasse nas paredes do estádio.
Hextec DA VIDA REAL
Depois, listamos o que precisaríamos para deixar a animação fluida e manter a fidelidade que tentamos criar durante a fase do design:
- Garantir que a animação rodasse em tempo real com a mesma qualidade da nossa transmissão, 59,94 fps
- Garantir que o dragão criasse sombras suaves em geometria do tamanho e no escopo do Ninho de Pássaro
- Criar um reflexo 3D para que o dragão parecesse surgir de trás do estádio ao entrar e sair, e atrás dos assentos dos jogadores ao pousar.
- Ser capaz de ajustar a iluminação da cena a qualquer momento, em tempo real, para acomodar o alterações do clima no dia.
- Incluir a habilidade de colorir corretamente o dragão em tempo real para corresponder à exposição e ao contraste das câmeras reais
- Usar duas câmeras com capacidade de tracking enviadas a dois diferentes engines de renderização em tempo real
- Ser capaz de ativar a animação ao mesmo tempo nos dois engines para alternar livremente entre as câmeras
- Ativar a animação em um momento determinado para alinhá-la perfeitamente à música da cerimônia de abertura
- Planejar e ensaiar o suficiente para que os operadores de câmera obtenham imagens perfeitas em um ambiente com tanta coisa acontecendo
Para testar se conseguimos fazer todas essas coisas, juntamos todo o nosso equipamento e invocamos o Dragão Ancião no nosso estacionamento. Eis o teste (desculpem pela lente suja da câmera) que nos deixou tão empolgados:
Quando chegamos ao Ninho de Pássaro, tivemos apenas uma semana para preparar tudo, garantir que as conexões de rede fossem seguras e estáveis para um tracking perfeito, garantir que o áudio do dragão fosse enviado para o lugar certo, verificar se a animação estava funcionando e, mais importante, ver na câmera se o dragão estava bem alinhado ao estádio; tudo isso, além da coas que costuma acompanhar qualquer evento ao vivo de LoL.
Também praticamos com os dançarinos e o dragão umas seis ou sete vezes, e descobrimos que, se a câmera se movesse e a coreografia dos dançarinos não fosse perfeita, o dragão esmagava todo mundo no palco (o que não era ruim para ele, mas pegava mal). Os dançarinos vinham praticando a coreografia há semanas, então qualquer mudança do nosso lado podia acabar com tudo a essa altura.
Decidimos deixar qualquer esmagamento de lado coordenado os movimentos de câmera:
Todas as tomadas que vocês veem são feitas ao vivo por um operador de câmera real. Discutimos a sequência com o dragão inúmeras vezes com os nossos operadores de câmera para garantir que eles soubessem onde eles tinham que começar a gravar, os movimentos exatos que eles precisavam fazer, e quando aproximar a filmagem. Queríamos que as tomadas parecessem imperfeitas para criar a ilusão de que o dragão tivesse pego as câmeras de surpresa.
Eis uma visão de um dos operadores de câmera fazendo uma filmagem do dragão voando por cima do público:
Dez minutos antes da transmissão, percebemos que a posição do reflexo do dragão estava errada (parecia que ele estava pousando dentro da parede, em vez de na beira). Vários podiam ser os motivos por trás disso: até algo tão simples quanto uma mudança de centímetros na base da câmera por conta de vibrações. Minutos antes de começar a transmissão, tivemos que entrar no nosso aplicativo de edição de gráfico em tempo real e mover o dragão para cima. Também aproveitamos esse período para ajustar a cor de acordo com o dia, para que não ficasse nem muito claro nem muito escuro. E então, chegou a hora de fazer o nosso Dragão Ancião voar rumo às Finais.
A surpresa da plateia no estádio quando o dragão pulou do telhado deu um calafrio na nossa espinha. Ler e ouvir as reações dos nosso jogadores sobre o dragão é exatamente o que nos motiva a fazer isso. Nosso objetivo é sempre criar experiências memoráveis que os nossos fãs e jogadores possam levar para casa e compartilhar com os amigos. Enquanto pudermos continuar trabalhando nisso, vamos continuar desenvolvendo e trabalhando nas próximas novidades. Até que nossos experimentos com a nossa cobrinha oriental de estimação produzam um verdadeiro bebê Barão, continuaremos dando o nosso melhor para criar experiências dignas da paixão que vocês depositam na nossa comunidade todos os dias.