`
javababy1
  • 浏览: 1174285 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Allegro学习笔记一

阅读更多

http://wiki.allegro.cc/AllegroExamples以上是英文例子站点。

目录: 1 Allegro 例子

1.1 exhello
#include <allegro.h>
int main(void)
{
//任何使用allegro的程序都应该以此开头
if (allegro_init() != 0)
return 1;

// 初始化键盘
install_keyboard();

/*设置图形显示模式320 X 200 */
if (set_gfx_mode(GFX_AUTODETECT, 320, 200, 0, 0) != 0) {
if (set_gfx_mode(GFX_SAFE, 320, 200, 0, 0) != 0) {
set_gfx_mode(GFX_TEXT, 0, 0, 0, 0);
allegro_message("Unable to set any graphic mode\n%s\n", allegro_error);
return 1;
}
}

/* 设置调色板 */
set_palette(desktop_palette);

/*用白色清屏 */
clear_to_color(screen, makecol(255, 255, 255));

/* 你不一定非要调用此函数,
* 但是在某些平台上(比如Windows) 如果每次在你向屏幕绘制任何图像之前调用它
* 你将获得更快的绘制速度
*/
acquire_screen();

/*用黑色的字体和透明的背景色来向屏幕输入一些文字 */
textout_centre_ex(screen, font, "Hello, world!", SCREEN_W/2, SCREEN_H/2, makecol(0,0,0), -1);

/* 在调用任何处理用户输入的函数之前,你必须释放掉位图(屏幕或屏幕缓冲位图) */
release_screen();

/*等待用户按下某个键*/
readkey();

return 0;
}

END_OF_MAIN()

-----------------------------------------------------------------------------------------------------------------------------------

小结:

使用allegro的公式:
1、allegro_init(); // 必须的
2、install_keyboard(); // 初始化,相关的还有install_mouse(); install_joystick();
3、set_gfx_mode(标志量,屏幕宽,屏幕高,0,0); // 设置显示模式
4、set_palette(desktop_palette); // 设置调色板
5、绘制
5.1clear_to_color(screen,makecol(255,255,255));// 清理屏幕。很明显,这并不是真正的清理。
5.2 acquire_screen(); // 锁屏
5.3textout_centre_ex(screen, font, "Hello,world!", SCREEN_W/2,SCREEN_H/2,makecol(0,0,0),-1); // 000字体颜色/黑色,-1背景颜色/透明。
5.4 release_screen(); // 释放屏幕 与 acquire_screen()相对。
6、readkey();响应用户输入事件
7、END_OF_MAIN // 必须的

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics