Jogos enquanto software

11
Componentes de um jogo, desenvolvimento Jogos enquanto software

description

Jogos enquanto software. Componentes de um jogo, desenvolvimento. O que é um jogo?. Ponto de vista conceitual Teoria do jogo Diversão x Desafio Regras, mecânicas, subsistemas Ponto de vista técnico Um software extremamente complexo Padrões de projeto, inteligência artificial, otimização - PowerPoint PPT Presentation

Transcript of Jogos enquanto software

Page 1: Jogos enquanto software

Componentes de um jogo, desenvolvimento

Jogos enquanto software

Page 2: Jogos enquanto software

O que é um jogo?Ponto de vista conceitual

Teoria do jogoDiversão x DesafioRegras, mecânicas, subsistemas

Ponto de vista técnicoUm software extremamente complexoPadrões de projeto, inteligência artificial,

otimizaçãoProgramação criativa, porém profissional

Page 3: Jogos enquanto software

Componentes de um jogoMotor (game engine) game loop,

rendererAgentes máquina de

estadosFases (levels) maior parte do

jogoInteligência Artificial (IA) complexidadeSimulação de física complexidadeServidor (online multiplayer)

Motor vs API

Page 4: Jogos enquanto software

MotorGame loop - laço

principal do jogoBase para

praticamente todos jogos existentes

Gera pulsos de atualização do estado do jogo

function gameloop(){ while (ativo){

input();update();render();}}

Page 5: Jogos enquanto software

MotorGame loop - controle

de taxa de framesFrames de

atualização do estado (update)

Frames de atualização da tela (render)

function gameloop(){ while (ativo){input();update();if (renderingDone){

render();}}

}

function gam

eloop()

{while

(ativo)

{input(

);

if (getTime(

) - t > 1000

)

{ up

date();

render()

;

t = getT

ime();

}}

}

Page 6: Jogos enquanto software

MotorJogo sem game loop

Jogos baseado inteiramente em eventos

Só possui ação em função da entrada do jogador

event onKeyPressed(key){    update(key);    render();}

Page 7: Jogos enquanto software

Máquinas de estadosRepresentação de estados e transiçõesAutômato finito

avançando próximo

agarrando atacandorecuando

parado

Oponentelonge

Oponenteperto

Oponentelonge

Oponentedefendendo

Oponenteparado

Final docenário

Oponentelonge

Oponenteperto

Page 8: Jogos enquanto software

Máquinas de estadosExemplo:

Interpretação de entrada do usuário

03

12

HS

0 3

1 2

HS

Page 9: Jogos enquanto software

Editores e outras ferramentasFerramentas auxiliaresGeralmente desenvolvidas apenas para um

projetoEditores de fase, de comportamento, de

animaçãoAtualmente vários motores possuem editores

embutidosO reaproveitamento das ferramentas e

padrões é um motivador para sequências e jogos baseados no mesmo motor

Page 10: Jogos enquanto software

Desenvolvimento profissionalOrientação a ObjetosPadrões de Projeto (Factory, Director, MVC)Tecnologias de dados (XML, DB)Tecnologias de desenvolvimento (Java, Xna,

ActionScript)Integração com arte (animações e som)Conhecimento da plataforma e suas

limitações

Page 11: Jogos enquanto software

ConclusãoJogos são software complexos, que embora possam ser desenvolvidos por uma única pessoa, é preciso que esta pessoa tenha embasamento profissional.