- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络游戏的基本程技术
第11章
网络游戏的基本编程技术
网络的诞生是信息领域的一场革命,引导出一种新的人际之间的交流模式。随之而来的网络游戏彻底改变了游戏的方式和规则,符合人是社会这一属性,是一种全新的游戏模式。在单机版计算机游戏中,玩家只能一个人在游戏世界中探索,因此是人机交互。在网络游戏世界中,玩家可以和其他玩家共同体验游戏的乐趣,获得团队精神的体验,因此是人际交互。由于游戏的人工智能还远未达到能模拟人的思维和智慧的程度,人际交互的真实度和刺激性将远强于人机交互,这就是单机版游戏无法提供的可玩性。例如,三维游戏领域的大师John Carmack坚持在QuakeⅢ游戏中只提供多人对战模式。长久不衰的对战游戏(CS)反恐精英也是因为它的竞技性、团队性提高了游戏整体的可玩性。美国的一些军事训练机构更是采用多人对战模式的军事类仿真游戏来训练人员。在中国,网络游戏的盛行也说明了网络游戏的独特魅力。
网络和网络游戏是一个飞速发展的领域,本章将介绍一些基本的网络和网络游戏编程概念,并配有必要的例程。游戏程序员需要进一步阅读和不断实践,才能自由、高效地编写出受人欢迎的网络游戏。
11.1 网络游戏的基本架构
网络游戏的最常见的基本架构是Peer-to-Peer 对等通信结构,如图11-1所示,即在多个玩家参与的游戏中,各玩家之间采用Peer-to-Peer的直接通信方式。在网络通信服务的形式上,一般采用浮动服务器的形式,即其中一个玩家的机器既是客户端,又扮演服务器的角色,一般由创建游戏局的玩家担任服务器(主机)。很多对战型的RTS网络游戏都采用这种结构。
网络游戏的另一种架构是基于游戏大厅代理的结构,通过会话大厅(lobby)结构,为不同玩家牵线搭桥,既直接管理客户端,也管理游戏局,是回合制网络游戏的常见类型,如图11-2所示。
网络游戏的最典型的结构是C/S结构,如图11-3所示,特别适合于多人在线游戏,如RPG,成千上万人进行同一场游戏。服务器上有完整的游戏世界模型,玩家在客户端去观察这个世界,并与之互动。
图11-1 网络游戏的Peer-to-Peer对等通信结构
图11-2 基于游戏大厅代理的网络游戏结构
图11-3 基于C/S的网络游戏结构
C/S结构的优点是能够充分发挥客户端计算机的处理能力,很多工作可以在客户端处理后再提交给服务器,使得客户端响应速度快。对于网络游戏来讲,这是十分关键的。其缺点就是网络游戏的升级比较麻烦,每次升级需要客户端下载体积庞大的更新软件,然后进行安装,对于一些带宽并不是十分充足的用户而言,升级就成了游戏的梦魇。不过,良好的客户端程序框架设计完全可以避免升级时下载庞大的更新软件。比如,客户端软件可以把场景定义文件独立出来,客户端程序在运行时动态加载场景定义文件。这样,当网络游戏的设计者发现需要增加游戏场景时,他只需要更新一个场景定义文件就可以了,当然还需要一些必需的场景资源文件,如新增加的图像、背景音效等。
一个典型的基于C/S架构的回合制游戏的运行流程如图11-4所示。
图11-4 基于C/S架构的会合制游戏流程
11.2 Winsock编程基础
由于Windows操作系统的广泛普及,在PC机上以Windows为平台的游戏占据了游戏市场的绝大部分。本节主要介绍Windows网络编程的规范:Winsock编程。
11.2.1 TCP/UDP简介
Internet是一个包交换(packet-switched)、容错(fault-tolerant)的网络。包交换意味着在Internet上传输的信息实际上是被分装成一个个小包(大小从几字节到几千字节)从某点传送到另一点。容错意味着包传输的路径上将可能发生错误,如服务器出错等。如果传输路径上的服务器发生了错误,那么传输的包将会选择另一条路径,直到到达目的地。
在发送数据时,有两个任务是十分关键的。第一,数据被分割组包,并在另一端重组。第二,每个数据包单独在网络上传输,直到完成任务。在TCP/IP(Transmission Control Protocol/
Internet Protocol,传输控制协议/网际协议)协议结构中,这两个任务分别交给了TCP和IP,前者负责数据包的分割和组装,后者负责数据包在网络上的传送。面向连接的TCP协议保证了FIFO操作(数据按顺序到达目的地),保证从一端发送的TCP流都将到达目的地。为了保证数据的顺序到达,TCP协议需要等待一些丢失的包来按顺序重组原来的数据,同时还要检查是否有丢包发生,因此它的运行速度很低。TCP协议以牺牲一部分传输性能为代价,来获取可靠的网络传输。
UDP(User Datagram Protocol,用户数据报协议)是TCP协议的替代选择。UDP是一种无连接的协议,可以在网
您可能关注的文档
- 网上申报海关缴书稽核操作说明.doc
- 网上申请教师资证的步骤.doc
- 网店客服手册 何做好客服工作.doc
- 网点的经营策略分享讲师手册模板.doc
- 网格客户经理业操作手册.doc
- 网站诊断分析报模板.docx
- 网络IP地址及LAN规划.docx
- 网络优化手册206.doc
- 网络信息平台测题集答案.doc
- 网络信息交流的具与模式(实验报告).doc
- 校园景区保护与管理.pptx
- 光的偏振现象及其应用.pptx
- 计算机辅助制造 课件 (沈骏腾)项目1、2 开关盒中框的加工程序编制、 批量加工零件的工艺设计与程序编制.pptx
- 计算机辅助制造 课件 (沈骏腾)项目3、4自行车尾灯注塑模具动模型芯的程序编制、 自行车尾灯注塑模具定模型芯的程序编制.pptx
- 计算机辅助制造 课件 (沈骏腾)项目4、5 自行车尾灯注塑模具定模型芯的程序编制、 吹塑模具瓶体的程序编制.pptx
- 单片机原理及应用(第二版) 课件全套 (柴钰)第1--7章 单片机系统概述---单片机应用系统设计.pptx
- android wallpapers可选大内存墙纸.pptx
- 下学期现代通信网呼叫软件.pptx
- 云计算实践教学计划.pptx
- 生物选修检测专题植物有效成分的提取综合测试.pptx
最近下载
- 浮力单元作业设计.pdf VIP
- GB∕T 12274.401-2023 有质量评定的石英晶体振荡器 第4-1部分:空白详细规范 能力批准.pdf
- 大学生的创新创业大赛.pptx
- 2024年新版党建知识应知应会系列测试.docx VIP
- 第二章 田径——立定跳远 课件 2023-2024学年人教版初中体育与健康七年级全一册.pptx VIP
- 《浮力》单元作业设计.pdf VIP
- 保洁、环卫、绿化养护工劳动定额标准QFSSHRS012019.doc.docx
- 国外中学生涯教育现状与国内本土化进展相关论文背景分析.docx
- 北合小学美术教研组活动记录表.pdf
- 《中国共产党纪律处分条例》测试题.doc VIP
文档评论(0)