计算机游戏编程:基础篇.pdf

计算机游戏编程:基础篇.pdf
 

书籍描述

编辑推荐
《计算机游戏编程:基础篇》由北京大学出版社出版。

目录
第一章 计算机游戏概述
1.1 计算机游戏的定义
1.1.1 游戏技术
1.1.2 游戏内容
1.1.3 游戏的玩家
1.2 计算机游戏设计要素
1.2.1 计算机游戏的结果
1.2.2 计算机游戏角色的成就
1.2.3 游戏情景改变及问题解决
1.2.4 游戏角色和虚拟世界
1.2.5 游戏中的个人经验
1.3 计算机游戏发展历程
1.3.1 国外游戏业的发展
1.3.2 国内游戏业的发展
1.4 计算机游戏的展望
1.5 计算机游戏编程技巧
1.6 小结

第二章 计算机游戏框架
2.1 计算机游戏的主要流程
2.2 计算机游戏设计的语言选择
2.3 计算机游戏编程模型
2.3.1 应用程序窗口
2.3.2 面向对象编程
2.4 游戏框架函数
2.4.1 游戏入口
2.4.2 注册Windows类
2.4.3 创建游戏窗口
2.4.4 显示和刷新游戏窗口
2.4.5 游戏消息循环
2.4.6 游戏事件处理程序
2.5 游戏框架实例
2.6 小结

第三章 计算机游戏背景设计基础
3.1 位图结构分析及其显示
3.1.1 位图结构分析
3.1.2 游戏中位图加载和显示
3.2 简单游戏背景实例
3.3 游戏画面特效处理
3.3.1 画面透明效果
3.3.2 画面半透明效果
3.3.3 画面透明半透明效果
3.4 游戏地图绘制
3.4.1 平面地图贴图
3.4.2 斜角地图贴图
3.4.3 景物地图贴图
3.4.4 地图绘制的优缺点
3.5 小结

第四章 计算机游戏动画设计基础
4.1 玩家控制角色的动画
4.1.1 键盘输入消息
4.1.2 键盘控制角色动画
4.1.3 鼠标输入消息
4.1.4 鼠标控制角色动画
4.2 计算机角色动画
4.2.1 计算机角色的简单动画
4.2.2 计算机角色的循环动画
4.2.3 计算机角色的透明动画
4.3 游戏动画显示问题及改进
4.3.1 动画贴图坐标修正
4.3.2 多角色动画贴图
4.4 游戏背景动画设计
4.4.1 单一滚动背景动画
4.4.2 循环背景动画
4.4.3 多背景循环动画
4.5 小结

第五章 游戏中的物理现象
5.1 物体运动
5.1.1 匀速运动
5.1.2 加速运动
5.1.3 阻尼运动
5.2 物体间的碰撞
5.2.1 区域检测碰撞
5.2.2 颜色检测碰撞
5.2.3 行进路线检测碰撞
5.2.4 碰撞反应
5.3 游戏中的粒子系统
5.4 小结

第六章 游戏中的群聚现象
6.1 基本群聚算法
6.2 游戏中的群聚
6.2.1 个体转向力
6.2.2 邻近个体
6.2.3 群聚算法设计规则
6.3 基本群聚算法的修改
6.3.1 避开障碍物
6.3.2 跟随领头者
6.4 小结

第七章 游戏中的人工智能
7.1 游戏中人工智能简介
7.2 游戏人工智能技术
7.2.1 有限状态机
7.2.2 模糊逻辑
7.2.3 脚本语言方法
7.2.4 群体行为模拟
7.2.5 决策树
7.2.6 游戏中各种人工智能优缺点分析
7.3 人工智能在游戏中应用
7.3.1 移动型游戏的人工智能
7.3.2 行为型游戏的人工智能
7.3.3 策略型游戏的人工智能
7.4 路径搜索技术
7.4.1 路径寻找技术
7.4.2 直线路径法
7.4.3 最短路径法
7.4.4 基于A的路径搜索
7.4.5 游戏中路径搜索技术的选择
7.5 游戏智能设计和实现原则
7.6 其他人工智能
7.6.1 人工神经元网络
7.6.2 遗传算法
7.7 小结

第八章 游戏中的声音
8.1 声音的基础知识
8.2 声音的编码存储
8.3 游戏中声音的合成
8.4 常见声音文件格式
8.4.1 WAV文件格式
8.4.2 MIDI文件格式
8.5 声音播放
8.5.1 MIDI的播放
8.5.2 WAV文件的播放
8.6 游戏音频综述
8.7 小结

第九章 游戏引擎和游戏调试
9.1 游戏开发理念及方法
9.2 游戏引擎简介
9.3 游戏引擎的常见功能
9.4 游戏引擎的发展简史
9.5 游戏调试
9.5.1 调试的任务
9.5.2 游戏的测试人员组成
9.5.3 游戏调试
9.6 小结

第十章 3D游戏初步
10.1 DirectX发展历程及特色
10.2 DirectXSDK简介
10.3 DirectGraphics的使用
10.4 DirectSound的使用
10.5 DirectPlay的使用
10.6 3D游戏框架
10.6.1 创建程序框架
10.6.2 初始化Direct3D
10.6.3 渲染
10.6.4 释放接口
10.7 小结

第十一章 3D游戏建模及变换
11.1 3D空间坐标系
11.1.1 世界坐标系
11.1.2 本地坐标系
11.1.3 屏幕坐标系
11.2 三维场景的几何建模
11.3 三维空间坐标的转换
11.3.1 三维物体的显示
11.3.2 场景中的三维物体
11.4 三维物体的光照计算
11.4.1 光源与材质
11.4.2 光照明模型
11.5 小结
参考文献

序言
电子游戏集高科技性、娱乐性、竞技性、仿真性等诸多要素于一体,已经成为全球最受欢迎的新兴娱乐形式之一。进入21世纪后,以电子游戏为先锋的互动娱乐产业也迅速崛起为最新的朝阳产业,成为数字娱乐的增长热点。中国游戏产业虽然起步也比较早,但由于政策不明确、经营思路过于功利、专业人员缺乏、核心技术落后等原因,使得我国的游戏产业全面落后于发达国家。近两年来这种情况虽然发生了根本性的改变,但游戏开发人才的缺乏直接影响到我国游戏的自主开发,抑制了我国游戏产业的发展。当意识到培养自己的游戏人才才能保证游戏产业在国内有更大的发展时,中国教育界立刻开始行动,创办了游戏学院和游戏培训学校,设置了相关的专业和学科。
就游戏程序设计的人才培养而言,经过一定的专业领域知识培训,有一到两年编程经验的程序员都可以胜任计算机游戏编程。在中国大多数程序员并没有投身到游戏开发领域,主要原因是对游戏开发的专业领域知识不了解。传统的相关游戏教材往往只侧重于游戏理论或编程技术,将游戏开发的理论和编程实践分开。本书是在肖永亮编写的《Visual C++游戏编程基础》基础上,结合计算机科学和现代游戏发展的最新成果,以及学生对教材的反馈意见而编写的。深入浅出地讲解概念,将游戏开发与实例相结合,逐步实现自己制作游戏。本书包括游戏画面绘制、游戏输入消息处理、游戏动画技巧、游戏物理现象设计原理、游戏人工智能及如何进入3D世界等基本的游戏知识。同时分析了传统游戏编程的不足并提出了改进措施。
本书的计算机游戏概述部分由周激流编写,计算机游戏框架由张卫华编写,游戏背景、动画设计,和游戏中的物理、群聚现象及人工智能由何坤编写,游戏中的声音由琚生根编写,游戏引擎由林涛编写,3D游戏初步介绍及建模由詹晓倩编写,全书由何坤统稿。在本书的编写过程中,参阅了大量的游戏编程书籍和资料,在此向有关作者表示衷心的感谢。本书的编写也得到课程组各位老师的大力支持,在此向他们表示诚挚的感谢。其中部分代码由天思智能研究所提供,在此向研究所的各位同人表示衷心感谢。

文摘
插图:

计算机游戏编程:基础篇

1.1.1 游戏技术
从技术的角度看,计算机游戏是以计算机为操作平台,通过人机互动形式实现的、能够体现当前计算机技术较高水平的一种新的娱乐方式。传统的游戏至少需要两个参与者,但是计算机游戏可以允许一个游戏玩家从事娱乐活动,另一参与者是计算机控制的角色,这一角色是以计算机为操作平台。
游戏是通过玩家之间的交互实现的,计算机游戏也一样。因此计算机游戏必须具有高度的互动性。所谓互动性是指玩家所进行的操作在一定程度上及一定范围内控制和影响游戏进程。如果玩家在游戏过程中改动的范围越大,玩家在游戏过程中发挥自己的能力空间就越大,那么在游戏过程中得到的乐趣就越多。计算机能够根据玩家的指令作出合理反应,从而促使玩家对计算机作出回应,进行相应的人机交流。游戏情节在玩家与计算机的交替推动下向前行进,不断地深入,直到以某种方式结束。
计算机对玩家动作反应的真实性、合理性和反应速度取决于计算机技术水平。其反应速度一部分受到计算机硬件限制。所以当计算机更新换代时,计算机游戏也发生相应的变化:当Windows系列平台出现时,DOS的游戏就逐渐走向没落;,当计算机从486时代进入586时代,原本流行的256色(灰度图像画面)游戏被真彩色(彩色图像画面)所取代;当光驱成为计算机的标准配件后,以磁盘作为存贮介质的游戏也纷纷推出了光盘版;当3D加速卡在市场上逐渐流行起来时,出现了很多必须要用3D加速卡才能运行的三维游戏。计算机游戏体现了计算机技术的较高水平。

内容简介
《计算机游戏编程:基础篇》内容简介:计算机游戏如同戏剧、电影一样,是一种新型的综合艺术产品,计算机游戏软件的开发和一般软件开发有着明显的不同。计算机游戏程序设计人员不仅需要掌握程序设计技巧和软件工程方法,还需要有坚实的专业领域知识,才能有效地生成和实现游戏的画面内容、音效处理以及与玩家的交互等。
《计算机游戏编程:基础篇》介绍了如何以Visual C++及DirectX来设计游戏,并以深入浅出的概念讲解与游戏实例相结合来逐步实现自己制作游戏的。《计算机游戏编程:基础篇》讲解了游戏画面绘制、游戏输入消息处理、游戏动画技巧、游戏物理现象设计原理、游戏人工智能及如何进入3D世界等基本的游戏设计基础。除了让学习者有清楚的基础概念以外,还能实际地应用于游戏设计。

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多