![]() |
FrameworkFramework para jogos estilo TetrisAutor: jonathascosta |
OBJETIVOS
O objetivo principal do projeto é desenvolver um framework para construção de jogos estilo Tetris. Objetivos secundários são: facilidade de criação de novas peças, personalização da entrada de dados e separação da camada de interface gráfica da camada lógica do jogo. E por último, permitir o desenvolvimento mais fácil através da extensão das propriedades do framework. REQUISITOS O sistema foi desenvolvido na linguagem C++. Os compiladores utilizados foram MS Visual C++ 7.0 (Visual Studio .NET 2003) e Borland C++ Compiler 5.5. O compilador da Microsoft foi utilizado para compilar o framework enquanto que o compilador da Borlando foi utilizado para criar um jogo de exemplo baseado no framework. A plataforma utilizada para testes foi Windows XP Home Edition e Windows XP Professional. ESPECIFICAÇÃO CArena representa a arena do jogo onde os blocos “caem”. Contém métodos para incorporar a peça corrente à arena, inserir uma nova peça no jogo, mover peças e limpar linhas. CBiblioteca representa a coleção de peças disponíveis no jogo. Contém métodos que carregam a biblioteca a partir de um arquivo texto (biblioteca.txt) e métodos para acessar as peças disponíveis. CConfiguracao armazena as configurações de personalização do jogo, como por exemplo as teclas utilizadas para movimentar as peças na arena, o intervalo de tempo inicial de queda das peças e a largura e altura da arena. CCronometro gerencia a velocidade do jogo, medindo o tempo entre as atualizações do jogo. CExibicao é uma interface que deve ser extendida na implementação de um jogo. Deve ser utilizada na herança de exibidores. Representa a camada de apresentação (interface gráfica). CPeca representa uma peça do jogo com as características de tamanho, formato e cor. Contém métodos de manipulação de uma peça dentro do jogo, como mover, girar etc. CTetris gerencia as regras do jogo harmonizando a interação entre as demais classes. Descrições mais detalhadas destas classes, tais como, assertivas de métodos, valores retornados, entre outras propriedades estão disponíveis nos módulos de definição das mesmas. ROTEIRO DE TESTES Foi utilizado um processo automatizado de testes baseado no documento “Arcabouço para Automação de Testes de Programas” [Staa 2003]. Foram criados módulos de testes e scripts para cada uma das classes do framework. Este processo gera arquivos de log das operações solicitadas e estes logs, bem como os scripts de teste estão incluídos na documentação fornecida. Além dos testes automatizados, foi criado um jogo de teste, o Textris, que utiliza o modo texto como exibidor. Este jogo testa o framework como um todo, todas as suas classes e métodos em uma aplicação real. O objetivo da construção deste jogo de teste é testar a completude do framework, verificando se ele possui todas as funções necessárias para criar minimamente um jogo, objetivo este que foi alcançado. Seu código fonte está incluído na documentação. REFERÊNCIAS [Staa 2003] Staa, A.v.; Arcabouço para Automação de Testes de Programas Redigidos em C. Monografia em Ciências da Computação, PUC Rio - Departamento de Informática; 2003 [Staa 2000] Staa, A.v.; Programação Modular; Rio de Janeiro; Campus 2000 [Howland] Howland G.; How Do I Make Games?: A Path to Game Development; URL: http://www.gamedev.net/reference/design/features/ makegames [Jamsa/Klander 1999] Jamsa K., Klander L.; Programando em C/C++ - A Bíblia - O Melhor Guia Para a Programação em C/C++; São Paulo; Makron Books; 1999 |
||||||||
| Cadastro: 05/01/2006 Atualização: 05/01/2006 Status: 050% concluído Views: 700 |
||||||||||
Arquivos |
Códifo fonte, Documentação, Testes e Piloto (05/01/2006 12:29) |
|||||||||
Discussão |
|
|||||||||