Cursos / Jogos Digitais / Inteligência Artificial para Jogos / Aula

arrow_back Aula 01 - Introdução à IA em jogos

Onde a IA é usada nos jogos?

Apesar de normalmente se associar as técnicas de IA aos comportamentos dos personagens de um jogo, elas não são limitadas unicamente a esse uso. Imagine, por exemplo, um jogo 3D em terceira pessoa, no qual a câmera precisa focar nos elementos principais do cenário ao mesmo tempo em que aponta o caminho a ser percorrido pelo jogador, desviando de possíveis obstáculos que possam ocultar a visão dele. Qual é a melhor sequência de tomadas da câmera a ser executada? Como em um filme, as pistas e a ligação com os elementos do cenário precisam, às vezes, estar relacionadas. Quem faz filme sabe da importância das “tomadas”, do efeito que uma aproximação do rosto do personagem faz, do ritmo da câmera a ser definido em momentos mais tensos ou dos movimentos panorâmicos quando deseja-se dar uma visão geral do cenário. Em um filme, todas essas decisões são realizadas pelo diretor. E em um jogo, quem toma essas decisões?

Muitos jogos usam técnicas de IA para definir qual o ângulo e a abertura da melhor tomada em um determinado momento do jogo. Além disso, há também o problema de como fazer a transição de uma tomada para a outra. Como será? Rápida ou lenta? Como no cinema, a tomada da câmera precisa ser inteligente o suficiente para realçar os elementos importantes da cena, independentemente das interações do jogador.

No exemplo da Figura 07, a visão em terceira pessoa do jogo evidencia que há uma trilha abaixo.

Visão em terceira pessoa de uma cena do jogo Assassin’s Creed

Outro exemplo de uso das técnicas de IA é o caso em que o designer do jogo, para aumentar a sua jogabilidade, deseja que os cenários (ou níveis) sejam criados dinamicamente. Ou seja, os cenários não são pré-definidos pelo designer, mas criados durante o desenrolar do próprio jogo. Para que você visualize melhor o que está se colocando aqui, basta pensar em um jogo simples como o Super Mario. É um jogo de plataforma 2D, com áreas de percurso (plataformas) e adversários posicionados em locais estratégicos. Imagine se para criar um nível mais dinâmico, fossem posicionados os elementos do jogo em lugares completamente aleatórios. Será que teria solução (o personagem conseguiria chegar ao final da fase)? Mesmo que haja solução, será que seria muito fácil ou muito difícil para o jogador? Será que isso o faria desestimular do jogo? Enfim, a criação de um nível de forma dinâmica, mesmo em jogos simples como o Super Mario, é uma tarefa complexa, que requer técnicas de IA para gerar um cenário que possua solução e dificuldade que seja adequada à evolução do jogador ao longo dos níveis.

Criação de níveis em Super Mario

Mais um exemplo de uso de IA é prover o jogo de inteligência suficiente para identificar o grau de habilidade do jogador e, com isso, poder adaptar o nível de dificuldade a ser proposto por ele. Esse tópico é muito importante para a maioria dos jogos atuais, porque é essencial cativar o jogador desde o início e conservá-lo jogando o máximo de tempo possível. Se o jogo for muito fácil no início, ele pode ficar chato e desinteressante. Por outro lado, se for muito difícil, muitos jogadores vão deixá-lo de lado se não enxergarem a possibilidade de experimentarem o “sabor da vitória”. Então, o segredo é adaptar o jogo ao usuário. Como fazer isso? Com técnicas de aprendizado de máquina. Elas permitem à IA aprender qual o nível do jogador, classificando-o em diferentes categorias a partir das análises de suas ações e dos resultados obtidos. O segredo é então adaptar-se ao jogador!

Além desses usos, há obviamente a utilização de técnicas de IA para fazer com que o comportamento dos personagens seja mais realista. E isso é o que será discutido na próxima seção.

Versão 5.3 - Todos os Direitos reservados