Nesta série de artigos, divida em 9 partes, vamos partir do zero e criar uma versão do clássico Space Invaders compatível com Windows e Linux, utilizando aceleração de hardware para gráficos 2d, suporte a joystick e uma tabela de high scores online.
O jogo é propositalmente simples para que o leitor com pouca experiência na linguagem e no desenvolvimento de games possa acompanhar o texto e o código o início ao fim.
Ao final de cada etapa, como de costume, estarão disponíveis para download tanto o código fonte como o executável equivalente.
Espero que apreciem.
Artigos, pesquisas, tutoriais e projetos multimídia desenvolvidos em object pascal usando Delphi e Lazarus
Refatoração com Class Interceptors e Métodos Anônimos
procedure Foo;
var
qry: TSqlQuery;
begin
qry := TSqlQuery.Create;
try
qry.CommandText := 'select some fields from some table';
qry.Open;
while not qry.Eof do
begin
//processa o registro atual..
//e avança para o próximo
qry.Next;
end;
finally
qry.Close;
FreeAndNil(qry);
end;
end;
Prático e simples, não é?
Pois bem! Image dar manutenção em um sistema onde há milhares de funções exatamente iguais a esta, espalhadas por centenas de units e você começará sentir calafrios.
ASCII Art - Convertendo imagens para ASCII
![]() |
| Saída gerada pelo conversor |
Na época em que os consoles de texto eram a mais comum, se não a única opção de interface disponível para os usuários de computador, as pessoas se valiam de muita criatividade (e um bocado de trabalho) para criar imagens usando somente os caracteres disponíveis na tabela ASCII. Muita coisa boa foi e ainda é criada com essa idéia, incluindo jogos e animações.
Depois de assistir a este vídeo, decidi implementar um pequeno conversor ASCII em pascal. O resultado da empreitada pode ser visto na imagem do rei do rock ao lado, que foi criada usando a versão do conversor criada para este artigo.
Animando o Console - Efeito Matrix Parte II
![]() |
| Saída da 2ª animação em modo texto. Bem mais interessante. |
O objetivo deste primeiro programa era se familiarizar com as funções da API do windows e começar a conhecer o ambiente e suas limitações.
O leitor mais atento poderá ter percebido, entretanto, vários problemas com o programa escrito. O primeiro deles é que não estamos realmente gerando os quadros (frames) de uma animação, estamos simplesmente jogando caracteres na tela da maneira mais displiscente e ineficiente se pode imaginar.
Animando o Console - Efeito Matrix
![]() |
| Saída da 1ª animação em modo texto. Bem vindo à Matrix! :) |
E por que alguém faria isto em pleno ano de 2014 com tantas opções e tantas tecnologias capazes de renderizar imagens super realistas em hardwares comuns e baratos? - eu até posso ouvir você perguntando.
Pelo prazer e pelo desafio, ora bolas! Sinceramente, precisa de mais que isto?
Então vamos começar nos familiarizando com o console dentro do Windows. Segundo a documentação da Microsoft
Consoles gerenciam inputs e outpus (I/O) para aplicações em modo caractere (aplicações que não providenciam sua própria interface gráfica).
Assinar:
Postagens
(
Atom
)



