Engine para desenvolvimento de jogos com ASCII Art.

RESUMO

Com o crescimento da indústria de jogos digitais no mundo o ensino do desenvolvimento de jogos vêm sendo cada vez mais procurado, principalmente por jovens atraídos pela tecnologia e pela possibilidade de desenvolver algo que eles tanto gostam de usar. Entretanto, desenvolver jogos não é uma tarefa fácil, envolvendo trabalhos com sons e gráficos – parte artística –, narrativa e programação, sendo que a última é o grande foco do curso Técnico em Programação de Jogos Digitais. Programar não é trivial, principalmente para iniciantes, e exige grande dedicação, além de não possibilitar, em nível inicial, o desenho de polígonos ou imagens. Esse obstáculo impede que iniciantes criem jogos de maneira a entender o funcionamento dos jogos e da programação deles. A principal dificuldade consiste em como mostrar os elementos visuais corretamente e a jogabilidade do jogo. Para ajudar os alunos com essas tarefas, foi criada uma biblioteca – conjunto de utilidades – que possui diversas funções escritas em C++, desde sequências simples para limpar a tela até classes completas para trabalhar com imagens em modo texto – ASCII Art. A biblioteca possibilita animações e cenários por meio do uso de sprites (elemento gráfico que é desenhado contra um cenário de fundo num jogo). Uma animação de um jogo em duas dimensões, por exemplo, é representada por uma sequência de sprites sendo exibidos em sucessão (de forma temporizada). Tanto a biblioteca – inclusive seu código fonte – quanto outros arquivos que podem ser úteis aos estudantes estão disponíveis na internet e podem ser estudados. O objetivo do projeto é dar continuidade no desenvolvimento da biblioteca, corrigindo eventuais erros, acrescentando novas funcionalidades e criando material didático para uso pelos alunos e professores. Cabe ressaltar que a engine em desenvolvimento é multi-plataforma, possibilitando desenvolver jogos para ambientes Linux e Windows, bastando re-compilar o código original para a nova plataforma.

PALAVRAS-CHAVE: Desenvolvimento de jogos; Engine para Jogos; Programação; Ensino de Lógica.