基于arm平台的俄罗斯方块游戏设计与实现

基于arm平台的俄罗斯方块游戏设计与实现

ID:33699362

大小:671.49 KB

页数:4页

时间:2019-02-28

基于arm平台的俄罗斯方块游戏设计与实现_第1页
基于arm平台的俄罗斯方块游戏设计与实现_第2页
基于arm平台的俄罗斯方块游戏设计与实现_第3页
基于arm平台的俄罗斯方块游戏设计与实现_第4页
资源描述:

《基于arm平台的俄罗斯方块游戏设计与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第18卷第5期河南机电高等专科学校学报Vo.l18!.52010年09月JournalofHenanMechanicalandElectricalEngineeringCollegeSep.2010*基于ARM平台的俄罗斯方块游戏设计与实现袁秀莲(惠州学院计算机科学系,广东惠州516007)摘要:随着嵌入式系统的迅速发展,其游戏娱乐功能越来越受到重视。ARM系统是一种典型的嵌入式系统,在ARM微处理器S3C2410硬件平台和WinCE操作系统上,设计并实现了俄罗斯方块游戏,包括总体设计、算法实

2、现、游戏测试等,着重介绍了游戏中的数据结构、图形处理、游戏控制等的实现技术。关键词:嵌入式系统;ARM9;WinCE;俄罗斯方块;游戏开发中图分类号:TP311;TP368文献标识码:A文章编号:1008-2093(2010)05-0020-04随着嵌入式系统在消费电子领域的发展,消费者方随机画出不同形式的方块,方块出现后随即下移,对嵌入式系统的游戏娱乐功能也越来越关注。对于在下移过程中可以通过键盘改变其横向位置或形状,嵌入式系统而言,在硬件方面,ARM微处理器体系结当构成积木的方块有一个方块与底

3、部接触时,代表碰构被认为是较成熟的32位嵌入式RISC微处理器结撞成功,同一层中被填满方块时该层方块被消行,上构,市场占有率较高;而在软件方面,微软公司的面的方块下落一层,同时加分。游戏总流程图如图1WinCE是较为完善的嵌入式操作系统,WinCE下的所示。eMbeddedVisualC++更是一个极具效率的软件开发[1]工具,因此,ARM+WinCE成为主流的嵌入式游戏开发组合。针对俄罗斯方块游戏的开发,国内外不少学者展[2]开过研究,Niko(2005)将进化算法引入到俄罗斯方[3]块游戏

4、中并验证了其有效性,Hoogeboom(2004)探[4]讨了俄罗斯方块游戏的构造问题,张劲波(2006)以JBuilder2005作为开发工具用Java语言实现了俄罗斯[5]方块游戏,王宇等(2007)针对存在于俄罗斯方块中[6]的两个数学问题提出解决方案,高凌琴等(2008)探讨游戏功能要求、数据结构、图形旋转、坐标变换等关[7]键技术,胡代弟(2008)在SPCE061A单片机实现了俄罗斯方块游戏。综上,国内外的研究多着重于游戏数学原理的讨论,也有部分文献涉及游戏的具体实现,但多是在Wind

5、ows操作系统下实现的,在ARM平台下的开发俄罗斯方块游戏鲜少有文献刊载。本文[2]在ARM9微处理器MC2410开发板和WinCE操作系统下设计并实现了俄罗斯方块游戏,详细介绍了游戏的设计和实现方法,为ARM+WinCE平台下开发游戏的开发提供借鉴。1总体设计1.1游戏的需求描述图1ARM9平台的俄罗斯方块游戏总流程图俄罗斯方块游戏的规则是,在ARM液晶屏幕上*收稿日期:20100820基金项目:惠州学院2008年度校级教学研究与教学改革立项项目(A08004)作者简介:袁秀莲(1977

6、),女,江西赣州人,教师,主要从事嵌入式系统、计算机仿真研究。20袁秀莲:基于ARM平台的俄罗斯方块游戏设计与实现1.2游戏的类Block类主要是用于构造方块,而Operate类则侧重于根据以上分析,在ARM9平台上实现俄罗斯方块对方块操纵、游戏控制以及消息的传递,是游戏中最游戏主要需要实现两个类,一个是自定义的方块图形核心的类。Operate类的主要成员函数与说明如表1类Block,另一个是利用MFC生成的Operate类。所示。{{0,0,0,0},{0,1,0,0},{0,1,0,0},{

7、0,1,1,2关键技术0}}//L形在ARM上开发俄罗斯方块游戏,要解决的关键{{0,0,0,0},{0,1,1,0},{0,0,1,1},{0,0,0,问题有:方块的数据结构、方块旋转、碰撞检测、消行0}}//S形[8]等。{{0,0,0,0},{0,0,1,1},{0,1,1,0},{0,0,0,2.1方块的数据结构0}}//Z形如图2(a)所示,游戏区域由一个10(列)∀20{{0,0,0,0},{0,0,1,0},{0,1,1,1},{0,0,0,(行)的方阵构成。方阵内每一个单元格有两种

8、状态,0}}}//T形即被占据或者空闲,分别用1和0代表。初始化游戏过程中须抽取随机数确定方块类型,在时,分配一个10∀20的二维数组Gird[10][20],用以WinCE中随机数函数Rand()函数实际上是线性随机的,这可能会导致每次重新运行游戏其随机结果都存储方阵内每个单元格的状态。依需求游戏中的方是一样的。为了解决该问题,可使用Srand()函数获块共有7种基本形状,如图2(b)所示。设定一个4∀取系统时间配置随机种子,其的代码为:Srand(WCE_4的二维数组S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。