Você está na página 1de 9

Main Loop

Edward Boszczowski
15 de maro de 2011

Outline

Denio

uso do Main Loop

O que o Mainloop

O Main loop o loop principal que rege o jogo. Ele composto de


uma fase de inicializao, outra para a execuo do loop e uma
ltima para nalizar

Organizao do Main Loop

Inicializao - Inicializa as conguraes grcas, carregamento


de dados guardado em arquivos, inicializao do hardware

Execuo do loop
Obtenha entrada dos dispositivos de I/O (Mouse e teclado,
por exemplo)
Atualize o jogo em decorrncia dos eventos que aconteceram e
da ao do usurio
Desenhe o resultado na tela
Finalizao - Salvamento dos dados em arquivos, "limpeza"dos
recursos utilizados.

Outline

Denio

uso do Main Loop

Exemplo de jogo - Labirinto

Inicializao: Carregue os tens grcos e os coloque na


memria

Execuo do loop
Obtenha entrada dos dispositivos de I/O - as setas do teclado
Mova o personagem de acordo com a direo desejada pelo
jogador
Desenhe o personagem e o cenrio na tela

Finalizao - Limpe os recursos e salve o tempo com que o


usurio realizou a tarefa em um arquivo

Main Loop no XNA

O XNA responsvel pela execuo do main loop. Ele abstrai esta


tarefa delegando aos desenvolvedores a atividade de colocar o
cdigo nas sees necessrias
Comea a executar uma instncia do Main
Instancia e executa uma classe derivada de Game que contm o
jogo em si (Executa o construtor da classe derivada de Game)
Parte para a rotina de inicializao do jogo - Cria o
equipamento grco - GraphicsDevice (Executa o mtodo
Initialize)
Carrega os ativos de arte e outros ativos que o jogo usa
(Executa o mtodo LoadContent)

Execuo do loop
Atualiza os valores de entrada obtidos pelo mouse e teclado
(cdigo executado antes do mtodo Update ser chamado)
L a entrada, realiza o comando correspondente e atualiza as
atividades do jogo (Executa o mtodo Update)
Desenha o personagem e o cenrio na tela (Executa o mtodo
Draw)

Descarrega os ativos usados pelo jogo (Executa o mtodo


UnloadContent)
Limpa os recursos utilizados (Relacionados ao DirectX e
placa de vdeo) - (Executa o mtodo Dispose)

Dvidas/Sugestes

Você também pode gostar