Histrico

21/4/97:
- inicio da adaptacao do renderizador para o jogo de damas.
- inicio da implementacao de CControle
- desolvido bug em CArquivo::CArquivo ( char*, CUniverso& )

3/5/97:
- movimento das pecas relativo as tabelas
- atualizacao das tabelas de posicoes das pecas e universo
- alterada forma de rotacao para forma relativa ao SRC
- modelo 3D com 24 pecas posicionadas em seus lugares originais
- troca das vezes de jogada
- (bugfix) alterada forma de obter vertices nao sobrepostos antes era usado
 no default os vertices: 1,2,3 (o 3 deveria ser o 4!). Melhorou um pouco a
 qualidade das imagens.

4/5/97:
- render.cc: melhores comentarios sobre iluminacao
- solido.cc: verifica comprimento dos vetores paralelos ao poligono para
 definir vertices nao colineares para calculo do vetor normal.
- controle.cc: mRetPos - implementacao 2 - retorna oque estah numa posicao
- damas.cc: inicio girando e posicao fonte de iluminacao
- (bugfix) cor clara para texto do printf
- (bugfix) corrigido posicionamento das pecas

5/5/97:
- alterado forma de rotacao do tabuleiro
- otimizado remocao de superficies traseiras (soh testa Z do vetor normal)
- aumentado de 4 para 8 possiveis cores nos poligonos (32 tons cada)

6/5/97
- possivel selecionar uma peca
- permite alteracao de cor de poligonos
- (bugfix) poligonos nao apareciam direito, se moviam erradamente =>
 modelo 10 vezes maior que o original (erros ficaram 10 vezes menores)
- mudanca da cor em default.par

11/5/97:
- movimentos e selecao de pecas

12/5/97
- humano ou maquina
- movimentos de dama
- mover pecas
- damificacao
- testa saida de peca do tabuleiro
- alterada numeracao de pecas: comeca em 1 nao 0

16/5/97
- CArquivo: desmembramento em CArquivo3D e CArquivo2d
- CGr: construtor e destrutor podem ou nao iniciar modo grafico, prg. pallete
- CControle: inicio da implementacao de funcoes de validacao (INACABADO)

18/5/97
- CArquivo: funcoes de gravacao de texto e acesso a arquivos binarios
- CGr: salva, restaura, altera toda palette, preenche poligono sem testar se
 pixel jah estah pintado
- CRender: renderiza bitmaps e foi trocada a ordem de desenho dos poligonos
 (agora de tras para frente) - ordenados em ordem descescente
- criacao de CControleSolido e CConroleUniverso
- CControleSolido - faz ordenacao de poligonos
- CArquivo2D: le arquivo PCX, qualquer tamanho
- CImagem: guarda bitmap e palette
- CDamas: mostra instrucoes

19/5/97
- CDamas: teste se todas pecas do usuario morreram
- CControle: verifica se usuario deve comer
- CGr: desenho de linha horizontal usando 32 bits

20/5/97
- CRender: atenuado floating-point-exception aumentando distancia de recorte
 em Z.
- melhorado comentarios em geral
- (bugfix) main(): se jogo era abortadocom o tabuleiro girando dava divisao
 por zero no calculo de frames por segundo. Foi acrescentado mais uma
 variavel para teste.
-?? nao lembro

21/5/97
- CControle: controle do usuario terminado
- alterada distancia para recorte em Z
- CDamas: arrumado alguns bugs na coordenacao por teclado
- CTransf::mEscalaMed - (bugfix) parametros nao eram usados

22/5/97
- CControle: (bugfix) selecao de pecas, diciplinado que entre e sai da funcao
 mJoga valores ORIGINAIS de pecas apenas, evita problemas de selecao erronea
- CDamas: F1 - seleciona peca 13, F2 - mostra posicao das pecas em modo texto
- CGr: palette - escureci a cor das pecas verdes e da peca selecionada.
- CControle: movimento aleatorio em linha reta, sem testes, do adversario

23/5/97
- CControle: bugfix: na selecao automatica de pecas que devem atacar.
 F3 - mostra peca selecionada randomicamente e selecionada que pode jogar.
 bugfix: peca que computador pode mover.
 Inicio das modificacoes para testes de consistencia serem feitos para
 computador.
- CDamas: F4 - reprograma cores das pecas do computador

24/5/97
- depura.h: criado modulo com macros que facilitam depuracao
- CDamas: ao final do jogo tabuleiro aparece girando
- CControle: compudor move pecas apenas nas diagonais, com muitas falhas

26/5/97
- depura.h: DEP_MOSTRA_INT_SE e DEP_TESTA_OP
- CGr: desenho de poligonos nao usa float -> usa 16.16
- CRender: recorte com RECMAXZ e RECMINZ

27/5/97
- depura.h: DEP_TESTA_PASS e demais associados, arrumei DEP_TESTA_OP
- CControle: (bugfix) mRetDeveAtacar soh testava para TIMEC, arrumei

28/5/97
- depura.h: DEP_RETURN, DEP_PASSOU.
- bug: se nao moveu peca selecionada para qualquer direcao nao faz mais nada.
- bug: falta fazer damificacao inimigo.
- bug: falta detectar fim do jogo.
- CControle: come em sequencia, come com outra peca que nao a selecionada.
- recorte Z minimo distanciado em relacao ao CP.

29/5/97
- CControle: resolvido todos os bugs (eu acho) do dia anterior (em mAutoMove,
 e em CDamas). Movimento aleatorio das pecas e com minimax de 1 nivel.
- CDamas: edicao do tabuleiro (F3)
- CTeclado: instalar e desintalar handler e mRetPress (void).

30/5/97
- minimax de varios niveis desotimizado (testava todas pecas) ?
- ???

1/6/97
- minimax de varios niveis otimizado (testava pecas que podiam se mover) ?
- ???

2/6/97
- CGr: desmembrado em CGrVr e CGr
- CDamas e CControle: varios niveis de dificuldade
- CRender: simplificado metodo para exibir bitmaps
- CContruni: funcoes de manipulacao do modelo
- CControle: marcas de processamento dos ramos do minimax na tela
- ???

3/6/97
- CDamas: animacao das pecas mudando de posicao

5/6/97
- readme.txt e preparos para upload (x2ftp.oulu.fi)

6/7/97
- damas.pal: criado arquivo de palette

18/9/98
- damas.pal: apagado arquivo de palette
- inicio do porte para Linux SVGALib
- criada estrutura de diretorios para arquivos do projeto
- removido varias funcoes nao usadas de transf.cc/h
- traducao de mensagens para usuario para o ingles
- F1: ajuda durante partida
- melhores instrucoes no bitmap de ajuda
- dificuldade apenas seleciona 2 ou 3 ou 5 niveis para minimax
- varios bitmaps das perguntas do inicio refeitos
- removido depura.h

19/9/98
- peca selecionda mais destacada; com cor amarela e cintilando
- rand no minimax (funciona apenas mais ou menos)
- barra de progresso vertical
- lerdiador das animacoes do jogo
- bugfix: F1 congelava contagem de frames, mas nao o clock (frame rate errado)

20/9/98
- terminado porte para Linux SvgaLib
- atualizado bitmaps de instrucoes
- documentacao revisada
- bugfix: GPF no minimax
