O Jogo da Forca 3D
Um Jogo da Forca que escrevi em 1993 para uso em cursos de informática para crianças. Animação 3D a 320x240 com mapas de textura, mensagens sarcásticas e dicionário configuráveis, fontes
anti-aliased, tudo isso com velocidade decente para os 386s e 486s da época -- e roda até hoje.
Tela principal do jogo | | Tela de saída com senha | | Tela de créditos | |
Sobre o jogo
Um requisito de projeto era que ele fosse usado em sala de aula por crianças irriquietas. Por isso, é deliberadamente difícil sair do jogo: ao pressionar F10 para sair, o jogo pede uma senha que presumivelmente só o instrutor saberia. Ela fica no arquivo de configuração e o
default é "VON NEUMANN".
A idéia era ter um visual fantástico/surreal, daí minha opção por fazer tudo em 3D (essa escolha foi minha) -- coisas em 3D chamavam bastante atenção naquela época. Havia outra razão mais pragmática: eu não sabia desenhar, então não teria como fazer arte baseada em bonequinhos ou personagens fofinhos, como é comum em programas para crianças.
O símbolo com uma esfera e vários romboedros girando no topo da janela era o logotipo da empresa que me encomendou o programa, o
ITECI. De novo, minha falta de habilidade artística me fez optar por uma solução mais técnica. Eu procurei vender a idéia como propaganda para a empresa, pois o logotipo era parte integrande do jogo. Mas alguns diretores não curtiram o lance do logotipo ser mutilado à medida em que o jogador errava.
Já naquela época, as crianças vinham ficando cada vez mais petulantes. Por isso, o conjunto
default de mensagens tenta ser um tanto provocativo.
Eu mesmo nunca ministrei aulas usando esse programa nem acompanhei o resto do projeto do ITECI sobre ensino para crianças. Em algumas das InfoNordeste da vida, eu via o programa sendo demonstrado nos stands, o que eu achava hilário.
Em uma dessas coincidências que provam que a comunidade de TI de Recife é uma pequena panelinha, um dos instrutores que usou esse programa foi
Aldo Albuquerque, hoje um dos mais antigos integrantes da
Tempest.
Técnicas interessantes
A renderização usava algumas rotinas altamente otimizadas desenvolvidas por
Michael Abrash e publicadas na
revista Dr. Dobbs Journal para fazer as transformações lineares (rotações, translações, etc) e o desenho dos polígonos texturizados totalmente usando aritmética inteira. Os
loops mais internos foram escritos em assembler.
O engenho de fontes e outros efeitos gráficos, tais como o degradê do fundo, fontes com
anti-aliasing e
fades, bem como toda a modelagem geométrica, fui eu mesmo que fiz -- na época, usando o Borland C++ 3.1 (mas a maioria do programa foi escrito em C puro). Isso tudo foi antes do meu envolvimento com redes e segurança; na época, meu fascínio era computação gráfica.
O jogo usava o então popular
modo X das
placas de vídeo VGA, que suportava 256 cores e, mais importante, o
buffer duplo imprescindível para evitar piscadeiras causadas pelo redesenho dos quadros da animação -- hoje uma técnica banal conhecida como "double buffering".
O programa também oferecia tratamento correto dos acentos gráficos da língua Portuguesa -- uma banalidade hoje em dia graças ao
Unicode, mas uma raridade na época do
DOS; e essencial para um programa que pretendia ser educativo.
O programa verifica um
checksum das mensagens da primeira tela de créditos (a única que é
hardcoded) para dificultar que ela fosse alterada -- prática comum entre os piratas de software da época.
Licenciamento e Downloads
Depois de 15 anos, suspeito que um programa tão obsoleto não seja mais útil nem para o ITECI, de sorte que eu não vejo problemas em colocá-lo no domínio público. Mesmo à época eu já o via sendo copiado indiscriminadamente em listas de arquivos de
BBSs, quanto mais hoje em dia.
Eu perdi os fontes originais há muitos anos atrás. Quando finalmente reencontrei em um backup, o disquete só dava erro de leitura. Se algum dia eu encontrar algum outro backup que leia, eu posto aqui.
topo