Allegro能做什么?

Allegro库将为你处理:

  • GUI

Allegro将创建一个普通窗口来呈现你的游戏。这看起来没什么大不了,但不同操作系统创建窗口的方式天差地别,窗口与键盘鼠标交互的方式也不尽相同。

  • 事件

每当按下一个键、移动一下鼠标或点击某个位置时,操作系统都会产生一个事件。事件其实就是一条数据,它告诉你计算机中发生了什么。事件在发送到程序之前会先进入一个队列。而Allegro简化了响应事件的过程,你能轻而易举地写出一段在用户按下空格(发射加农炮)时运行的代码。

  • 定时器

你已经见识过了系统级定时器。Allegro提供了一种简单的方式为你的游戏加上“心跳”。游戏每秒钟会“心跳”好几次以确保显示能够持续更新。通过定时器,你就能创建一个按固定帧率(FPS)刷新屏幕的程序,比如每秒60帧。

  • 图形缓冲

为了让你的游戏流畅运行,Allgero使用了双缓冲。双缓冲是一种游戏开发技术,它允许你先把图片缓存起来,然后再把它们显示到屏幕上,这样就能一次显示完整的一帧动画,游戏就更流畅了。

  • 图形和变换

Allegro自带了一组图形原语,你可以用它们绘制直线、曲线、文本、实心图形和图片。如果你安装了OpenGL显卡驱动,还能绘制三维图形。除此之外,Allegro还支持变换,即在屏幕上旋转、平移、拉伸图形,这样你就能创建出逼真的宇宙飞船,并且让彗星在屏幕中辗转腾挪。

  • 声音

Allegro有一个完整的声音库,有了它你就可以在游戏中加入声音。