Allegro能做什么?
Allegro库将为你处理:
- GUI
Allegro将创建一个普通窗口来呈现你的游戏。这看起来没什么大不了,但不同操作系统创建窗口的方式天差地别,窗口与键盘鼠标交互的方式也不尽相同。
- 事件
每当按下一个键、移动一下鼠标或点击某个位置时,操作系统都会产生一个事件。事件其实就是一条数据,它告诉你计算机中发生了什么。事件在发送到程序之前会先进入一个队列。而Allegro简化了响应事件的过程,你能轻而易举地写出一段在用户按下空格(发射加农炮)时运行的代码。
- 定时器
你已经见识过了系统级定时器。Allegro提供了一种简单的方式为你的游戏加上“心跳”。游戏每秒钟会“心跳”好几次以确保显示能够持续更新。通过定时器,你就能创建一个按固定帧率(FPS)刷新屏幕的程序,比如每秒60帧。
- 图形缓冲
为了让你的游戏流畅运行,Allgero使用了双缓冲。双缓冲是一种游戏开发技术,它允许你先把图片缓存起来,然后再把它们显示到屏幕上,这样就能一次显示完整的一帧动画,游戏就更流畅了。
- 图形和变换
Allegro自带了一组图形原语,你可以用它们绘制直线、曲线、文本、实心图形和图片。如果你安装了OpenGL显卡驱动,还能绘制三维图形。除此之外,Allegro还支持变换,即在屏幕上旋转、平移、拉伸图形,这样你就能创建出逼真的宇宙飞船,并且让彗星在屏幕中辗转腾挪。
- 声音
Allegro有一个完整的声音库,有了它你就可以在游戏中加入声音。