- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
游戏编程概述
浙江大学软件学院
梁秀波
Email:liangxb@
游戏是什么?
游戏程序员看游戏
游戏”只是一个具有某种“逻辑”和某些“数据”的结合体
游戏的组成
游戏的基本部件
游戏的运行流程
游戏其实就是一个不断按某种逻辑更新各种数据(画面、声音等)的过程。
游戏的基本流程只是一个连续的循环,它不断地按某种逻辑来绘制新的图像,并刷新画面
Dave Roderick曾形象地把游戏类比为一个带有前置终端的实时数据库,该终端实时地接受用户(玩家)输入的各种交互指令,取出相应的数据,并“优雅”地将这些数据以各种形式(视觉、听觉等)展现给用户。
游戏开发的基本理念和方法 (1)
数据驱动理念
“逻辑”方面是一款游戏的灵魂,主要由游戏设计人员来负责完成;
“数据”方面主要起到描述性和修饰性的作用,主要由程序设计人员来处理。
这样的主次关系决定了只有高效地、灵活地处理和对付这些“数据”部分,才能让游戏设计人员把更多的时间和精力花费在“逻辑”部分,
游戏编程人员必须把这些“数据处理”工作变得简便和快捷,才能保证游戏开发的成功。
游戏开发的基本理念和方法(2)
数据驱动的基本策略
预先开发专门的数据获取和管理工具。
游戏程序设计人员常常需要针对当前游戏的开发,为游戏开发中的艺术创作人员专门设计和实现一系列的“数据”获取和管理工具,包括声音的处理程序、绘画工具等,以提高艺术创作人员的工作效率;
游戏程序设计人员在编写代码时,要采用可以很容易修改游戏数据的方式,保证游戏数据的动态可调整性。
游戏开发是一个不断修改完善的过程,游戏的设计人员常常需要访问那些影响游戏不同实体行为的数据,并且可以修改这些数据。
游戏开发的基本理念和方法(2)
保证游戏数据的动态可调整性的技巧和策略
创建一个可以解析文本文件或者命令的子系统
它能对游戏的初始化数据/参数进行动态地解释和配置,而不是简单地“启动”游戏的运行。
把游戏程序中的一些常数放置在文本文件中,这样,不需要重新编译就可以很容易地对这些参数进行修改。
所有的数据都不放在代码内。
假设所有的数据内容都可以修改,或者将来可能被修改。
使用脚本来控制游戏的流程。
脚本是定义各种行为控制的最简单的方式,它特别擅长定义游戏中顺序执行的步骤,或者各种等待触发的游戏事件。
在编码实现中,时刻牢记把“逻辑”和“数据”分开的核心准则
即把复杂的游戏逻辑放在代码中,而把“数据”外置,这样可以有效地提高游戏的功能清晰性和可调试性。
避免重复的数据。
如果你需要在不同的游戏场景中表现相同的人物行为,那么,只需要在一个地方实现,而在另一个场景中直接调用就可以了。
在大型的复杂游戏开发中,需要另外的编辑工具代替手工编辑方式,方便于产生游戏数据的文本文件,如关卡编辑器、脚本编辑器等。
建构这些合适的编辑工具可谓是“磨刀不误砍柴功”,它们将十分高效地加快大型游戏的开发过程。
游戏开发的基本理念和方法(3)
软件工程中的原型法、中间件方法等都是开发游戏软件的有效方法
可玩性测试的原型系统:专门用于检验游戏设计的合理性和用户的可接受程度;
用户界面的原型系统:检查玩家如何与游戏进行交互;
各个子系统的原型系统:测试该子系统的功能,并可检查各个子系统的交互关系和数据接口;
算法测试的原型系统:可用来检查各种算法。尤其是特定领域的一些复杂算法需要通过原型系统进行不断地改进和提高。
游戏的测试与调试(1)
游戏的测试与调试目标
游戏BUG的出现可能是由于程序员的技术问题,也可能是由于策划的设计问题,或者是因为美工的一时疏忽。不管是什么原因,在进行游戏的调试和测试工作时,要尽量把这些问题全部解决。
游戏的调试是编程人员的任务,在这个阶段中要找出游戏程序的内在缺陷,并加以修正。
采用一般的软件调试和测试方法就可以达到。
游戏的测试相当于对游戏设计阶段的BUG的修正,找出游戏设计本身存在的缺陷 。
游戏的测试与调试(2)
游戏的测试人员一般由以下几类人员组成:
第一类游戏测试人员是开发队伍的成员。
看到自己制作的美工、声效、代码和游戏中使用的关卡,更好地知道如何进行改进;
第二类游戏测试人员是传统意义上的游戏测试人员,这些人在游戏进入“alpha”阶段就开始对游戏进行测试。
这些测试人员会将一半的时间用来跟踪代码中的“BUG”,并且还会提供一些重要的反馈信息,比如,如何玩游戏、游戏的难度过于简单还是过于困难、游戏的交互控制是直观还是迟钝等;
第三类游戏测试人员比较注重第一印象,他们短期参与到项目中,从事玩游戏的工作,然后提供关于游戏的最直接的感觉。
关于游戏中不太直观的控制方式、不清晰的信息表示或者游戏难度设置不合理的部分,他们都可以提出建议;
第四类游戏测试人员是没有从事当前游戏开发的游戏设计者或者开发人员,
会以比其他的测试人
文档评论(0)