游戏中的网络编程技术及应用
2009-5
水利水电出版社
樊永庆 等编著
327
无
互联网的快速普及为游戏的发展奠定了良好的基础,游戏已经成为互联网发展的重要应用之一。现在,游戏产业正以不容置疑的速度发展,已经成为lT领域中的一个重要产业。不过,和IT领域中其他产业的发展类似,我国游戏产业的迅猛发展也同样遭遇了人才瓶颈。目前不论是金山等游戏开发厂商,还是靠游戏而成名的盛大,或是靠游戏而风光于美国纳斯达克的网易,都已在全国广觅游戏人才,游戏人才已经变得炙手可热。在我国的lT领域,市场的发展也必然会对人才不断地提出新要求,前几年是硬件人才、网络人才,接下来是软件人才,而就目前的市场需求看,毫无疑问游戏人才是最炙手可热的市场需求点之一。据了解,我国当前游戏行业最为缺乏的是游戏设计与开发工程师,为了迅速摆脱这一发展困境,我们策划出版了这套系统介绍游戏开发技术及其应用的丛书,以满足市场的广泛需求。本丛书围绕游戏开发整个技术体系的各个方面展开,系统地介绍了三维游戏引擎设计技术及其应用、三维图形实时渲染技术及其应用、游戏中的人工智能技术及其应用、游戏动画和音效编程技术及其应用,以及游戏中的网络编程技术及其应用等,形成了一个完整的最新的游戏开发技术体系结构,有助于读者全面地学习游戏开发中最新最流行的技术和理论。当然如果读者只想了解游戏开发中某一方面的技术,则可以单一学习丛书中的某一分册,因为丛书的各分册相对独立。同时本丛书在理论上和实践上都有比较鲜明的特点,因为本丛书的作者不仅在理论上有较深的造诣,阅读过大量游戏编程技术的硕博期刊论文和外文书籍,并在相关方面进行理论研究,而且还从事相关方面的项目和游戏及虚拟现实公司的具体产品的开发,对国外的开放源代码有过较为深入的分析。如果读者想学习到当今计算机图形学和人工智能方面的最新理论,为自己以后的理论研究作好积累,本丛书无疑可以起到抛砖引玉的作用。如果读者想在学习完本丛书之后进入实际项目的开发,抑或想去游戏公司应聘,本丛书也可以在职场上助你一臂之力。丛书的主要风格是在理论上深入,涉及游戏编程相关的各种高级技术和国外大学相关课程的理论内容,同时在实践中浅出,以某些具体的应用为实例,把理论付诸于实践,并在实例中讲述实际编程中的各种技巧。正因为理论和实践并重,本丛书的读者群比较广泛,可以是高校中从事计算机图形学和虚拟现实理论与算法研究的研究人员,也可以是想以后从事游戏编程工作的学生,也可以是已经从事游戏行业想进一步完善知识体系的开发人员。同时,本丛书也可以作为高校和培训学校的教材。
本书是学习游戏中网络编程技术的参考书。全书共分三大部分:第一部分介绍网络游戏编程的基本概念和相关基础知识;第二部分讲解了游戏编程的小型应用实例,内容包括基于Internet网络的游戏聊天室开发、多机对战版五子棋以及游戏大厅的创建示例;第三部分是大型网络游戏编程案例,内容包括网络坦克对战和网络斗地主的游戏案例,介绍大型游戏的设计规则、流程以及实现。 本书既有完整的基础知识讲解,又有复杂而完整的实例分析,读者能够轻松地将自己所学的理论知识付诸实践。本书适合于对网络游戏编程感兴趣的入门者,也适合于广大的游戏开发人员作为参考。学习本书需要具有具备一定的C++语言编程基础。
丛书序前言第一部分 网络游戏编程基础 第1章 网络游戏编程简介 1.1 Intemet简介 1.2 网络游戏发展史 1.3 网络游戏开发工具简介 1.4 网络游戏分类及技术简介 第2章 TCP/IP协议 2.1 网络通信模型 2.2 TCP/IP协议简介 2.2.1 体系结构 2.2.2 IP协议 2.2.3 TCP协议 2.2.4 TCP/IP的特性 2.3 IP协议 2.3.1 IP的基本功能 2.3.2 IP数据报 2.3.3 IP地址 2.3.4 IP子网 2.3.5 IP路由选择 2.3.6 路由的种类 2.4 TCP协议与UDP协议 2.4.1 TCP协议 2.4.2 UDP协议 第3章 Windows Socket七编程技术 3.1 Windows Socket简介 3.1.1 Windows Socket的发展 3.1.2 Windows Socket版本 3.2 套接字 3.2.1 套接字描述 3.2.2 客户端(机)/服务器模型 3.2.3 广播 3.2.4 字节顺序 3.3 基本Windows Socket APJ的简介 3.3.1 Windows Sockets的编程原理 3.3.2 Windows Socket的基本函数 3.4 基本MFC Socket类的简介 3.4.1 socket对象的创建和捆绑 3.4.2 异步网络事件的处理 第4章 多线程编程技术 4.1 多线程基础 4.1.1 进程 4.1.2 什么是线程 4.1.3 多线程的思考 4.2 线程操作 4.2.1 创建线程 4.2.2 线程终止 4.2.3 线程通信 4.2.4 线程同步 4.3 两个重要的线程 4.3.1 创建工作者线程 4.3.2 创建UI线程 4.4 多线程结构的网络编程技术第二部分 游戏编程小型应用实例 第5章 基于Internet的游戏聊天室开发 5.1 Winsock类创建的聊天室实例 5.1.1 程序设计结构及流程 5.1.2 程序的实现 5.2 CSocket类创建的聊天室实例 5.2.1 程序设计结构及流程 5.2.2 程序的实现 第6章 多机对战五子棋 6.1 走棋算法解析 6.1.1 相关数据结构 6.1.2 评分规格 6.1.3 走棋算法分析 6.2 程序设计结构及流程 6.3 程序实现 第7章 游戏大厅创建示例 7.1 游戏大厅开发的背景 7.2 游戏大厅的体系结构 7.3 游戏大厅的创建 7.3.1 NetManager类 7.3.2 DBRcquEst类 7.3.3 UserInf0Manager类 7.3.4 RoomInfloManager类 7.3.5 HallServer类 7.3.6 CHallDlg类第三部分 大型网络游戏编程案例 第8章 网络坦克对战游戏 8.1 游戏的设计规则及流程 8.1.1 游戏规则 8.1.2 游戏的特点 8.1.3 游戏设计特点 8.2 Tank游戏的实现 8.2.1 CGameManager类 8.2.2 CCommManager类 第9章 网络斗地主游戏 9.1 斗地主游戏简介 9.2 斗地主游戏的分析 9.3 程序实现 9.3.1 牌型管理 9.3.2 界面管理 9.3.3 游戏逻辑管理 9.3.4 游戏逻辑管理参考书目
2.1 网络通信模型为了简化包含在定义网络中的复杂性,标准化组织建立了称为模型(model)的图表。这些模型以逻辑方法定义网络系统的结构。IS0小组委员会在1984年发布了开放式系统互连(Open Systems Interconnection,OSI)的最终版本,紧跟该发行版之后建立了说明该标准的参考模型。0S1模型将通信任务划分为7层,并根据控制哪个位置所发生操作的协议定义每层。图2.1用一个堆栈标示出各层,以下将逐层分析该模型并说明每层的各种功能。请记住,0SI模型定义了网络从顶层到底层各部分的运作。在一个完整的网络系统中,要想具有完全的数据通信能力,网络的每个单独的实体或站点必须能够执行大多数的任务。OSl模型由7层组成;每层根据发生在其控制中的操作进行定义。重要的是两个不同系统中的层被认为是对等的。即,一台机器上的某层可以直接与另一台机器的同层进行通信,而不必考虑图2.1所示的堆栈中的其他层。按照惯例,第1层在最底部,第7层在最顶部。虽然0S1模型很有用,但TCP/IP协议与它并不是完全对应,下面采用对照的方式介绍OSI模型的各层。1.物理层当数据向网络进行传输时,物理层(physical layer),即最底层,担负着将数据从逻辑位格式转换并以电信号的格式放置在网络介质上的任务。当物理层接收数据时,它担负着从网络介质上获取电信号并将其转换成数据位的任务。因此,物理层定义电气特性和网络接口所需的连接。在TCP/IP协议中没有定义物理标准,它直接使用现有标准。 2.数据链路层 数据链路层(DLL)负责将数据传输的数据帧转换成可传递给物理层的二进制位。反之,它从物理层接收二进制位并将其转换成帧。TCP/IP在数据链路层中很少创建协议。
无
鸡肋。
需要一定的C++基础,书最大的亮点还是在于游戏网络的构建上面
书很不错,例子很nice,就是错别字有点多
随书光盘(虎口夺单-马克主讲)不是本书指定光盘,请更换!
还行,能学到些东西~~
还不如买本教科书来的实惠。。
很不错,就是内容缺点图片说明