Como a gratuidade de game engines borrou os limites entre o desenvolvimento de jogos indie e AAA
Em 2016, após dois anos de desenvolvimento solitário, o chinês Yang Bing divulgou um trailer de seu jogo Lost Soul Aside, um RPG de ação inspirado em Final Fantasy XV e com combates que parecem ter saído de Devil May Cry. O vídeo mostra um grau de qualidade e polimento normalmente esperado de títulos de grande orçamento, o que fez com que, da noite para o dia, Bing ganhasse as manchetes de veículos especializados ao redor do mundo, que vendiam a mesma narrativa: a do desenvolvedor brilhante, capaz de fazer sozinho aquilo que somente grandes equipes fazem.
A verdade é que, por mais impressionante e ambicioso que seja, Lost Soul Aside não tem nada de absurdo. Desde que engines como a Unity e a Unreal foram disponibilizadas gratuitamente, passamos a ver cada vez mais jogos independentes com qualidades que até alguns anos atrás eram exclusivas de grandes produções. Criações feitas por equipes pequenas ou indivíduos estão deixando de ser ser associadas unicamente à pixel art e gráficos 2D minimalistas.
O criador de jogos curitibano Bruno de Araújo, residente em Vancouver, no Canadá, é um desses desenvolvedores que, sozinhos, parecem condensar o trabalho de equipes compostas por designers, programadores e artistas. A parte de divulgação e relações públicas é feita pela sua esposa, Talita Rodacki, com quem ele divide o comando do estúdio SolidMesh. Isso não faz dele, necessariamente, um gênio, quando há por trás de seu trabalho uma engine como a Unreal e suas facilidades — embora certamente demonstre um enorme esforço e dedicação.
Seu projeto atual, Nightstar: Rogue Wings, tem como influência Rogue Squadron e Star Fox, jogos criados por equipes grandes e orçamentos gordos para os padrões de suas épocas. Mesmo sem muito tempo de experiência com desenvolvimento de jogos, Bruno, formado em design de produto em Curitiba, conseguiu recriar muitas das mecânicas e estilo destes títulos por meio da Unreal Engine, além de uma estética visual realista bastante impressionante. “Quando aqueles caras fizeram Rogue Squadron, eles estavam programando uma engine própria, do zero, experimentando tecnologias nunca antes vistas em jogos. Hoje, esse tipo de coisa é muito mais acessível atualmente, o que permite que pequenos times ou desenvolvedores individuais se foquem mais na jogabilidade do que nas questões técnicas”, explica Bruno.
Mas isso também não significa que desenvolver um jogo atualmente é uma tarefa fácil. “Programar na Unreal não é tão diferente de programar em qualquer outra linguagem”, diz. “A Unreal usa C++, mas também te permite acessar essa linguagem sem ter conhecimento prévio. Basicamente, eles criaram uma linguagem visual (ainda baseada em C++, e que pode ser expandida) que torna o ato de programar uma tarefa mais fácil de aprender. Em vez de escrever linhas de código, você conecta linhas ‘pré-escritas’ e vai criando o que você quer fazer. No fim das contas é a mesma coisa, você ainda está usando os mesmos conceitos que usaria se estivesse trabalhando com programação tradicional, mas é 100 vezes mais user friendly que aprender uma linguagem do zero.”
A utilização de extensões e assets prontos (arte, música ou código criados por outras pessoas, vendidos ou distribuídos gratuitamente a outros desenvolvedores) é outro fator que ajuda a borrar a linha entre o desenvolvimento independente e o “industrial”. Embora a prática possa ser mal compreendida, especialmente do ponto de vista do consumidor, que acaba comprando a tal narrativa do desenvolvedor genial, capaz de fazer tudo sozinho, sem ela, é provável que a cena indie estivesse bem menos avançada do que está atualmente. Da mesma forma, sites como o Fiverr permitem a contratação de serviços como dublagem e locução por quantias módicas.
Tanto a Unity quanto a Unreal possuem seus próprios mercados de compra e venda de assets, que incluem tudo que você possa imaginar: sistema de inventário e equipamento para RPGs, coleção de personagens, efeitos especiais de explosões, pacote para composição de ambientes naturais, sistemas para a criação de árvores de comportamento etc.
“Pessoalmente, eu acredito que a ideia de ‘usar coisas prontas é ruim’ tem que mudar”, defende Bruno. “Enquanto algumas empresas maiores podem pagar profissionais para trabalhar em período integral nos seus jogos, devs indie geralmente pagam por ‘peça’ criada. São dois lados da mesma moeda, e nenhum deles está errado. Como devs, temos que fazer o melhor com o que temos acesso. Claro que não é legal pegar um template na loja da Unity, compilar o jogo e colocar a venda no Steam, mas não tem problema nenhum em comprar uns assets aqui e ali pra melhorar o visual, gameplay ou programação do teu projeto.”
Mas o uso de assets de terceiros não representa a solução imediata de todos os seus problemas. Além do fato de que um asset mal utilizado pode não beneficiar seu jogo, questões técnicas podem aparecer. “Existem alguns ‘buracos’ na engine que eu acabo tapando com extensões disponíveis na Asset Store”, diz o paulistano Terri Vellmann, criador de Heavy Bullets. “Eu não conseguia fazer nada na Unity antes de achar o Playmaker, uma extensão de programação visual. Outras funcionam bem, mas servem para resolver problemas que não deveriam existir, como o input manager padrão precário e o sistema de navegação limitado. O que acaba acontecendo é que uma extensão pode criar um conflito com outra e daí você fica perdendo tempo com coisas que não deveria.”
Terri aponta ainda para certos riscos no uso de assets. “No meu projeto atual eu estou usando um sistema de level design (que também é meio inexistente) e o desenvolvedor da extensão não conseguiu se manter com vendas e abandonou o projeto. Até agora tudo está correndo bem, mas se de repente a engine é atualizada e alguma coisa quebra, eu fico na mão.”
A própria noção de que jogos em 3D são mais caros que os bidimensionais cai por água abaixo quando consideramos que engines como Unreal e Unity, usadas por grandes estúdios, são tão acessíveis quanto Clickteam Fusion e GameMaker: Studio, amplamente usadas por desenvolvedores independentes para a criação de jogos 2D. “É uma mera questão de escolha”, diz Arthur Zeferino, que cria na Unreal FISH, um jogo de tiro em primeira pessoa estilizado que faz uso de sprites 2D, remetendo às origens do gênero.”Um jogo 2D mais detalhado como Owlboy é bem mais caro e trabalhoso de ser fazer do que um 3D estilizado como o meu. Acho que logo a gente vai chegar no ponto em que a única diferença entre um jogo indie e um AAA vai ser a quantidade de conteúdo, que é limitada pelo tamanho do time.” A estética lowpoly, mais barata que a realista e apreciada pelo minimalismo e elegância, vem sendo uma opção viável para muitos desenvolvedores independentes que querem trabalhar com o 3D, como o próprio Terri.
Isso posto, embora desenvolvedores independentes e grandes estúdios possam compartilhar as mesmas ferramentas (ainda que as versões gratuitas de game engines tenham suas restrições), o mesmo não pode ser dito sobre certos conhecimentos e oportunidades. “A comunidade de desenvolvedores independentes da Unreal ainda é bem menor que da Unity, e às vezes é dificil achar respostas para alguns problemas”, diz Arthur. “Os grandes estúdios que usam Unreal não compartilham informações. Na GDC 2017, por exemplo, mostraram uns shaders bem impressionantes que estão sendo usados no próximo Borderlands e eu não faço ideia de como fizeram aquilo.”
Mesmo que as melhores engines do mercado sejam gratuitas e que você consiga preencher lacunas no desenvolvimento de seu próprio jogo com pacotes de conteúdo ou sistemas prontos, nada disso fará qualquer diferença sem força de vontade e criatividade. Afinal, nenhuma dessas facilidades fará com que o código, a arte e o design de um jogo simplesmente apareçam na sua frente. Bruno enfatiza: “Não existe botão dizendo ‘clique aqui para criar um jogo’. Um developer começando agora ainda vai ter que estudar muito e aprender um bocado antes de lançar um jogo. A ferramenta é só um caminho pra chegar onde você quer, mas ela não te leva até lá.”