当前位置:文档之家› 嵌入式网络协议及其应用开发课程设计报告_基于SDL的记忆小游戏

嵌入式网络协议及其应用开发课程设计报告_基于SDL的记忆小游戏

课程设计说明书

学生信息

系别计算机工程学院专业计算机科学与技术

班级姓名学号

课程设计信息

课程名称嵌入式网络协议及其应用开发课程设计

课程设计题目基于SDL的记忆小游戏

课程设计时间学期第 1~16 周

小组情况指导教师

批改情况

成绩评阅教师批改时间

2011-2012学年第2 学期

目录

1.课程设计内容 (3)

2.课程设计目的 (3)

3.背景知识 (3)

4.工具/准备工作 (4)

5.设计步骤与方法 (4)

5.1. 步骤1:在photoshop下编辑图片 (4)

5.2. 步骤2:编译程序 (4)

5.2.1. 步骤2.1:安装SDL (4)

5.2.2. 步骤2.2:linux下编译执行 (5)

5.3. 步骤4:设计游戏代码 (5)

6.设计结果及分析 (17)

7.设计结论 (17)

8.问题及心得体会 (17)

9.对本设计过程及方法、手段的改进建议 (17)

10.任务分配 (17)

11.参考文献 (17)

课程设计报告

1. 课程设计内容

本课程设计的内容是设计一个基于SDL的记忆小游戏。

2. 课程设计目的

考察自己对课程的掌握程度,以及自己实际的动手能力,编程能力。

3. 背景知识

网络应用程序的基本实现方法

网络游戏的基本实现原理

●SDL是Simple DirectMedia Layer(简易直控媒体层)的缩写。它

是一个跨平台的多媒体库,以用于直接控制底层的多媒体硬件的接口。

●这些多媒体功能包括了音频、键盘和鼠标(事件)、游戏摇杆等。

●当然,最为重要的是提供了2D图形帧缓冲(framebuffer)的接口,

以及为OpenGL与各种操作系统之间提供了统一的标准接口以实现3D图

形。

●SDL是一个跨平台的多媒体函数库,被用来设计成在低层访问音频,

键盘,鼠标,游戏杆,基于OPENGL(一个3D图象开发函数库)的3D 硬

件,和2D图象帧缓冲区。它被广泛的用于基于MPEG的媒体播放软件,模

拟器,和许多著名的游戏。

●SDL是一个跨平台的函数库,几乎支持现今所有平台:Linux, Windows,

Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX。

4. 工具/准备工作

硬件:

安装有windowsXP 以上版本的操作系统PC 机一台

建议配置是CPU PIV 以上,512M 内存以上, 20G 硬盘空间以上

ARM2200教学实验开发平台

软件:

安装Photoshop

VMware 6.0,debian

5. 设计步骤与方法

5.1. 步骤1:在photoshop 下编辑图片

5.2. 步骤2:编译程序

5.2.1. 步骤2.1:安装SDL

使用命令“sdl-config -cflags ”来检查是否已安装SDL 。如果没有安装,可以选择上网安装,或从源码包安装:

上网安装:首先确保能联上internet (如果没有联上互联网可参考《Linux 相关

实验常见问题.doc 》).并在命令行下输入 :apt-get install libsdl1.2-dev

libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev。系统将自动完成安装 从源码包安装:拷贝SDL-1.2.13.tar.gz至linux主机/home/test目录,然后执行命令:tar xvzf tar xvzf SDL-1.2.13.tar.gz SDL-1.2.13.tar.gz, 执行后,将在本地生成一个SDL-1.2.13的目录,进入这个目录,在root权限下,依次执行./configure;

make; make install

5.2.2.步骤2.2:linux下编译执行

1)将源文件sdl_simple_game.cpp拷贝到linux主机

2)进行编译:g++ -o t sdl_simple_game.cpp –L/usr/lib –lSDL,生成

可执行文件

3)执行 ,在命令行输入./t

5.3. 步骤4:设计游戏代码

//The headers

#include "SDL/SDL.h"

#include "SDL/SDL_image.h"

#include

#include

//Screen attributes

const int SCREEN_WIDTH = 721;

const int SCREEN_HEIGHT = 721;

const int SCREEN_BPP = 32;

//The frames per second

const int FRAMES_PER_SECOND = 10;

//The dimenstions of the stick figure

const int FOO_WIDTH = 180;

const int FOO_HEIGHT = 180;

const int Begin=0;

const int Run=1;

const int End=2;

bool flag[4][4];

int tu[4][4];

int tu_x;

int tu_y;

相关主题