免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1961 | 回复: 0
打印 上一主题 下一主题

SDL系列教程(三):DEV C++中的配置 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-26 11:10 |只看该作者 |倒序浏览
SDL系列教程(三):DEV C++中的配置   

作者:akinggw

   首先,我要在这里感谢大家对我工作的大力支持,从昨天到今天的浏览人数来看,大家还是挺关心这个栏目的,在此,我要谢谢大家。
在上一篇教程中,我们讲解了如何在VC6中配置SDL。不知道你学会没有,我想我的讲解还是挺清楚的。如果你还没明白,请来信给我,
[email=我的email是%20akinggw@126.com]我的email是 akinggw@126.com[/email]

在这篇教程中,我们将讲解在DEV C++中配置SDL。上一篇教程中,我们已经说过,DEV C++是一个免费的编译器。关于DEV C++的下载地址请参考上一篇文章。
OK!下面,我们就开始配置SDL,(好期待吆…….)

首先,下载DEV C++ 4.9.9.2,下载后然后双击它,安装后的界面如下所示:  


DEV C++安装好以后,我们就需要SDL的库文件,到SDL的官方网站
http://www.libsdl.org
.
在下载页面中,你会找到下面这个文件(就是红线所指的那个文件),点击它,把它下载下来。

下载后,然后双击它,把它解压到任何一个目录上。

然后,我们就将在DEV C++中配置它:

A.                首先将SDL文件中子目录lib里的全部文件拷贝到DEV C++所在的lib子目录中,地址应该在 C:Dev-Cpplib。
B.                 然后将SDL文件中子目录bin里的全部文件拷贝到DEV C++所在的bin子目录中,地址应该在c:dev-cppbin .
C.                在DEV C++文件中子目录include里建立一个新的文件夹“SDL”。地址应该在c:dev-cppinclude .
D.                然后将SDL文件中子目录include里的全部文件拷贝到我们刚才在DEV C++ 文件子目录include下建立的新文件夹SDL中。
E.                 最后将DEV C++文件中bin目录下的SDL.dll文件拷贝到C:WINDOWSSYSTEM32文件中。
   
   现在,打开DEV C++,然后在”File”->”New”->”Project”,打开一个新的空的项目:

然后在菜单上选择”Project”->”Project Options”


在General表中Type选项选择Win32 GUI.,这样做的目的是保证我们的程序不被弹出。


然后选择Parameters表,在Linker中输入下面的东西:
-lmingw32 -lSDLmain –lSDL

最后在项目中添加一个新的源代码文件。


然后在文件中输入以下代码:

#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "SDL/SDL.h"
#include "windows.h"

SDL_Surface *screen = NULL;       //屏幕接口


int main( int argc, char* args[] )   //主程序
{
       char *msg;                       // 得到系统消息
       int done;                        

   
       /* 初始化SDL */
       if (SDL_Init (SDL_INIT_VIDEO)
    {
        sprintf (msg, "不能初始化 SDL: %sn", SDL_GetError ());
        MessageBox (0, msg, "Error", MB_ICONHAND);
        free (msg);
        exit (1);
    }
    atexit (SDL_Quit);  

    /* 设置 640x480 16-bits 图象模式 */
    screen = SDL_SetVideoMode (640, 480, 16, SDL_SWSURFACE | SDL_DOUBLEBUF);
   
       if (screen == NULL)
    {
        sprintf (msg, "不能设置成 640x480x16 图象模式: %sn",
          SDL_GetError ());
        MessageBox (0, msg, "Error", MB_ICONHAND);
        free (msg);
        exit (2);
    }
      
       /*设置SDL窗口标题 */
    SDL_WM_SetCaption ("hello,the world", NULL);
   
       done = 0;
      
       //游戏循环 done=1时退出,done=0时继续
    while (!done)
    {
        SDL_Event event;

        /* Check for events */
        while (SDL_PollEvent (&event))
        {
            switch (event.type)
            {
            case SDL_KEYDOWN:
                break;
            case SDL_QUIT:
                done = 1;
                break;
            default:
                break;
            }
        }

    }
    SDL_Quit();
    return 0;   
}
如果运行成功,它将显示一个空的窗口。
如图所示:



关于更多内容请访问金桥科普网站(
http://popul.jqcq.com/computer/gdev/
)游戏开发栏目,如果你需要游戏开发方面的书籍请参考金桥书城游戏频道(
http://book.jqcq.com/category/1_70_740.html
)。 如果你在阅读本篇文章时有什么好的建议请来信给我,我的E_mail: akinggw@126.com. 如果你在使用SDL时有什么问题,请到金桥科普网站(
http://popul.jqcq.com/computer/gdev/
  )游戏开发栏目,我将详细地为你解答。

在下一章中,我们将讲解如何用SDL显示图象。



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/19671/showart_118359.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP