北京联合大学毕业设计(论文)开题报告
题目: 基于Visual C++制作与实现网络版飞行棋
专业: (居中) 指导教师: (居中)
学院: 师范学院 学号:
班级: 2007级 姓名:
一、课题任务与目的(宋体小三加粗缩进2字符)
1、任务与要求
针对某一综合应用项目,完成如下任务:
(1)简要的需求分析
(2)规划系统主要功能及其结构。
(3)完成各项系统功能的设计。
(4)形成项目文档和开发报告。
2、设计目的
本课程主要介绍Windows程序设计的思想和方法,以及MFC的常见应用。本课程综合应用算法与程序设计、面向对象程序设计、数据结构、操作系统、数据库系统原理等课程的知识和方法,面向实际应用和开发,以培养、提高学生的程序设计能力和软件工程能力为目的。通过课程教学、上机实践、综合设计等教学环节,使学生逐步掌握Windows程序设计和MFC的常见应用,并能在实践中熟练应用所掌握的工具和方法解决实际问题。
二、调研资料情况
1、课题背景
现今,游戏软件已经成为盈利最高的软件之一,而且还在向着复杂化、大型化发展,其中,很多由Visual C++作为开发工具的游戏都取得了巨大的成功,比如暴雪公司的《魔兽争霸》系列和《魔兽世界》,这说明Visual C++开发游戏具有一定的优势。所以,在Visual C++平台上设计游戏是极为方便的,这也是优势所在。
关于飞行棋发明的年代和发明人,在网络上似乎还没有相关的线索。比较一致的意见是他至少发明于大约二战以后,因为它是关于飞行的(FLIGHT GAME)。
飞行棋这种转圈式的路程设计来自于空战中的“拉弗伯雷圆圈”。法国人拉弗伯雷对德国的"大圆圈编队"战术作了改进,使参加编队的飞机不但保持在一个水平面上飞行,而且可绕圆圈盘旋爬高。这样就可以利用防御队形进行盘旋以取得高度优势,伺机进行攻击。这就是著名的"拉弗伯雷大圆圈"。当时人们发明这种棋,是用一种先进的空战战术。
但也有人认为这一点没有说服力,因为它有可能是先有了规则再被冠上了飞行棋的名字,在飞机发明前就出现这一游戏是完全可能的。再说,它可以跟飞机(PLANE)
没有直接关系,因为它的名字只是提到飞行(FLIGHT)。
飞行棋这种转圈式的路程设计来自于空战中的“拉弗伯雷圆圈”。法国人拉弗伯雷对德国的"大圆圈编队"战术作了改进,使参加编队的飞机不但保持在一个水平面上飞行,而且可绕圆圈盘旋爬高。这样就可以利用防御队形进行盘旋以取得高度优势,伺机进行攻击。这就是著名的"拉弗伯雷大圆圈"。当时人们发明这种棋,是用一种先进的空战战术。
2、国内外研究背景
无论是在国内还是国外,游戏编程已经成为了一种时尚,许多程序员都忘我地投入到其中,他们其中有很多人不光是为了盈利,也有很多是纯粹为了兴趣,许多著名的游戏编程员本身就是狂热的游戏玩家,所以,无论是国内还是国外,诞生了很多经典的游戏,其中利用Visual C++作为开发平台的更是不胜枚举,但是由于我国的游戏编程相对于国外起步较晚,所以在很多地方还存在不小的差距,甚至成了很多游戏软件业比较发达的国家的游戏加工厂。
3、本课题研究的意义
目前,市面上的游戏可以说是层出不穷,并且随着电脑硬件系统的改良,未来的游戏必将更智能化,更艺术化,更人性化,在高性能的硬件设备支持下,游戏的驱动引擎更具威力,控制功能更加完备,给人们带来更丰富的娱乐和体验,好的游戏给人们的生活带来了健康愉快的补充,唯美的艺术享受,潜默的教育功效,时尚的情感陶冶,如果没有足够的优质游戏,那么市场就不免会被粗劣的游戏充斥,可以说,对于青少年来说,谁对游戏编程有着更深入的理解和掌握,谁就掌握着游戏的导向权。
4、游戏软件的现状和VC的概况
4.1中国游戏软件的现状
软件产业是当前世界上增长最快的朝阳产业之一,并将成为21世纪推动世界经济发展和社会进步的重要动力。近年来,主要国家软件业平均以11%以上的增长率快速发展。据“oecd2000年信息技术展望”报告,1997年,其增长率成员国仅软件包产值就占世界市场份额的94%,达1080亿美元,并自1990年以来年11.2%。美国是世界上最大的软件生产国,1997年的软件产值为1705.9亿美元,占其当年GDP的2.1%,出口额为155.5亿美元。日本其次,1998年软件产值约570亿美元,但出口仅为0.82亿美元。英国列第三,1999年的软件产值为377.46亿美元,占其GDP的1.2%,出口约16.2亿美元。据对各国软件业发展的轨迹分析,虽然各国的产业规模和出口额相差较大,但其成功的因素可归纳为以下几点:1. 对软件知识产权的严格保护,营造一种谁投资谁受益的良好商业和法治氛围; 2. 服务到位的融资机构,促进软件成果转化快; 3. 高素质的软件专业人才,配合制定灵活的技术移民政策; 4. 具有第一流的大学教育,能够迅速适应市场对人才的需求; 5. 发达的通信设施; 6. 长期磨炼的企业家精神; 7. 巨大的市场需求。
相比于其他国家,我国的软件产业特别是游戏产业起步较晚,在很多地方上都不及一些软件大国,但是近年来我国软件业发展迅速,有关统计数据显示,2001年,软件产业销售收入仅为796亿元,到了2006年年底已经达到4800亿元,5年增长了6倍多。但与软件产业发达国家相比,差距依然很大,绝大部分市场被国外软件业巨头垄断,国产软件占据的市场份额很少。在国际市场上,2005年国产软件出口额为35.9亿美元,仅占全球软件市场份额的5.9%。
4.2 C++简介
C++语言是在C语言的基础上为支持面向对象的程序设计而研制的通用程序设计语言,它是由AT&T贝尔实验室的Bjarne Stroustrup博士创建。研制C++的首要目标是使C++首先是一个更好的C语言,所以根除了C语言中存在的问题,增加了许多新功能。C++的另一个目标是支持面向对象的程序设计,因此在C++中引入了类的机制。所研制的这个语言最初被称为“带类的C语言”,1983年取名为C++。C++语言的标准化工作从1989年开始,于1994年制定了ANSI C++标准草案。
C++的主要特点有两个方面:全面支持C语言与面向对象。C++从C语言发展而来,保持了C语言的简洁、高效和在某些操作上沿用了汇编语言指令的特点。同时,对C语言的类型进行了系统的改革和扩充,堵塞了C语言中的许多漏洞,C++编译提供了更好的类型检查和编译时的分析,能检查出更多的类型错误。C++改善了C语言的安全性,比C语言更安全。由于C++保持与C语言兼容,这就使许多代码不经修改就可在C++编译器下通过,用C语言编写的众多库函数和实用软件可方便地移植到C++中。因此,使用C语言的程序员能很快学会C++,使用C++进行编程。另外,用C++编写的程序可读性好,代码结构更为合理。C++的最重要的特点是支持面向对象的程序设计,使用C++编程,编程效率高;由于面向对象的方法更接近人类认识世界的方法,C++对于问题更容易描述,程序更容易理解与维护;C++的模板对库代码的重用提供了支持;C++更有利于大型程序设计。C++是一种支持多种程序设计方法的语言,提供对过程化和基于对象的程序设计方法的支持。适合于不同使用开发方法的编程人员。
4.3Microsoft Visual C++简介
Visual Studio是微软公司推出的开发环境。是目前最流行的 Windows 平台应用程序开发环境。目前已经开发到 8.0 版本,也就是 Visual Studio 2005。在Visual Studio中就有面向 Windows 开发使用的 Visual C++。
Visual C++自诞生以来,一直是Windows环境下最主要的应用开发系统之一。Visual C++不仅是C++语言的集成开发环境,而且与Win32紧密相连,所以,利用Visual C++开发系统可以完成各种各样的应用程序的开发,从底层软件直到上层直接面向用户的软件。而且,Visual C++强大的调试功能也为大型复杂软件的开发提供了有效的排错手段。
进入21世纪以来,随着多媒体技术和图像技术的不断发展,可视化技术得到广泛的重视,越来越多的计算机专业人员和非专业人员都开始研究并应用可视化技术。所谓可视化技术,一般是指软件开发阶段的可视化和对计算机图形技术和方法的应用。Visual C++是一个很好的可视化编程工具,使用Visual C++环境来开发基于Windows的应用程序大大缩短了开发时间,而且它的界面更友好,便于程序员操作。
5、利用Visual C++开发游戏简介
进入上个世纪90年代以来,游戏开发进入了可视化阶段,并且Visual C++是首选的开发工具,在此期间,诞生了许多用Visual C++开发的经典游戏,比如任天堂公司Family Computer主机上的《小蜜蜂》以及大名鼎鼎的《星际争霸》,这些游戏不仅在当时取得了巨大的成功,而且到现在也被奉为经典。可以说在这个时期,Visual C++在游戏开发领域是独领风骚。
进入了新千年,JAVA语言开始崛起,由于JAVA具有较高的可移植性,许多游戏,特别是很多手机游戏都转向了JAVA平台,但是纵观市面上最火的单机游戏《魔兽争霸3》和最火的网络游戏《魔兽世界》,都清一色的是用Visual C++开发的,这说明就算在新时期的游戏开发中, 利用Visual C++作为开发平台还是具有一定优势的。
本次课程设计的意义在于掌握对于MFC编程的综合运用,怎样通过图形界面控制绘图实现游戏的一些基本功能,对于MFC的学习有很大帮助。
三、实施方案
本课程重在训练学生的综合设计能力和项目开发应用能力,并强调学生的上机实践能力。按照常规考试方式,不能体现本课程“以理论为基础,侧重实践和应用”的特点,也不能考查学生理解本课程知识的程度以及所培养具备的MFC程序设计应用能力。
因此申请课程考试改革,拟采用项目开发和课程报告相结合的方式对课程进行考查。
实施方式:针对某一综合性较强的Windows应用程序项目,学生首先进行上机设计,实现系统功能,然后根据设计内容撰写课程报告,并在规定时间递交程序和纸质报告、答辩,最后根据程序、报告和答辩等进行课程成绩评定。
分数比例:项目开发的系统功能和程序代码为60%,课程报告为40%。
四、预期结果
1、预期结果:能使用鼠标进行走棋动作,通过跟踪鼠标来完成几乎所有的消息响应;能区分玩家的棋子,能正确识别胜利和失败,能正确判断走棋是否正确、是否引起游戏结束;能判断人和计算机,具有智能化的特点;玩家可以选择走棋方式;实现通过掷骰子轮流走棋,玩家能轮流掷骰子,轮流走棋,能够主动退出游戏;有方便玩家在线交流的方式;游戏基于联网方式进行; 加入声音系统,能在游戏中正确播放各种声音。还要有聊天功能,能发表情,实现视频语音聊天。
2、结果形式:能运行的游戏代码一份、论文一份。
五、进度计划
(应根据指导教师在任务书中写明的建议进度计划安排,制定个人具体的时间计划。)