Hoje é Dom Set 05, 2010 12:17 pm






Criar novo tópico Responder Tópico  [ 1 Mensagem ] 
Conhecendo Allegro 
Autor Mensagem
Avatar de usuário

Data de registro: Qua Mar 04, 2009 12:40 pm
Mensagens: 33
Mensagem Conhecendo Allegro
Allegro (Biblioteca)

Allegro é uma biblioteca livre de código fonte aberto para o desenvolvimento de jogos.

O objetivo principal é a independência da plataforma de operação. O mesmo código-fonte, sem tirar nem pôr um único caractere que seja, deve compilar e rodar em todas as plataformas suportadas. Um objetivo de curto prazo é a plataforma 64-bits.

O seu principal uso é no escopo da programação de jogos. Atualmente ela possui uma grande comunidade pois além de possuir diversos recursos nativamente (gráficos 2D, 3D com OpenGL, entrada de dados pelo teclado e mouse, RLE-Sprites, exibição de vídeos e controle de som) a API é bastante extensível fazendo que com existam diversos addons disponíveis (pacotes extras).

A interface pública de acesso da biblioteca é escrita em C ou C++, porém há alguns extensores (não-oficiais) para outras linguagem de programação. Internamente seu código fonte é escrito em uma mistura de C, Assembly (drivers i386), C++ e Objective-C.

Historicamente, um ponto forte do Allegro era sua performance. Uma parcela de seu código fonte era escrita de forma otimizada em Assembler para situações em que tempo de processamento é fundamental. Quando seu código fonte deixou de ser escrito exclusivamente para DOS alguns desses processamentos críticos passaram a ser feitos pelo sistema operacional, como por exemplo, com o uso interno da biblioteca DirectX (Som e Vídeo) no Windows, as bibliotecas OpenGL (Vídeo) e OpenAL (Áudio) para GNU/Linux.

História

A biblioteca Allegro foi originalmente compilada por Shawn Hargreaves para a plataforma Atari ST, mas com o desaparecimento desta plataforma Allegro fez uma breve passagem pelo Borland C até ser adotada pelo DJGPP onde alcançou sua maturidade, em uma mistura de Código C com Assembly.

Há muito tempo deixou de ser uma pequena biblioteca modo 13 e hoje utiliza recursos modernos como DirectX, OpenGL ou um Servidor X. Uma grande quantidade de pacotes adicionais pode ser encontrada na página principal do projeto. Por apresentar uma sintaxe simples e encapsular diversas rotinas complexas em comandos facilmente decoráveis, tornou-se uma API ideal para iniciantes e para projetos que disponham de pouco tempo para sua finalização.

Curiosidade: Em música, a palavra italiana "allegro" significa "rápido, vivo, brilhante". Também pode ser um acrônimo recursivo para "Allegro Low LEvel Game ROutines".

Plataformas Suportadas (Oficiais)

    * DOS/DJGPP
    * DOS/Watcom
    * Windows/MSVC
    * Windows/MinGW32
    * Windows/Cygwin
    * Windows/Borland
    * Windows/DMC
    * Linux (console)
    * Unix (X)
    * MAC OS X - Darwin (X11)
    * BeOS
    * QNX
    * Mac OS/MPW

Especificações (Algumas)

    * Suporte em código para as plataformas DOS, Windows, Unix, BeOS, QNX, e Mac OS.
    * Funções de desenho incluindo putpixel (plotar pixel), getpixel (ler pixel), linhas, retângulos, texturas simples, preenchimento gouraud (forma de preencher suavemente entre um tom e outro de cor), curvas, preenchimento baseado em padrões, mascaramento, sprites compilados, mudança de escala em imagens e rotação, transparência e luz, texto com suporte a fontes, remoção de bordas e imagens que não aparecem na tela para ganho de desempenho, e pode desenhar diretamente para memória de vídeo ou imagens em memória independente do tamanho.
    * Drive gráfico para DOS com suporte a VGA (mode 13h) mode-x, e modos SVGA com modos com profundidade de cor de 8, 15, 16, 24, e 32 bits, utilização de todas vantagens do VBE 2.0 mascaramento para mapeamento linear e acesso a aceleração de Hardware se disponível. Suporte para outras funcionalidades de vídeo disponível por meio do projeto FreeBE/AF;
    * Drive gráfico para windows usando directX em modo tela cheia e para modos janela diversas rotinas para desenho direto nos contextos de renderização da GDI.
    * Drive gráfico para Unix para X, DGA, fbcon, SVGALib, VBE/AF, modo-X, e o modo vga padrão.
    * Drive gráfico para BeOS utilizando BWindowScreen em modo tela cheia e BDirectWindow em modo janela.
    * Movimento da tela em hardware e triple buffering [i](utilização de 3 paginas de memória para melhorar a animação)[i], e manipulação de paleta de cores. Player integrado de vídeos FLI/FLC.
    * Suporte para musica MIDI com mais de 64 efeitos simultâneos, possibilidade de gravação de arquivos wav e entrada de MIDI. Suporte simplificado para acesso de teclado, mouse, joystick, e temporizadores de alta fidelidade, incluindo retrância vertical simulada para a versão DOS.
    * Rotinas para leitura de arquivos comprimidos com LZSS. Suporte para arquivos de dados com múltiplos objetos.
    * Funções matemáticas incluindo aritmética de ponto fixo, tabelas trigonométricas pré-compiladas, e manipulação de vetores/matrizes 3D. Diversas rotinas para operação com GUI gerenciado pela allegro.
    * Suporte interno para caracteres 16 e UTF-8 bits.

_________________
"Programar ou não programar... Eis a questão!"
www.brdoom.com


Ter Jun 09, 2009 12:16 pm
Perfil E-mail WWW
Mostrar mensagens anteriores:  Organizar por  
Criar novo tópico Responder Tópico  [ 1 Mensagem ] 



Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante


Você não pode criar novos tópicos neste fórum
Você não pode responder tópicos neste fórum
Você não pode editar suas mensagens neste fórum
Você não pode excluir suas mensagens neste fórum
Você não pode enviar anexos neste fórum

Procurar por:
Ir para:  
cron

F5cursos.com - Seu lugar de atualizações!!!
Av. Adolfo Pinheiro, 2464 Santo Amaro São Paulo - (11) 2771-2000