Desenvolvimento de um simulador de jogo de estratégiaem tempo real
Fabiano AonoLeandro Aono
Orientador: Prof. Dr. Paulo André Vechiatto de Miranda
Departamento de Ciência da ComputaçãoInstituto de Matemática e Estatística
Universidade de São Paulo
MAC499 - Trabalho de Formatura Supervisionado - 2013
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Conteúdo
1 IntroduçãoRTSMotivaçãoObjetivo
2 Jogo de estratégia em tempo real
3 SimuladorFerramentasMovimentaçãoColisão
4 Conclusão
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Conteúdo
1 IntroduçãoRTSMotivaçãoObjetivo
2 Jogo de estratégia em tempo real
3 SimuladorFerramentasMovimentaçãoColisão
4 Conclusão
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Estratégia em tempo real
Estratégia em tempo real (RTS: Real Time Strategy )
Gênero de jogo eletrônicoDois ou mais jogadoresAndamento em tempo realJogadores controlam e criam unidades e edifíciosObjetivo: derrotar o oponente
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Estratégia em tempo real
Estratégia em tempo real (RTS: Real Time Strategy )
Gênero de jogo eletrônicoDois ou mais jogadoresAndamento em tempo realJogadores controlam e criam unidades e edifíciosObjetivo: derrotar o oponente
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Estratégia em tempo real
Estratégia em tempo real (RTS: Real Time Strategy )
Gênero de jogo eletrônicoDois ou mais jogadoresAndamento em tempo realJogadores controlam e criam unidades e edifíciosObjetivo: derrotar o oponente
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Estratégia em tempo real
Estratégia em tempo real (RTS: Real Time Strategy )
Gênero de jogo eletrônicoDois ou mais jogadoresAndamento em tempo realJogadores controlam e criam unidades e edifíciosObjetivo: derrotar o oponente
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Estratégia em tempo real
Estratégia em tempo real (RTS: Real Time Strategy )
Gênero de jogo eletrônicoDois ou mais jogadoresAndamento em tempo realJogadores controlam e criam unidades e edifíciosObjetivo: derrotar o oponente
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Estratégia em tempo real
Estratégia em tempo real (RTS: Real Time Strategy )
Gênero de jogo eletrônicoDois ou mais jogadoresAndamento em tempo realJogadores controlam e criam unidades e edifíciosObjetivo: derrotar o oponente
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Motivação
A Inteligência Artificial (IA) não é bem desenvolvida[1]Motivos:
Complexidade de um RTS é altaSuporte oferecido pelos jogos é baixo
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Motivação
A Inteligência Artificial (IA) não é bem desenvolvida[1]Motivos:
Complexidade de um RTS é altaSuporte oferecido pelos jogos é baixo
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Motivação
A Inteligência Artificial (IA) não é bem desenvolvida[1]Motivos:
Complexidade de um RTS é altaSuporte oferecido pelos jogos é baixo
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Motivação
A Inteligência Artificial (IA) não é bem desenvolvida[1]Motivos:
Complexidade de um RTS é altaSuporte oferecido pelos jogos é baixo
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
RTSMotivaçãoObjetivo
Objetivo
Desenvolver um simulador de RTS para o estudo eaplicação de técnicas de IA
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Conteúdo
1 IntroduçãoRTSMotivaçãoObjetivo
2 Jogo de estratégia em tempo real
3 SimuladorFerramentasMovimentaçãoColisão
4 Conclusão
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Alguns conceitos
Mapa: área em que é disputada a partidaRecursos: moeda virtual do jogoUnidades: entidades móveis
Trabalhadoras: construção e coletaCombate: ataque e defesa
Edifícios: entidades imóveis
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Alguns conceitos
Mapa: área em que é disputada a partidaRecursos: moeda virtual do jogoUnidades: entidades móveis
Trabalhadoras: construção e coletaCombate: ataque e defesa
Edifícios: entidades imóveis
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Alguns conceitos
Mapa: área em que é disputada a partidaRecursos: moeda virtual do jogoUnidades: entidades móveis
Trabalhadoras: construção e coletaCombate: ataque e defesa
Edifícios: entidades imóveis
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Alguns conceitos
Mapa: área em que é disputada a partidaRecursos: moeda virtual do jogoUnidades: entidades móveis
Trabalhadoras: construção e coletaCombate: ataque e defesa
Edifícios: entidades imóveis
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Alguns conceitos
Mapa: área em que é disputada a partidaRecursos: moeda virtual do jogoUnidades: entidades móveis
Trabalhadoras: construção e coletaCombate: ataque e defesa
Edifícios: entidades imóveis
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Alguns exemplos de jogos
StarcraftWarcraftAge of EmpiresCommand & Conquer
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Conteúdo
1 IntroduçãoRTSMotivaçãoObjetivo
2 Jogo de estratégia em tempo real
3 SimuladorFerramentasMovimentaçãoColisão
4 Conclusão
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Ferramentas
C++Allegro: Allegro Low LEvel Game ROutines
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Ferramentas
C++Allegro: Allegro Low LEvel Game ROutines
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Movimentação
Unidades se movem pelo mapaObstáculos naturais ou edifíciosProblema: como encontrar o caminho mais curto?
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Movimentação
Unidades se movem pelo mapaObstáculos naturais ou edifíciosProblema: como encontrar o caminho mais curto?
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Movimentação
Unidades se movem pelo mapaObstáculos naturais ou edifíciosProblema: como encontrar o caminho mais curto?
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Busca de caminho
Solução:Algoritmo A*
Dados os nós origem e destinoEncontra um dos caminhos mais curtos entre eles
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Busca de caminho
Solução:Algoritmo A*
Dados os nós origem e destinoEncontra um dos caminhos mais curtos entre eles
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Busca de caminho
Solução:Algoritmo A*
Dados os nós origem e destinoEncontra um dos caminhos mais curtos entre eles
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Busca de caminho
Solução:Algoritmo A*
Dados os nós origem e destinoEncontra um dos caminhos mais curtos entre eles
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Colisão
Unidades podem encontrar outras pelo caminhoQueremos evitar que uma atravesse a outraTratamento da colisão:
Detecção e resposta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Colisão
Unidades podem encontrar outras pelo caminhoQueremos evitar que uma atravesse a outraTratamento da colisão:
Detecção e resposta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Colisão
Unidades podem encontrar outras pelo caminhoQueremos evitar que uma atravesse a outraTratamento da colisão:
Detecção e resposta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Colisão
Unidades podem encontrar outras pelo caminhoQueremos evitar que uma atravesse a outraTratamento da colisão:
Detecção e resposta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Detecção
Processo executado a cada passo do jogoVerificamos quais unidades estão colidindoComparar uma unidade com todas as outras não éeficienteComo diminuir o número de comparações?Idéia: comparar com as mais próximasParticionamento do espaço em quadrantes com oauxílio da Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Detecção
Processo executado a cada passo do jogoVerificamos quais unidades estão colidindoComparar uma unidade com todas as outras não éeficienteComo diminuir o número de comparações?Idéia: comparar com as mais próximasParticionamento do espaço em quadrantes com oauxílio da Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Detecção
Processo executado a cada passo do jogoVerificamos quais unidades estão colidindoComparar uma unidade com todas as outras não éeficienteComo diminuir o número de comparações?Idéia: comparar com as mais próximasParticionamento do espaço em quadrantes com oauxílio da Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Detecção
Processo executado a cada passo do jogoVerificamos quais unidades estão colidindoComparar uma unidade com todas as outras não éeficienteComo diminuir o número de comparações?Idéia: comparar com as mais próximasParticionamento do espaço em quadrantes com oauxílio da Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Detecção
Processo executado a cada passo do jogoVerificamos quais unidades estão colidindoComparar uma unidade com todas as outras não éeficienteComo diminuir o número de comparações?Idéia: comparar com as mais próximasParticionamento do espaço em quadrantes com oauxílio da Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Detecção
Processo executado a cada passo do jogoVerificamos quais unidades estão colidindoComparar uma unidade com todas as outras não éeficienteComo diminuir o número de comparações?Idéia: comparar com as mais próximasParticionamento do espaço em quadrantes com oauxílio da Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Quadrantes e Quadtree
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Resposta
Processo em que tratamos as unidades em colisãoDois tipos
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Resposta
Processo em que tratamos as unidades em colisãoDois tipos
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Resposta
Caso 1: Colisão com uma unidade amiga que nãoesteja atacandoSolução: A unidade é empurrada
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
Resposta
Caso 1: Colisão com uma unidade amiga que nãoesteja atacandoSolução: A unidade é empurrada
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
RespostaCaso 2: Colisão com uma unidade inimiga ou comuma amiga que esteja atacandoMotivo: Abuso da mecânica do jogo (inimigo) ouatrapalhar o ataque (amigo)Solução: A unidade dá a volta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
RespostaCaso 2: Colisão com uma unidade inimiga ou comuma amiga que esteja atacandoMotivo: Abuso da mecânica do jogo (inimigo) ouatrapalhar o ataque (amigo)Solução: A unidade dá a volta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
FerramentasMovimentaçãoColisão
RespostaCaso 2: Colisão com uma unidade inimiga ou comuma amiga que esteja atacandoMotivo: Abuso da mecânica do jogo (inimigo) ouatrapalhar o ataque (amigo)Solução: A unidade dá a volta
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Conteúdo
1 IntroduçãoRTSMotivaçãoObjetivo
2 Jogo de estratégia em tempo real
3 SimuladorFerramentasMovimentaçãoColisão
4 Conclusão
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Resultados obtidos
Um vídeo de demonstração do simulador implementado...
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Próximo passo
Criar uma IA utilizando o simulador
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Fim
Dúvidas?
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
IntroduçãoJogo de estratégia em tempo real
SimuladorConclusão
Referências
[1] Michael Buro. Call for ai research in rts games. InProceedings of the AAAI-04 Workshop on Challenges inGame AI, pages 139-142, 2004.
Fabiano Aono e Leandro Aono Simulador de jogo de estratégia em tempo real
Top Related