Categorias

Como o Google Cloud criou a ilusão de Homem-Aranha: Longe de Casa

Homem-Aranha: Longe de Casa é um filme sobre aparências e ilusões e sobre como não devemos nos deixar enganar pelas aparências. Em sua produção, é uma obra meta-linguística, a partir do momento que utiliza da magia do cinema para criar com verossimilhança uma série de sequências que não são reais, enganando personagens e espectadores, elevando ao ápice da tecnologia a arte dos efeitos especiais.

Para a Sony, o investimento no que havia de melhor disponível no mercado rendeu bons frutos: a segunda aventura cinematográfica do Homem-Aranha com o ator Tom Holland se tornou o filme de maior bilheteria do estúdio, batendo o recorde anterior de  007 – Operação Skyfall. A obra também serviu para consolidar o personagem na mente do público e foi o pontapé inicial para Sony e Disney sentarem novamente e renegociarem o acordo de uso do herói no Universo Cinematográfico da Marvel.

Entretanto, nada disso é real. É claro que um ator de 23 anos não pode interpretar um aluno do Ensino Médio, muito menos se balançar entre os prédios e enfrentar criaturas elementais de outra dimensão, mas é isso que a gente vê nas telas. Essa ilusão só é possível graças ao uso do poder de processamento do Google Cloud na renderização de efeitos especiais nunca antes vistos no cinema, que ajudam a construir uma hiperrealidade que atiça nossos sentidos por mais de duas horas.

Encarregada de entregar essa ilusão, a empresa Luma Pictures abriu mão de renderizar as imagens em suas próprias premissas e colocou a tarefa na nuvem, mais especificamente no Google Cloud. De acordo com Michael Perdew, produtor de VFX do estúdio, a empresa relutou em adotar essa solução. Simulações costumam consumir bastante processamento, banda e espaço em disco para serem renderizadas e abordagem tradicional é realizar essa tarefa localmente, com um parque de computadores. O principal entrave para viabilizar uma estratégia de nuvem é justamente sincronizar terabytes de dados em cache das unidades locais com a estrutura montada remotamente, um processo que é dependente da largura de banda disponível.

Ele explica também que faltava desenvolver um sistema de arquivos baseado em nuvem que desse conta do recado, que suportasse os clusters colossais de computação que seriam necessários para a renderização.

Entretanto, apesar dos obstáculos de levar essa tarefa para a nuvem, era evidente para a Luma Pictures que o contrário seria ainda mais complicado de realizar. “Nós tínhamos que achar uma forma de renderizar mais do que nosso parque local poderia lidar”. Para superar seus limites e trabalhar com o Google Cloud, o time de desenvolvedores projetou um fluxo de trabalho que permitisse agilizar essa integração com a nuvem.

O resultado impressionante a gente viu nas telas, mas o que rolava nos bastidores também era impressionante Através do Google Cloud, a Luma Pictures conseguiu acesso a 96 núcleos de processamento e 128 GB de RAM, com uma performance de alto impacto com o sistema de arquivos ZFS e picos de 15.000 vCPUs simultâneas. Para efeito de comparação, frames do Elemental Ciclone visualizado no filme podiam ser renderizados em apenas 90 minutos, uma fração das 7 a 8 horas que o processo levaria se tivesse sido efetuado localmente. O ganho de performance compensou e muito o tempo que passou a ser gasto sincronizando dados pela internet.

O fluxo de trabalho da Luma Pictures desenvolvido especificamente para esse projeto permitiu que a empresa trabalhasse 24 horas por dia, em diferentes escritórios espalhados em pontos opostos do fuso horário. Com os dados sincronizados pela nuvem, era fácil dividir as tarefas em blocos de produção. Desta forma, quando o time de efeitos especiais em Los Angeles completava uma etapa, já era o momento para o time na Austrália prosseguir do mesmo ponto, fazendo ajustes nas animações e nas simulações e devolvendo o material ajustado para a nuvem, para recomeçar o fluxo no dia seguinte em Los Angeles.

Com essa combinação de processamento em alta escala e dia de trabalho de 24 horas, a empresa conseguiu cumprir seu cronograma, entregando 330 cenas de Homem-Aranha: Longe de Casa. Esse trabalho se manifestou nos Elementais Ciclone e Homem de Lava, mas também estava presente no traje de Macaco Noturno utilizado por Peter Parker em parte do filme. Para quem vê, a ilusão recebida é de um ator de uniforme em todas as sequências, mas há horas de processamento computacional ali para gerar uma imagem digital que não existe, de sequências onde nem o dublê está presente.

Graças ao Google Cloud também foi possível destruir a Liberec Square na batalha contra o Homem de Lava sem nenhum dano real à propriedade e sem quebrar a imersão do espectador, recriando em 360º um cenário que existe no mundo real. Os mesmos recursos foram utilizados nos efeitos especiais envolvendo a luta no covil de Mysterio.

O futuro está apenas começando

A partir dessa experiência, a Luma Pictures está ansiosa para voltar a trabalhar com as soluções do Google Cloud e ampliar a integração entre seu método de trabalho e a arquitetura na nuvem. Perdew menciona como exemplo o uso da ferramenta proprietária RILL, desenvolvida internamente. Com RILL, é possível automatizar o processo de visualização de animações de personagem com simulações completas e renderização. Entretanto, essa ferramenta atualmente roda a partir de um cluster de Kubernetes local e a meta da empresa é migrar essa solução para o Google Kubernetes Engine (GKE) na nuvem.

“Ter mais serviços diários na nuvem terá todos os tipos de benefícios de confiabilidade”, explica o produtor. Ele cita que um dos problemas enfrentados pela Luma Pictures em seu escritório em Los Angeles são as quedas de energia que costumam acontecer de vez em quando. Com processos sendo executados remotamente, a empresa ganha estabilidade para suas operações, sem perda de produtividade.

Para consolidar essa parceria, a produtora irá também instalar uma conexão direta de internet para a região de nuvem do Google Cloud, para ampliar sua largura de banda e reduzir a latência na hora de sincronizar, envia e receber dados.

A partir dessas evoluções, Perdew espera experimentar novas possibilidades de aproveitar os recursos da nuvem. Uma dessas vias seria substituir os computadores locais por estações remotas para toda a equipe. “O setor continua mudando o tipo de computador que você precisa por disciplina para fazer um bom trabalho. Ter a flexibilidade de fazer um upgrade ou um downgrade da estação de um artista individualmente em tempo real… como produtor, isso me deixa tonto”, declarou.