fbpx
维基百科

Allegro

Allegro是一个特别针对于电子游戏的开发的自由软件程式库[3][4][5]

Allegro
徽标
開發者Allegro的开发者
目前版本
  • 4.4.3.1 (2019年3月4日)[1]
  • 5.2.6.0 (2020年2月10日)[2]
源代码库
  • github.com/liballeg/allegro5
操作系统跨平台
类型多媒体电子游戏相关SDK
许可协议Allegro 4: Giftware(类似MIT许可证
Allegro 5: Zlib
网站liballeg.org

该库提供基本二维图形、图像操作、音效输出、MIDI音乐、输入、计时器,以及额外的寻路矩阵计算、UNICODE、文件系统管理、有限而建基於軟件的三维图形。

其版本4.0可以运行在DOSMicrosoft WindowsBeOSMac OS X、多种类Unix,程序只需要嵌入其API即可使用。该库还有独立的AmigaOS 4移植版。

该库使用C语言编写,适用于C或C++,其附带很多文档和实例。

附件

Allegro社区用户贡献了多种扩展,包括轴卷图块形式的地图、输入输出各种格式(有PNGGIFJPEGMPEGOggMP3、IT、S3M、XMTTF)。其还有多个语言绑定,比如 PythonPerlSchemeC#D语言等。

历史

Allegro原本的含义是"Atari Low-Level Game Routines"[6] 。20世纪90年代初由Shawn Hargreaves为Atari ST创造,1995年Shawn因为Atari即将消失而抛弃了对其支持又引入了Borland C++ 和DJGPP编译器。Borland C++ 在2.0版本被抛弃,DJGPP是唯一被支持的编译器——Allegro因此只能用于DOS。1998年前后, Allegro发展出了很多版本,对应Microsoft Windows的WinAllegro、对应类Unix的XwinAllegro,这些融入了Allegro 3.9 WIP版本,这样Allegro 4.0成为首个多平台稳定版本,当前支持Unix (Linux, FreeBSD, Irix, Solaris, Darwin), Windows (MSVC, MinGW, Cygwin, Borland C++), BeOS, QNX, Mac OS X, DOS (DJGPP, Watcom)。

硬件加速3D/2D应用于Linux、Mac OS X、DOS采用多种方式,包括AllegroGL和OpenLayer。它们是两个附件add-on库,通过OpenGL实现。结合Glide和MesaFX (3dfx),AllegroGL是少数对应DOS的开源3D硬件加速方案。[7]

功能

  • 向量绘制:
    • 像素、线、矩形、圆柱、贝塞尔曲线等几何图形、
    • 有图案(Pattern)或者没有图案的形状填充(Shape Fill)
    • 各种多边形(Polygons):单调(Flat)、内插均匀(Gouraud)、三维纹理(3D Textured)和半透明( Translucent)
  • 图块:
    • 掩码(Masked)、压缩(Compressed)和编译(Compiled)三种精灵(Sprites)
    • 位块传输(Blitting)、旋转(Rotation)、拉伸(Stretching)、挤压(Reduction)、α通道混色(Alpha Blending)、内插均匀着色(Gouraud Shading)
    • 内建BMP、LBM、PCX、TGA文件格式支持,其他的可通过扩展库支持
  • 各种调色板(Color Palettes):
    • 调色板的操纵(读、写、转换)
    • RGB和HSV两种色彩格式(Color Formats)之间的转换
  • 文字:
    • 支持多种编码之间的转换,默认UTF-8
    • 点阵字体:掩码(Masking)、彩色(Colouring)、对齐(Alignment)
  • 其他:
    • 直接在屏幕或任意大小的内存位图(Memory Bitmaps)中进行绘制
    • 硬件轴卷(Hardware Scrolling)和三缓存(Triple Buffering)(前提是该处可用)、X模式(mode-X)的分屏(Split Screen)
    • 用于FLI/FLC格式的动画函数[8]

Allegro 5

目前的开发着手在Allegro 5这条分支,4.9.14是其不稳定的版本。Allegro 5对库的API及其大量的内部操作进行了完全重新的设计,致力于使API能更稳定地适用于多核间的协同工作。其默认使用OpenGL或DirectX硬件加速渲染后端,当前的大多数插件都需要重写接口。

其他

参考资料

  1. ^ Release 4.4.3.1. 2019年3月4日 [2019年3月4日]. 
  2. ^ Release 5.2.6.0. 2020年2月10日 [2020年5月6日]. 
  3. ^ Harbour, Jonathan. Game Programming All in One, Second Edition. Course Technology PTR. 2004. ISBN 1592003834. 
  4. ^ Steinke, Lennart. Spielprogrammierung. BHV Verlag. 2003. ISBN 3826680758. 
  5. ^ P. J. Deitel, P. J. C How to Program. HowtoProgram. Prentice Hall. 2006. ISBN 0-13-240416-8. 
  6. ^ Forum posting by Shawn Hargreaves. [2009-10-26]. (原始内容于2009-01-08). 
  7. ^ Daniel Borca. Mesa 3-D graphics library. [2009-10-26]. (原始内容存档于2009-10-25). 
  8. ^ . [2009-10-26]. (原始内容存档于2009-12-01). 

外部链接

(英文)

allegro, 此條目介紹的是一個开发电子游戏的软件程式库, 关于表示音樂中的快板, 请见, 快板, 是一个特别针对于电子游戏的开发的自由软件程式库, 徽标開發者的开发者目前版本4, 2019年3月4日, 2020年2月10日, 源代码库github, liballeg, allegro5操作系统跨平台类型多媒体和电子游戏相关sdk许可协议, giftware, 类似mit许可证, zlib网站liballeg, org该库提供基本二维图形, 图像操作, 音效输出, midi音乐, 输入, 计时器, 以及额外的寻. 此條目介紹的是一個开发电子游戏的软件程式库 关于表示音樂中的快板 请见 快板 Allegro是一个特别针对于电子游戏的开发的自由软件程式库 3 4 5 Allegro徽标開發者Allegro的开发者目前版本4 4 3 1 2019年3月4日 1 5 2 6 0 2020年2月10日 2 源代码库github wbr com wbr liballeg wbr allegro5操作系统跨平台类型多媒体和电子游戏相关SDK许可协议Allegro 4 Giftware 类似MIT许可证 Allegro 5 Zlib网站liballeg wbr org该库提供基本二维图形 图像操作 音效输出 MIDI音乐 输入 计时器 以及额外的寻路矩阵计算 UNICODE 文件系统管理 有限而建基於軟件的三维图形 其版本4 0可以运行在DOS Microsoft Windows BeOS Mac OS X 多种类Unix 程序只需要嵌入其API即可使用 该库还有独立的AmigaOS 4移植版 该库使用C语言编写 适用于C或C 其附带很多文档和实例 目录 1 附件 2 历史 3 功能 4 Allegro 5 5 其他 6 参考资料 7 外部链接附件 编辑Allegro社区用户贡献了多种扩展 包括轴卷图块形式的地图 输入输出各种格式 有PNG GIF JPEG MPEG Ogg MP3 IT S3M XM TTF 其还有多个语言绑定 比如 Python Perl Scheme C D语言等 历史 编辑Allegro原本的含义是 Atari Low Level Game Routines 6 20世纪90年代初由Shawn Hargreaves为Atari ST创造 1995年Shawn因为Atari即将消失而抛弃了对其支持又引入了Borland C 和DJGPP编译器 Borland C 在2 0版本被抛弃 DJGPP是唯一被支持的编译器 Allegro因此只能用于DOS 1998年前后 Allegro发展出了很多版本 对应Microsoft Windows的WinAllegro 对应类Unix的XwinAllegro 这些融入了Allegro 3 9 WIP版本 这样Allegro 4 0成为首个多平台稳定版本 当前支持Unix Linux FreeBSD Irix Solaris Darwin Windows MSVC MinGW Cygwin Borland C BeOS QNX Mac OS X DOS DJGPP Watcom 硬件加速3D 2D应用于Linux Mac OS X DOS采用多种方式 包括AllegroGL和OpenLayer 它们是两个附件add on库 通过OpenGL实现 结合Glide和MesaFX 3dfx AllegroGL是少数对应DOS的开源3D硬件加速方案 7 功能 编辑向量绘制 像素 线 矩形 圆柱 贝塞尔曲线等几何图形 有图案 Pattern 或者没有图案的形状填充 Shape Fill 各种多边形 Polygons 单调 Flat 内插均匀 Gouraud 三维纹理 3D Textured 和半透明 Translucent 图块 掩码 Masked 压缩 Compressed 和编译 Compiled 三种精灵 Sprites 位块传输 Blitting 旋转 Rotation 拉伸 Stretching 挤压 Reduction a通道混色 Alpha Blending 内插均匀着色 Gouraud Shading 内建BMP LBM PCX TGA文件格式支持 其他的可通过扩展库支持 各种调色板 Color Palettes 调色板的操纵 读 写 转换 RGB和HSV两种色彩格式 Color Formats 之间的转换 文字 支持多种编码之间的转换 默认UTF 8 点阵字体 掩码 Masking 彩色 Colouring 对齐 Alignment 其他 直接在屏幕或任意大小的内存位图 Memory Bitmaps 中进行绘制 硬件轴卷 Hardware Scrolling 和三缓存 Triple Buffering 前提是该处可用 X模式 mode X 的分屏 Split Screen 用于FLI FLC格式的动画函数 8 Allegro 5 编辑目前的开发着手在Allegro 5这条分支 4 9 14是其不稳定的版本 Allegro 5对库的API及其大量的内部操作进行了完全重新的设计 致力于使API能更稳定地适用于多核间的协同工作 其默认使用OpenGL或DirectX硬件加速渲染后端 当前的大多数插件都需要重写接口 其他 编辑 电子游戏主题 自由软件主题 SDL Simple DirectMedia Layer DirectX OpenGL ClanLib 开放多媒体程序库 OpenML PLIB XNA SFML 英语 SFML 参考资料 编辑 Release 4 4 3 1 2019年3月4日 2019年3月4日 Release 5 2 6 0 2020年2月10日 2020年5月6日 Harbour Jonathan Game Programming All in One Second Edition Course Technology PTR 2004 ISBN 1592003834 Steinke Lennart Spielprogrammierung BHV Verlag 2003 ISBN 3826680758 P J Deitel P J C How to Program HowtoProgram Prentice Hall 2006 ISBN 0 13 240416 8 Forum posting by Shawn Hargreaves 2009 10 26 原始内容存档于2009 01 08 Daniel Borca Mesa 3 D graphics library 2009 10 26 原始内容存档于2009 10 25 Allegro Introduction 2009 10 26 原始内容存档于2009 12 01 外部链接 编辑 英文 Allegro 页面存档备份 存于互联网档案馆 Allegro 5 Documentation 加拿大服务器 页面存档备份 存于互联网档案馆 美国服务器 Allegro Wiki 页面存档备份 存于互联网档案馆 Allegro 5 页面存档备份 存于互联网档案馆 Allegro 5 Tutorials 页面存档备份 存于互联网档案馆 allegro cc 页面存档备份 存于互联网档案馆 Shawn Hargreaves s Homepage 页面存档备份 存于互联网档案馆 Games Using Allegro 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title Allegro amp oldid 73751221, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。