Entrei no Den of Wolves para aprender sobre Unity 6
A unidade teve um ano difícil. A empresa foi apanhada por uma tempestade de críticas em setembro do ano passado, quando anunciou uma taxa de tempo de execução que cobraria uma taxa dos desenvolvedores sempre que um jogo Unity fosse instalado. Mesmo muito antes de a taxa aparecer, o Unity havia se aprofundado tanto na comunidade de desenvolvedores de jogos que passou mais de um ano tentando voltar à reputação positiva que antes mantinha – e o trabalho ainda não foi concluído, mesmo depois de um novo CEO e o cancelamento total de sua taxa de execução .
Mas esta semana, o Unity espera mudar as coisas com o lançamento do Unity 6 – a primeira atualização numerada do Unity em quase uma década. No ano passado, o Unity 6 representou um pilar crescente no desenvolvimento de jogos que tentava ganhar dinheiro rapidamente. Mas agora representa uma empresa legitimamente prejudicada que está tentando reconquistar alguns favores. E para fazer isso, é necessário um jogo muito bom para mostrar sua nova tecnologia. Esse jogo é Den of Wolves.
É o mais recente título do desenvolvedor GTFO 10 Chambers Collective, que foi formado por desenvolvedores que trabalharam em Payday e Payday 2. É também um dos primeiros jogos a se comprometer a usar o novo motor Unity 6, apesar do fato de 10 Chambers ter começado a trabalhar em uma versão mais antiga do Unity. Falei com Hjalmar Vikström, cofundador da 10 Chambers, e Ryan Ellis, vice-presidente de produto da Unity, para entender o que o novo mecanismo traz e a perspectiva dos desenvolvedores sobre tudo, desde otimização de jogos até IA generativa.
A questão irreal
Se você já jogou GTFO, provavelmente é surpreendente que o jogo tenha sido desenvolvido no Unity. Não parece um jogo Unity, algo que Vikström reconheceu quase imediatamente.
“Tantas pessoas ficaram tão surpresas quando nos viram, quando anunciamos o GTFO , e disseram: 'O quê? Unidade?'” Vikström me disse. “Esse não foi o caso como no Unity, você tem jogos lindos. Sempre foi irreal, você sabe.
Certo, Unreal Engine. Por mais de uma década, você pensou em um grande lançamento para console e PC como um jogo Unreal, enquanto Unity era para indies e uma enxurrada de títulos para celular (alguns melhores que outros) ocupando espaço na App Store. Vikström até compartilhou que a equipe foi abordada por representantes da Unreal depois de exibir originalmente o trailer do GTFO , chocado por a empresa não estar usando o Unreal Engine ou sua própria tecnologia.
A pergunta óbvia: por quê? “A unidade é muito mais rápida para nós. É mais rápido iterar. Você sabe, você pode criar um projeto pequeno e vazio e fazer um protótipo simples com caixas e coisas, e então, tipo, é isso que estou pensando. E leva alguns segundos para recarregar tudo.”
É aquela abordagem leve e multiplataforma que originalmente trouxe 10 Chambers para o motor. Embora 10 Chambers tenha agora uma equipe de quase 100 pessoas e ambições de uma equipe com várias centenas de pessoas, o coletivo começou como um grupo de quatro ou cinco ex-colegas de trabalho. Para eles, o Unity representou uma maneira de colocar sua visão em funcionamento rapidamente, já que os membros da equipe desempenhavam diversas funções em programação e design de jogos.
Os atributos negativos que foram associados ao Unity no passado foram, na verdade, positivos para a equipe.
“O bom é que o desempenho de nível básico do Unity, como um projeto vazio, não tem tanta sobrecarga. É muito barato”, disse Vikström. “Na verdade, é um dos benefícios de eles também estarem em dispositivos móveis e, você sabe, até em jogos de navegador da web. Eles não podem ter um projeto padrão desajeitado e enorme porque, quando você inicia algo novo, ele precisa ser super fino para poder rodar em qualquer coisa, basicamente.”
Vikström não se intimidou com o lançamento do Unity 6, especialmente devido aos problemas que a empresa enfrentou no último ano. Ele reconheceu que Den of Wolves se tornou uma espécie de garoto-propaganda do novo motor e chegou ao ponto de dizer que não “queria soar como um idiota do Unity”. E para esse fim, Vikström descreveu alguns dos problemas que a equipe enfrentou com o Unity no passado.
“Quero dizer, é muito trabalho, como nossas lutas com a física nas versões antigas do Unity. Não sei quantos meses gastei em otimizações físicas no Unity”, disse ele. “É muito trabalho, mas você pode, você sabe, se você souber o que fazer, você pode fazer isso.”
Embora o Unity fizesse sentido para um pequeno grupo de desenvolvedores trabalhando em seu primeiro jogo em um novo estúdio, isso não significava que a equipe tivesse que necessariamente optar pelo Unity 6 para Den of Wolves. No entanto, algumas mudanças na versão mais recente do mecanismo tornaram-no uma oferta mais atraente.
Crescendo na Cova dos Lobos
Não há como negar que GTFO é um jogo lindo e parece que Den of Wolves será igualmente impressionante. Para GTFO, as conquistas visuais ocorreram apesar do uso do Unity como mecanismo subjacente, e não por causa dele. Vikström destacou a modularidade do Unity como um de seus pontos fortes e como a equipe trocou o pipeline de renderização padrão no GTFO por sua própria tecnologia. Agora, a equipe está usando o que você tira da caixa.
“O HDRP, você sabe, já percorreu um longo caminho. Não optamos por isso no GTFO porque era muito imaturo”, disse Vikström. “Um dos principais motivos para mudar para o Unity 6 — porque obviamente não começamos no Unity 6 porque estamos desenvolvendo há algum tempo — é por causa do visual, sabe? E essa é uma afirmação bastante forte, na verdade, para um jogo Unity.”
O renderizador Unreal é o motivo pelo qual você associa tantos jogos bonitos ao mecanismo. Embora o Unity tenha bastante flexibilidade, seu pipeline de renderização não foi dos melhores no passado. Tudo começou com URP, ou Pipeline de Renderização Universal, mas o Unity 6 tem HDRP, ou Pipeline de Renderização de Alta Definição.
Inclui shaders avançados para dispersão e translucidez de subsuperfície, traçado de raio e traçado de caminho, neblina e nuvens volumétricas e um pipeline totalmente aberto que os desenvolvedores podem reescrever na linguagem nativa do mecanismo, C#. E para 10 Chambers, o amadurecimento da renderização fez uma grande diferença.
Não se trata apenas de lançar mais tecnologia para resolver o problema. Vikström afirmou que o novo pipeline não era uma solução para melhorar instantaneamente a aparência de um jogo. “Acho que se trata mais de escolhas artísticas do que de tecnologia de ponta”, disse-me o desenvolvedor. “Você precisa fazer algumas escolhas. Você não pode simplesmente dizer que vai parecer hiper-realista, sabe, porque então você estará competindo com tudo tentando ser hiper-realista. E então, especialmente nas versões anteriores do Unity, você não estava se divertindo.”
O amadurecimento do pipeline de renderização faz uma grande diferença, mas Ellis destacou alguns detalhes que fazem o Unity 6 funcionar. “Fizemos algumas melhorias gráficas muito significativas no Unity 6 em geral. Um exemplo disso é um novo recurso, chamado gaveta residente da GPU, que essencialmente descarrega coisas que funcionam na CPU para a GPU. Vimos melhorias de até quatro vezes no desempenho da CPU apenas ligando esse recurso”, disse-me o executivo da Unity.
Existem algumas outras novas adições, como Spatial Temporal Post-Processing, ou STP, que se parece com a versão do Unity do recurso Temporal Super Resolution (TSR) no Unreal Engine 5. Há também seleção de oclusão de GPU, que chama objetos para fora do mundo do jogo que não são visíveis — mais uma vez, um recurso disponível no Unreal Engine. O Unity pode ser conhecido por lançamentos móveis e independentes, mas está claro com o Unity 6 que o mecanismo está tentando crescer.
Uma resposta à questão de otimização
Tenho certeza de que todas as mudanças no Unity 6 são ótimas para os desenvolvedores, e sei que o Unreal Engine também tem muitas vantagens. Isso é ótimo para os desenvolvedores de jogos discutirem entre si sobre o que é melhor, mas não sou um desenvolvedor de jogos (e suspeito que a maioria das pessoas que estão lendo isso também não o seja). Passei do motor em si para uma das questões mais urgentes que ainda estão na mente dos jogadores de PC: a otimização.
Já conversei com desenvolvedores sobre o problema de otimização no PC, mas mesmo mais de um ano depois, os problemas persistem, especialmente com os lançamentos do Unreal Engine – Silent Hill 2 vem à mente como um exemplo recente. Surpreendentemente, Vikström não apontou o motor ao falar sobre problemas de desempenho. Perguntei se o começo humilde de 10 Chambers ajudou na otimização do GTFO, e o desenvolvedor não mediu palavras: “Sim, 100%”.
“É muito fácil fazer isso quando vocês são dois programadores. Poderíamos simplesmente decidir fazer [otimização] e então começar a fazê-lo. Mas você ainda precisa ter essa mentalidade de que não pode ter um atirador de baixo desempenho, certo?”
A resposta típica para o problema de otimização é esta: existem muitas configurações de hardware no PC. É verdade, mas Vikström concentrou-se mais nas questões práticas que surgem quando se tenta optimizar um grande jogo numa equipa ainda maior.
“Você só precisa estar nisso. Gaste tempo com isso. Você sabe, trabalhe nisso”, disse Vikström. “E eu entendo 100% por que isso é muito difícil para uma equipe de 500, 1.000 pessoas, porque quem é o dono disso? Quem faz 200 artistas mudarem sua arte? Ou, tipo, 'ei, você não pode fazer suas malhas de sombra assim.' Esperamos que em bons estúdios você consiga fazer isso, mas caso contrário, é muito fácil perder essa propriedade.”
É uma realidade que os desenvolvedores de jogos conhecem bem, mas os jogadores raramente consideram. Especialmente com equipes grandes, o trabalho costuma ser muito isolado. Você não tem um ambiente criativo e de formato livre onde cada programador conhece cada artista, e todos conversam com designers. Existem diferentes departamentos, todos os quais precisam trabalhar juntos para otimizar um jogo. Se um jogo for muito pesado, isso terá implicações para programadores, artistas e designers de jogos, e não é tão simples quanto agitar uma varinha para mobilizar centenas de pessoas para derrubar todo o trabalho que realizaram.
Mesmo com essa disfunção executiva, Vikström reconheceu que otimizar um jogo para PC é simplesmente difícil. “Otimização, somos super apaixonados por isso, mas é difícil. Quer dizer, é muito difícil. Mas ainda estamos no tamanho em que podemos realmente ir, 'ei, artistas, precisamos mudar as malhas de sombra' ou 'ei, programadores, precisamos otimizar o gerenciamento de threads'. E isso me dá muita esperança porque são apenas semanas e meses de trabalho.”
Mesmo assim, Vikström diz que a equipe da 10 Chambers está comprometida com o processo. “Não estou dizendo que Den of Wolves será, desde o início, no acesso antecipado, o jogo mais otimizado. Não será porque, você sabe, essa merda é difícil. Não podemos permitir travamentos, carregamento de textura ou, você sabe, esses picos de CPU. Queremos nos livrar deles.”
Na IA
A otimização é um dos grandes tópicos dos jogos hoje, mas o outro é a IA . Em particular, IA generativa. A IA generativa já substituiu os empregos dos desenvolvedores de jogos e não mostra sinais de desaceleração. De acordo com Vikström e Ellis, é um tema que deve ser abordado com nuances porque, gostemos ou não, a IA não vai a lugar nenhum no desenvolvimento de jogos.
“Nós realmente acreditamos que o criador precisa estar no centro de todas essas coisas e que a IA existe apenas para ajudar a fornecer assistência”, disse-me Ellis. “Vimos algumas coisas incríveis que as pessoas podem criar com IA, mas também parecem não ter alma ou algum tipo de centelha real de criatividade. E no mundo dos jogos, muito disso tem a ver com essa centelha.”
É ótimo saber que um executivo reconhece a criatividade necessária para fazer um jogo funcionar, mas Vikström, que trabalha nas trincheiras do desenvolvimento de jogos, apontou alguns exemplos mais práticos. Com experiência em programação, o desenvolvedor destacou especificamente tarefas repetitivas, como escrever código clichê – código fundamental que pode ser reutilizado em vários cenários diferentes.
“Já fiz isso 10 vezes antes, mas já faz um ano, então não me lembro do código padrão para isso. Eu apenas perguntei, tipo, ChatGPT ou algo assim, 'Ei, preciso de um padrão para abrir uma janela, alinhando três botões.' Não é uma programação difícil, mas levaria apenas uma hora para chegar lá, porque você precisa encontrar o padrão certo para isso. Então isso me salvou, você sabe, algumas horas, o que foi ótimo.”
A outra área de impacto é a arte – e é aí que vimos deslocamento, especialmente com artistas 2D da Activision Blizzard. Vikström diz que a IA generativa é útil para a idealização visual, mas que você realmente precisa ser um artista para usar essas ferramentas.
“Não é realmente arte conceitual, mas é mais como 'este é o visual que buscamos'”, disse Vikström. “Você precisa ter uma mente artística para ver essas qualidades… Você pode ser totalmente pouco artístico e conseguir uma imagem bonita, mas não sabe o que está vendo. Tipo, o que há de bom nessa imagem? Então, você ainda precisa ser artístico.”
Não há uma resposta fácil para a questão da IA no desenvolvimento de jogos, já que até os próprios desenvolvedores não têm certeza de como aproveitar as ferramentas de maneira adequada (e criativa). E nunca vimos os executivos finais tentando automatizar empregos que antes eram ocupados por pessoas. Também está claro que a IA generativa é extremamente poderosa como ferramenta para o desenvolvimento de jogos e, esperançosamente, com o tempo, resultará em jogos melhores – e alguns empregos perdidos são possíveis.
Ellis resumiu bem o ponto da IA: “Você vê que esses títulos vêm de um criador independente que talvez não tivesse muito dinheiro, mas eles tiveram uma bela ideia ou abordagem que parece nova e única, e pode decolar como um incêndio. E não vemos essas coisas como coisas que a IA pode criar.”