Pular para o conteúdo
Início » Artigos » A questão do processamento do seu jogo

A questão do processamento do seu jogo

Crysis Wallpaper Full HD

Este é um assunto um pouco espinhoso e altamente técnico. Mas é algo a se pensar quando se está desenvolvendo um jogo e deve ser planejado logo no início para não ter problemas no futuro. Todos sabem que hoje os games estão bem mais evoluídos do que há alguns anos e que a tecnologia evolui de maneira constante e algumas vezes bem alta (com a troca da geração de consoles, por exemplo, onde os novos videogames ganham mais processamento e poderio tecnológico).

Mesmo assim um assunto que sempre está em pauta em reuniões de programadores e técnicos de gamedev numa equipe é a questão do processamento utilizado no projeto. Mesmo com consoles atuais, isso sempre entra em pauta, já que, como os games estão num nível de evolução enorme, questões como a inteligência artificial e a física são tão importantes quanto os gráficos e os outros aspectos gerais do jogo. Hoje os jogadores exigem tanto um game com gráficos perfeitos quanto com uma IA decente que não seja burra demais.

Crysis vs Realidade

Crysis – Atualmente o jogo com processamento e poderio mais potente dos videogames.

Com os gráficos chegando perto da própria realidade, hoje as pesquisas das empresas estão se concentrando mais na parte de processamento interno. Efeitos de física, efeitos diversos nos gráficos, isso consome muito processamento. Pense num monte de personagens na tela, interagindo ao mesmo tempo, os efeitos dos próprios gráficos, como fumaça, luz, animações de cabelos e roupas se movimentando de acordo com a velocidade e direção do vendo, as colisões dos modelos, os efeitos dos personagens na água, o aspecto climático do jogo…
É muita coisa!

Tente imaginar uma tela de um jogo onde apenas apareça os efeitos de física sendo calculados. Efeitos como o atrito e gravidade são calculados em tempo real o tempo todo no jogo. Efeitos de luz são calculados e recalculados de acordo com a câmera, onde os cálculos de luz batem nas texturas dos modelos e tem de ser reprocessados de acordo com a posição dos personagens no local e se tem, naquele momento, qualquer tipo de interferência que possa mudar os cálculos e os mesmos serem reprocessados.

Ou mesmo os cálculos de dano nos personagens, os eventos que podem ser desencadeados a qualquer momento num local, como a aparição surpresa de um inimigo, a possibilidade do jogador ir pros menus e iniciar outros cálculos de processamento enquanto o jogador escolhe uma opção…

Cálculos de clima, como chuva, neve, vento…

Você já parou pra pensar em tudo isso? Dificilmente!

Dead Rising Screenshot

Dead Rising – Um jogo com uma quantidade absurda de inimigos na tela.

Ah, mas a engine faz certas coisas e tudo mais!

Com certeza, e aí você tem de pensar em usar uma engine poderosa que possa fazer tudo isso sem prejudicar o framerate do jogo.

Peraí…framerate? O que é isso?

Se você não sabe, tentarei explicar: quando o jogo está rodando, ele é parecido com um desenho animado. Num desenho, pra cada segundo na tela são dezenas de desenhos que são mostrados ininterruptamente, simulando algo em movimento. O framerate são os quadros de animação por segundo. Quanto mais quadros, mais suave é o movimento, onde o espectador não percebe que são imagens paradas que são mostradas sem parar na tela. Ele vai ver a imagem em movimento, como se ele estivesse vendo aquela cena ao vivo.

Só que aí quanto mais efeitos na tela, isso prejudica o framerate do jogo em maior ou menor grau. Já que como são mais cálculos ao mesmo tempo, o processador gráfico da plataforma vai ter de usar parte do processamento pra calcular os cálculos e isso vai deixar o jogo mais lento graficamente.

E acredite: a pior coisa num jogo é ver o mesmo lento. Dependendo do estilo do jogo, isso pode ser crucial para a jogabilidade e para a diversão do jogador.

Então é necessário analisar, antes de mais nada, a plataforma-alvo do seu projeto e qual ferramenta seria ideal pro seu jogo. E estamos falando das engines gráficas e das engines de física, onde existem as ferramentas opensource/freeware e as pagas, que podem custar muita grana.

Ah, mas as ferramentas pagas são mais poderosas! Sim, com certeza! Não dá pra comparar a Ogre3D com a Unreal Engine 3, onde a última tem um poder IMENSO de processamento. Mas também exige mais da plataforma-alvo da engine e por isso tem um pré-requisito mínimo pra ela rodar satisfatoriamente.

Mas a Ogre é gratuita e pode ser usada num jogo indie. Afinal, você pode até querer se profissionalizar, mas tem de passar pelas ferramentas básicas primeiro, para ir ganhando experiência em programação e no desenvolvimento do jogo.

Aí você pode começar a se preocupar com o processamento. Quantidade de polígonos de um modelo 3D, quer tipo de efeitos você vai colocar ou não no seu jogo…se você conseguir planejar bem e balancear o seu jogo corretamente, você pode ter um game com gráficos satisfatórios e com um framerate alto que não deixe o jogo lento. E ainda tem a questão da plataforma do jogo. Se você vai fazer um game pra celular, você terá de saber que a plataforma tem muitas limitações de processamento gráfico e técnico.

Até mesmo os consoles são limitados. Mas o limite de um computador é bem mais difícil de ser atingido do que num celular. É claro que o próprio desenvolvimento do jogo é bem diferente.

Concluindo: sei que não sou nenhum especialista na parte técnica, mas tentei pelo menos comentar um pouco sobre isso. É um aspecto importantíssimo que a maioria esquece de pensar quando está pensando em fazer um jogo. Sei que todos queriam fazer algo próximo de um Metal Gear Solid 4, mas acho que os desenvolvedores tem de ter os pés no chão e não pensar grande quando ainda são indies. Afinal, um jogo desse porte é feito por equipes enormes. Equipes que sempre pensam em deixar o jogo com processamento decente pra dar uma experiência única e prazerosa aos jogadores.

[Créditos das imagens: Fórum do Gamespot e Gamersyde]

Marcações: