大型网络游戏系统---毕业设计文档

上传人:wo7****35 文档编号:55274147 上传时间:2018-09-26 格式:DOC 页数:25 大小:1.84MB
返回 下载 相关 举报
大型网络游戏系统---毕业设计文档_第1页
第1页 / 共25页
大型网络游戏系统---毕业设计文档_第2页
第2页 / 共25页
大型网络游戏系统---毕业设计文档_第3页
第3页 / 共25页
大型网络游戏系统---毕业设计文档_第4页
第4页 / 共25页
大型网络游戏系统---毕业设计文档_第5页
第5页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《大型网络游戏系统---毕业设计文档》由会员分享,可在线阅读,更多相关《大型网络游戏系统---毕业设计文档(25页珍藏版)》请在金锄头文库上搜索。

1、1 本本 科科 毕毕 业业 论论 文文 大型网络游戏系统文档大型网络游戏系统文档 A large-scale network game system document 姓 名: 学 号: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 指导教师: 年年 月月 2 厦门大学软件学院毕业设计(论文)开题报告 学生姓名班级软件 1 班学号 指导教师 姓名 职称助理教授所在单位 厦门大学 软件学院 毕业设计(论文)题 目 大型网络游戏系统 毕业设计(论文)的目标: 【摘要】 实现一款大型网络游戏系统的客户端与服务器交互设计,完成该大型网路 游戏系统的场景设计,玩家交流与任务的分配,角色炫丽

2、的打斗效果,NPC 交 互效果,物理碰撞检测效果,数据库的设计与实时交互的要求。搭建好游戏框 架,让学弟们在框架中开发。 【背景】 该游戏以十七世纪的中国历史为背景,讲述民族英雄郑成功传奇的一生。 游戏中穿插明末清初的正史记录,作为游戏的支线任务。游戏中郑成功先后与 清军,西南蛮夷士兵以及荷兰海军作战,最终攻占南京、收复了台湾,成为了 民族英雄。本文所介绍的系统主要完成“将领”之间的对战功能,是一个支线 任务,也是一个独立的游戏,同时可以对“将领”进行测试。玩家们需要控制 各自的将领,在武将战场上杀敌制胜。 “武将”战场上会不定时随机出现各种武 器装备,补给品,军需用品,和临时技能等武将消耗品

3、,玩家可以依靠这些消 耗品配合有利的地形进行伏击和叫阵。但是取得胜利最终的还是要依靠玩家的 等级,装备,技能以及团队合作等因素。 “将领”们的等级来自常规对战,也就 是在主线游戏中培养起来的角色参数。角色参数依靠玩家的升级,完成主线和 支线任务的奖励,以及杀敌时幸运的获得对方掉落的宝物等而增长。 【预期目的】 主要完成下面三个模块: 1 网络通信; 3 2 数据库交互; 3 场景设计。 【开发环境配置】 安装内容安装工具 VC+开发平台 VS2008 sp1 OGRE sdk 1.6 PagedGeometry 1.05 【主要内容】 一 OGRE 介绍: Ogre 是一款开源的图形渲染引擎,

4、它的全名叫(Object-oriented Graphics Rendering Engine) ,它是由一个核心小组开发并维护,由于它是 一款开源引擎,所以它也像 Linux 一样,被各种不同的团体和组织改造 和扩充,并使它能够适应不同的应用领域和拥有更强大的功能。Ogre 并 不倾向于某一种类型的游戏。由于它的设计,它可以用于从飞行模拟器 到第一人称射击游戏到 2.5D 游戏等等,总而言之,如果那款游戏要使用 3D, Ogre 就适合开发它。 二 PagedGeometry 介绍: PagedGeometry 是 OGRE 引擎的一个插件,它对(无穷)大区域的 海量网格的渲染提供优化策略。

5、它非常适合于稠密的森林和室外场景, 那里有海量的树,草,岩石,灌木丛等场景对象。该类负责加载那些需 要立即(或很快)可见的场景几何,而不加载其他的场景以节约内存空 间。PagedGeometry 引擎可以通过诸如静态几何,imposters 等方法去显 示实体对象(Entities) 。这些方法是与实体和场景相机的距离,以及你的 配置相关的。对页面的加载是通过用户定义的 PageLoader 来完成的。这 样,用户可以编程实现加载页面,无论它是来自硬盘上的文件,程序产 生的或是其他地方。 4 实现方法: 语言工具:C+; 游戏引擎:OGRE; 数据库:MySql; 通过 ADO 接口连接关系型

6、数据库 MySql,从而完成服务器与数据库的交互; 通过 socket 编程的方式实现客户端与服务器的交互;使用 Ogre 图像渲染引擎 编写游戏客户端代码,进而简化编码;采用设计模式的思想设计游戏架构,从 而使搭建好的框架更安全,更简单更利于后来人的编码。 细节实现的技术大致分为以下几种: 1图形图像学的基础知识; 2BS 架构的基于套接字的客户端和服务器的交互技术; 3碰撞检测; 4自动寻路; 5AI 设计; 6OGRE 相关技术的使用技巧; 7MFC 的相关技术; 8数据库交互技术; 这些都是待研究的技术。虽然已经具备了其中的一些技术,比如 MFC 使用 及 OGRE 的使用以及 Pag

7、edGeometry 的使用,但是只是停留在调用层次上,依然 5 不能够胜任全部工作,所以接下来的任务十分艰巨。如果将上述 8 个技术模块 简单的实现,那么基本上能够完成本系统的设计与实现。 时间进度安排: 收集资料:2010 年 1 月 14 日 2010 年 2 月 1 日 技术学习:2010 年 2 月 2 日 2010 年 3 月 15 日 概要设计:2010 年 3 月 16 日 2010 年 4 月 1 日 详细设计:2010 年 4 月 1 日 2010 年 5 月 1 日 编 码:2010 年 5 月 1 日 2010 年 6 月 8 日 指导教师审核意见: 指导教师签名: 2

8、010 年 月 日 6 厦门大学软件学院毕业设计(论文)中期检查报告 学生姓名班级软件 1 班学号 指导教师姓 名 职称助理教授 所在单 位 厦门大学软件学院 毕业设计 (论文)题 目 大型网络游戏系统 毕业设计(论文)的目标和主要任务: 【论文主要任务论文主要任务】 本系统主要分为五个主模块,它们分别是地图编辑器,粒子系统编辑器, 网络交互模块,人物模型系统和游戏演示。游戏整体组织架构的设计,如图图 1.11.1 所示: 地地图图编编辑辑器器 粒粒子子系系统统编编辑辑器器 游游戏戏演演示示 游游戏戏架架构构 高高度度图图 粒粒子子效效果果 静静态态模模型型 动动态态模模型型 声声音音 高高度

9、度碰碰撞撞检检测测 点点 动动态态粒粒子子 静静态态粒粒子子 物物理理碰碰撞撞检检测测 自自动动寻寻路路系系统统 AI 与与控控制制 接接口口 即即时时聊聊天天系系统统 攻攻击击效效果果计计算算 人人物物模模型型系系统统 换换装装系系统统 AI脚脚本本系系统统 地地图图读读取取功功能能 网网络络交交互互模模块块 网网络络会会话话基基础础 网网络络指指令令 指指令令序序列列化化 客客户户端端 服服务务器器 数数据据库库模模块块 数数据据库库交交互互层层 数数据据库库控控制制层层 图图 1.11.1:游戏戏整体的组织架构图:游戏戏整体的组织架构图 然后论文将从客户端设计,服务器设计展开: 7 1

10、客户端设计:客户端设计: 1.1客户端向导客户端向导 客户端主要由两个模块组成,分别为客户端向导和客户端场景处 理。其中客户端向导主要管理玩家登录时的基本信息,和服务器的连 接,创建 socket,和启动客户端场景。其操作流程如图图 1.21.2 所示: 登录?注册?退出否 是 开启注册向 导 否 是 用户名存在? 传入 Socket,启 动场景模块 进入游戏场 景 否 阅读注册条 例 填写用户基 本信息 用户名存 在? 开始注 册? 是 否 是 修改用户 名 图图 1.21.2:客户端向导注册流程:客户端向导注册流程 在客户端向导中,玩家需要选择登陆游戏还是注册用户:当用户选 择登录游戏时,

11、客户端会向服务器发送一个指令,告诉服务器这里有客 户端连入,请求确认玩家信息。当服务器发回确认信息后即可进入游戏 场景,否则提示玩家尚未注册;当用户选择注册用户时,向导将把玩家 引入注册向导中。在注册向导中,玩家首先阅读相关条例,同意后方可 8 进入注册面板。在注册面板中用户需要填写玩家基本信息,其中包括账 号,密码,邮箱等信息。用户填写完毕后点击“注册”按钮,客户端立 即向服务器发送注册命令,服务器随即开始在数据库中查找该用户名, 如果数据库中不存在该用户名,则立即在基本表中创建相关信息,同时 客户端提示用户注册成功;否则提示注册失败。 1.2客户端场景客户端场景 3.3.1客户端游戏创建流

12、程设计客户端游戏创建流程设计 客户端游戏创建部分要考虑到复用性和灵活性,复用性要求已经设 计的模块可以在将来被未设计的模块调用;灵活性要求在已经设计的代 码中可以轻松加载或嵌套将来设计的模块,同时可以保证将来的模块嵌 入或者删除不会影响已有的模块。下面展示了客户端游戏的创建粗略流 程,如图图 1.31.3 所示: OGRE数数据据 初初始始化化 渲渲染染一一帧帧 退退出出? 是是 否否 处处理理各各种种消消 息息和和事事件件 结结束束 图图 1.31.3:客户端游戏创建流程(大略):客户端游戏创建流程(大略) 其中客户端场景详细数据初始化流程如图图 1.41.4 所示: 9 OGRE创创建建根

13、根 节节点点 OGRE加加载载插插 件件和和资资源源 OGRE关关联联 WINDOWS窗窗 口口 创创建建主主摄摄像像 机机,视视口口和和场场 景景 创创建建带带缓缓冲冲的的 键键盘盘鼠鼠标标设设备备 管管理理类类 初初始始化化主主场场景景 地地形形数数据据 创创建建加加载载主主角角 人人物物 加加载载NPC 初初始始化化各各种种离离 子子效效果果 创创建建碰碰撞撞检检测测 类类 设设置置显显示示模模式式 和和底底层层库库 图图 1.41.4:客户端游戏创建流程(详细):客户端游戏创建流程(详细) Ogre 中最重要的变量就是根节点指针 Root,它是一切数据的 源头,掌管着坐标变换,渲染,关

14、键帧事件,创建其他变量,加载插 件和资源等功能。根节点是 Ogre 的核心,采用单件模式,即整个程 序中只有一个实例。这里不再作过多的讲解。 客户端渲染主框架设计客户端渲染主框架设计 客户端游戏的渲染流程是整个游戏的核心模块。而渲染的主框 架是支持这个核心的骨架。这个主框架是否设计的强壮、灵活,直接 关系到其他模块是否能够正常的、灵活的被加载或者卸载。请看客户 端游戏主框架类结构图,如图图 1.51.5 所示: 10 #m_pSessionSocket : CSessionSocket COgreObject CSessionSocket +Render() +UpdateFrame() +I

15、nitialOgre() +setRootAndSubSystem() : bool +setRenderWindow() : bool +setUpPugins() +loadResource() : bool +chooseSceneManager() : void +createMainCamera() : void +createMainViewports() : void +createScene() : void +createFrameListener() : void #m_pRoot #m_pOgreWindow #m_pSceneMgr #m_pMainCamera -m_

16、pMainViewPort COgreBegin +createScene() +createFrameListener() #m_pEvent : COgreEvent #m_pCurrentScene : COgreSceneBasic COgreApp +frameStarted() +frameRenderingQueued() +frameEnded() +mouseReleased() +mousePressed() +mouseMoved() +keyPressed() +keyReleased() #m_pOgreApp : COgreObject -m_pInputManager -m_pKeyboard -m_pMouse -m_pCurMgr -m_pCurCamera -m_fToggle -m_fRotate -m_fMove COgreEvent -结束1 1 -结束2 * 所有Ogre渲染类的父类, 它掌管着网络通信 -m_pEvent * #m

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号