浅议基于C语言手机游戏开发模式探究 【摘要】本游戏开发涉及了游戏开发的基本环节:游戏素材的收集与制作、游戏流程的设计、代码编写和游戏测试,并在本文中都有较详细描述。 【关键词】C语言;SQL server 2005;B/S结构 本文研究了游戏设计的基本方法和实现过程,并研究编写出一个能够积分、难度分级、对射等具有一定娱乐性的射击对战型游戏程序。游戏是一个精度要求很高的程序系统,一个实时运行的最终作品,每秒都会运行成千上万行程序,碰撞检测、人工智能、绘图事件、键盘响应、图片和音乐提取等都会以很高的频率在后台运行并且等待响应,若有一点差错都有可能导致程序出现错误甚至死循环。一个成功的游戏融合了动画制作、音效处理、键盘响应、碰撞检测以及人工智能等相关的技术,每一项都需要花一定的时间去掌握和熟悉。 B/S结构,即Browser/Server(浏览器/服务器)结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。B/S结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体拥有成本低。 C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。
C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。本设计主要使用C语言完成。 按照设计结构和功能的特点可将系统分为2大模块:主窗体模块和菜单功能模块。 一、主窗体模块 主窗体是运行游戏的主界面,应具备显示游戏画面、播放音效、响应玩家 输入事件以及运行游戏的逻辑代码等功能。主窗体的代码包括游戏设备和配置的初始化、游戏精灵的实现、游戏引擎的使用等等。 游戏的流程图如图1所示: 二、菜单功能模块 目前,整个游戏设置了“开始”菜单,该游戏所设置的“开始”菜单,是当玩家点击“开始”后,整个游戏所会出现的状态进入开始,当游戏已开始后,“开始”按钮会自动变为“暂停”,如果“点击”,则游戏的主机会是暂停状态。 该游戏的开发环境主要是Microsoft Visual Studio 2008,安装Microsoft Visual Studio 2008比较简单,到网上下一个安装包,直接安装就可以了。 游戏的制作离不开图片,不管是背景图片还是所选择的物体图片c开发手机游戏,我们都需 要采集以及制作,下面将介绍一下图片的采集和制作。本游戏的图片大部分都是在网上找的,在做游戏之前我们应把游戏导入“horizon”,然而这个程序在安装“Microsoft Visual Studio 2008”的时候会自动生成的,也由此证明了这些是一个配套安装包c开发手机游戏,当图片导入成功后会生成一个以“.igre”为后缀名的文件,然而这个文件在编程过程中所起的作用就是怎样运用它来生成整个游戏的界面。
下面对本游戏主要设计内容进行详细介绍。 三、创建游戏界面(界面略) 代码如下: static HZApp sampleApp = { {1,0,0}, “jing “,//游戏界面的命名 900游戏评测, 480, //界面大小 init, quit, }; static HZStream* stream = 0; int init(void) {……} 四、精灵的定义 精灵是游戏的核心,精灵的定义关系到游戏开发的成功与否。该游戏中精灵着很多种精灵。在游戏中需要定义的精灵有主机、敌机、背景图片、射击的子弹、爆炸的焰火等等,为适应游戏剧情的需要,精灵在定义中存在属性、方法等的重载和覆盖以及变量、函数、过程的定义等。该部分代码略。 五、精灵的初始化 精灵的初始化是指创建精灵并设置精灵参数。包括设定精灵实例化后在屏幕上的初始坐标、显示效果等,例如游戏开始后,战机是静止悬浮在屏幕的上方。精灵的初始化函数通常是写在精灵的创建事件中。 在本游戏中,通用类是很多精灵类的父类,它的初始化尤为重要。该通用类的初始化代码如下: static int start() { bm = bm_create(buttonconfig, _countof(buttonconfig)); ball_info = (BallInfo*)HZAllocate (sizeof(BallInfo)); ball_info->next = NULL; HintBlast = HZSpriteCreate(“HintBlast”,300硬件设备,300,1); //定义精灵的位置 ………….. background = HZSpriteCreate (“Back”,340, 240, 1); return 0; } 六、碰撞处理 在该游戏中,很多地方都会运用到两个精灵相碰撞的情节,无论是哪些精灵相碰撞,其代码都是大同小异的,所以也不需要讲解每一个碰撞的代码唆代表的怎么样的。
其部分代码如下: for (j=0;jnext; pBall00 = ball_info; while(pBall00 && pBall00->next) { …… }}} 本游戏是在Microsoft Visual Studio 2008环境下,运用C开发语言,结合Micro-soft SQL Server 2005所操作的一个小游戏,也就等于该游戏只能在Microsoft Visual Studio 2008 开发环境下才能运行。本游戏开发涉及了游戏开发的基本环节:游戏素材的收集与制作、游戏流程的设计、代码编写和游戏测试,并在本文中都有较详细描述。 游戏的开发主要涉及3方面内容:游戏策划、游戏美术设计和游戏程序开发。游戏的开发不仅仅是需要编辑代码,最好是把整个游戏开发的流程规划出来,有了一个好的规划流程图,整个游戏结构就比较清晰了,这一点非常重要。这次的设计还存在一些不足之处:如游戏音效处理以及键盘响应还没能实现,希望通过不断的研究加以完善。 参考文献 [1]谭浩强.C语言程序设计[M].清华大学出版社,2000:7. [2]张向宏.软件测试理论与实践教程[M].人民邮电出版社,2009:5. [3]刘欣.手机游戏 简单为贵[J].通信世界,2006,07. [4]倪兰.手机游戏距离成功还有多远?[J].通信世界,2007 (41). [5]手机游戏成为热点[J].电脑编程技巧与维护,2005(03). 1