Board logo

标题: 新DOS编程的利器--Allegro介绍 [打印本页]

作者: Wengier     时间: 2003-5-24 00:00    标题: 新DOS编程的利器--Allegro介绍

Allegro是近年来著名的编程库,非常强大实用,下面就来简单的介绍一下:

Allegro is a portable library mainly aimed at video game and multimedia programming, originally started by Shawn Hargreaves for the DJGPP compiler in a mixture of C and assembler.
According to the Oxford Companion to Music, Allegro is the Italian for «quick, lively, bright». It is also a recursive acronym which stands for «Allegro Low LEvel Game ROutines».

Graphic functions(图形功能)

Vectorial drawing:
pixels, lines, rectangles, circles, ellipses, arcs, Bezier splines
shape fill, with or without pattern
polygons: flat, Gouraud, textured and translucent
Sprites:
masked, compressed and compiled sprites
blitting, rotation, stretching, reduction, alpha blending, Gouraud shading
native support for BMP, LBM, PCX and TGA files (others supported with library extensions)
Color palettes:
color palette manipulation (reading, writing, conversion)
conversion of color formats RGB  HSV
Texts:
text output in Unicode format (masking, colouring, alignment)
Misc:
draw directly on the screen or on any-size memory bitmaps
hardware scrolling and triple buffering (where available), mode-X split screen
animation functions for FLI/FLC format

Graphic drivers

Dos:
VGA 13h mode
mode-X (23 VGA resolution plus unchained 640x400 extended mode)
SVGA modes in 8, 15, 16, 24 and 32 bits per pixel
linear VBE 2.0 framebuffer access
hardware acceleration through VBE/AF API if supported
additional graphic drivers through FreeBE/AF project

Sound functions(声音功能)

Midi:
native MIDI music format support (with 64 simultaneous effects)
dynamic control/response to music note on, note off, main volume, pan, pitch bend, and program change
uses General MIDI patches
you can read in wavetable patches for MIDI files (SF2 and GUS patches)
Wave:
native support of WAV and VOC file formats (playing looped forward, backwards or bidirectional)
streaming audio
modify volume, pan, pitch, etc during play

Sound drivers

Dos:
Adlib, SB, SB Pro, SB16, AWE32
MPU-401
ESS AudioDrive
Ensoniq Soundscape
Windows Sound System

Math functions(数学功能)

fixed point aritmetic and trigonometric routines
precalculated trigonometric tables
vector/matrix/quaternions 3d manipulation (translation, rotation, scaling, projection)

Misc(其它功能)

mouse, keyboard and joystick management
high resolution interruption timers (resolution of 10, 5 or less ms depending on platform)
vertical retrace symulation under DOS
manipulate configuration files
manipulate compressed files in LZSS format
manipulate multi-object resource-like compressed datafiles
tool for creating datafiles (grabber)
simple GUI for dialogs and file selector
作者: Wengier     时间: 2003-6-2 00:00
顶!