1 / 11
文档名称:

游戏程序设计教学案例.doc

格式:doc   大小:42KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

游戏程序设计教学案例.doc

上传人:mfhrekp299 2019/5/14 文件大小:42 KB

下载得到文件列表

游戏程序设计教学案例.doc

相关文档

文档介绍

文档介绍:游戏程序设计教学案例文章编号:1672-5913(2009)06-0074-03 摘要:游戏编写是游戏程序设计教程中很重要的内容。本文介绍了一个完整的2D游戏―坦克大战的开发过程,对游戏素材编辑、地图编辑和游戏主程序的设计做作了完整介绍和代码实现,使学生能完全掌握并应用到实际其它游戏的开发过程中。关键词:计算机游戏;程序设计;地图;游戏引擎中图分类号:G642 文献标识码:B 1游戏程序设计教程中的关键一环计算机游戏程序设计,在许多的大学本科的教学中,并未正式纳入教学内容。由于市场对游戏设计人员的需求较大,薪水又高,出现了专业的游戏程序设计培训班。但收费偏高。我院根据这种状况,在学生创新实验室和第二课堂培训班,开设了游戏程序设计项目。其中最重要的一环就是完成一个完整的游戏开发设计。我们精心挑选项目,选择了既有一定代表性、又有娱乐性、也带有一些人工智能的中小游戏――坦克大战。也使学生感受到了面向对象编程的强大功能,所学知识得到了真正的应用。 2相关知识学****编写游戏程序,技术上需要具备两个条件。首先需要一个多媒体驱动开发包,如微软的DirectX;图像、动画、声音的快速、实时响应,是游戏逼真的前提条件。我们选择了日本的HiroyukiHori编写的免费开发包DelphiX,它较好的封装了微软的DirectX。里面有些错误,我们已经更正。其次,需要一个游戏引擎。游戏角色的碰撞是技术上较难的,对角色的生死管理也很重要。好的游戏引擎必须能快速高效的解决这些问题。DelphiX包中有一个简单的游戏引擎,我们稍加改造,足够我们编写简单的二维游戏程序。对这些知识加以介绍后,就可以进入正式的开发设计阶段。 3坦克大战游戏功能简介(1)关卡地图为三层地图,比较形象,可设计多样的地图式样。。(2)游戏有低、中、高三级。难度随时可调。每关20辆基本敌方坦克。每过一关,敌方增加1(低)、2(中)或3(高)辆坦克。难度加大时,敌我双方的坦克速度、炮弹威力、炮弹速度、坦克生命力都有所增加。(3)每关地图有一个敌方Boss,它能爬山涉水,并自动朝我方推进,炮弹也朝我方射击。(4)宝物有16种,持续时间约15秒。如没有被敌我坦克拣到,自动爆炸消失: 散弹1:一次只能发一发炮弹; 散弹3:一次能发三发炮弹; 散弹5:一次能发射5颗炮弹; 增加子弹速度:一次加50; 减少子弹速度:一次减50; 增加炮弹威力:一次加50; 炮弹的半径大小有8、16、24三种。炮弹半径越大,越容易打中物体或坦克; 增加坦克生命力:一次加100; 坦克隐形宝物:坦克不可见,炮弹无法打中它; 坦克无敌模式:带防护罩,炮弹打中不“掉血”;只有20秒保护期; 定时器:对方坦克不能动弹和发射; 爬山涉水:坦克能过河上山。该特性只在本关有效; 呼唤飞机帮助:拣宝方大批飞机出现,并且狂轰烂炸,对方难逃厄运; 脑黄金:只对敌方有效。被我方炮弹打中后,自动掉头向我方移动并射击。每关的第十分钟,大批敌方帮助飞机呼啸而来,请你在此之前消灭敌人,否则大难临头。逃过此劫,坚持到第15分钟,我方飞机呼啸而来...... (5)每过一关,我方生命力增加200。(6)关卡地图文件名为Map???.map,最多999关。地图文件名编号为001~999,中途不能断号,否则,会从头开始玩起。(7)操作: F1:帮助;F11音乐;F12:炮声;F3:暂停/继续;鼠标右键:游戏难度选择。玩家一:玩家二:暂无空格:开炮,←↑↓→移动方向 4素材库程序编写在2D平面游戏中,地图画面由小块图片拼写出来。游戏角色也一样,动画效果只不过是不断改变图形罢了。所以第一个任务就是要建立地图素材库。对每种地形设置它的图片、生命力、是否阻碍坦克或炮弹通过等。。为方便管理,我们分类建立地形,如云层、土地、房屋、树林等等。每类含有多个不同形状的地藐对象TTiles;如“水域”类,可以包含“海洋”、“湖泊”等。而每个地藐可以由数量不等的小图片组合而成。最小的小图片单元就是TTile对象(以后简称贴图)。这两个对象我们用ObjectPascal语言(Delphi)实现。素材管理程序代码2900多行(自编源代码)。图库(素材库)编辑器是游戏程序开发的第一步,许多商业游戏并不提供图库编辑器。使玩家感到有所失望。提供图库编辑器无疑增加了游戏的吸引力,因为玩家可以重新设计整个游戏,也许坦克大战变成了潜艇大战。 5游戏地图编辑程序编写一些商业游戏提供了地图编辑器,如“星际争霸”、“英雄无敌”等。图2是教程中设计的三层地图编辑器运行界面。地图设计是决定游戏可玩性的重要因素之一。当今2D游戏,普遍采用多层地图,这样可以产生比较逼真的画面。游戏程序显示画面时,首先显示最低层的