游戏编程入门(第4版)

978-7-115-39041-7
作者: 【美】Jonathan S. Harbour
译者: 李军
编辑: 陈冀康

图书目录:

目录

第 1部分 Windows和DirectX游戏编程引言

第 1章 Windows初步 3

1.1 Windows编程概述 4

1.1.1 “获取”Windows 5

1.1.2 理解Windows消息机制 6

1.1.3 多任务 7

1.1.4 多线程 8

1.1.5 事件处理 9

1.2 DirectX快速概览 10

Direct3D是什么 11

1.3 Windows程序基础 12

1.3.1 创建第 一个Win32

项目 12

1.3.2 理解WinMain 20

1.3.3 完整的WinMain 21

1.4 你所学到的 23

1.5 复习测验 24

1.6 自己动手 25

第 2章 侦听Windows消息 26

2.1 编写一个Windows程序 27

2.1.1 理解InitInstance 34

2.1.2 理解MyRegisterClass 36

2.1.3 晒一晒WinProc的

秘密 39

2.2 什么是游戏循环 42

2.2.1 老的WinMain 42

2.2.2 WinMain和循环 45

2.3 GameLoop项目 47

GameLoop程序的源代码 47

2.4 你所学到的 54

2.5 复习测验 54

2.6 自己动手 55

第3章 初始化Direct3D 56

3.1 Direct3D初步 56

3.1.1 Direct3D接口 57

3.1.2 创建Direct3D对象 57

3.1.3 第 一个Direct3D项目 60

3.1.4 全屏模式的Direct3D 68

3.2 你所学到的 73

3.3 复习测验 73

3.4 自己动手 74

第 2部分 游戏编程工具箱

第4章 绘制位图 77

4.1 表面和位图 77

4.1.1 主表面 79

4.1.2 从的离屏(off-screen)

表面 80

4.1.3 Create Surface示例 82

4.1.4 装载位图 86

4.1.5 Load_Bitmap程序 88

4.1.6 代码回收利用 92

4.2 你所学到的 92

4.3 复习测验 93

4.4自己动手 94

第5章 从键盘、鼠标和控制器获得

输入 95

5.1 键盘输入 96

5.1.1 DirectInput对象和

设备 96

5.1.2 初始化键盘 97

5.1.3 读取键盘按键 99

5.2 鼠标输入 99

5.2.1 初始化鼠标 100

5.2.2 读取鼠标 101

5.3 Xbox 360控制器输入 102

5.3.1 初始化XInput 103

5.3.2 读取控制器状态 104

5.3.3 控制器振动 105

5.3.4 测试XInput 106

5.4 精灵编程简介 112

5.4.1 一个有用的精灵结构 114

5.4.2 加载精灵图像 115

5.4.3 绘制精灵图像 115

5.5 Bomb Catcher游戏 116

5.5.1 MyWindows.cpp 118

5.5.2 MyDirectX.h 120

5.5.3 MyDirectX.cpp 122

5.5.4 MyGame.cpp 127

5.6 你所学到的 131

5.7 复习测验 132

5.8 自己动手 133

第6章 绘制精灵并显示精灵动画 134

6.1 什么是精灵 134

6.2 加载精灵图像 135

6.3 透明的精灵 137

6.3.1 初始化精灵渲染器 138

6.3.2 绘制透明的精灵 140

6.4 绘制动画的精灵 147

6.4.1 使用精灵表 148

6.4.2 精灵动画演示 150

6.5 你所学到的 154

6.6 复习测验 154

6.7 自己动手 155

第7章 精灵变换 156

7.1 精灵旋转和缩放 156

7.1.1 2D变换 158

7.1.2 绘制变换了的精灵 163

7.1.3 Rotate_Scale_Demo

程序 164

7.1.4 带有变换的动画 166

7.2 你所学到的 169

7.3 复习测验 170

7.4 自己动手 171

第8章 检测精灵碰撞 172

8.1 边界框碰撞检测 172

8.1.1 处理矩形 173

8.1.2 编写碰撞函数 174

8.1.3 新的精灵结构 175

8.1.4 为精灵的缩放进行

调整 176

8.1.5 边界框演示程序 176

8.2 基于距离的碰撞检测 180

8.2.1 计算距离 181

8.2.2 编写距离计算的代码 181

8.2.3 测试的碰撞 183

8.3 你所学到的 183

8.4 复习测验 184

8.5 自己动手 185

第9章 打印文本 186

9.1 创建字体 186

9.1.1 字体描述符 187

9.1.2 创建字体对象 188

9.1.3 可重用的MakeFont

函数 188

9.2 使用ID3DXFont打印文本 189

9.2.1 使用DrawText打印 189

9.2.2 文本折行 190

9.3 测试字体输出 191

9.4 你所学到的 194

9.5 复习测验 194

9.6 自己动手 195

第 10章 卷动背景 196

10.1 卷动 196

10.1.1 背景和布景 198

10.1.2 从图片单元创建

背景 198

10.1.3 基于图片单元的

卷动 199

10.2 动态渲染的图片单元 205

10.2.1 图片单元地图 205

10.2.2 使用Mappy创建图片

单元地图 207

10.2.3 Tile Dynamic Scroll

项目 210

10.3 基于位图的卷动 217

10.3.1 基于位图的卷动

理论 217

10.3.2 位图卷动演示 218

10.4 你所学到的 221

10.5 复习测验 222

10.6 自己动手 223

第 11章 播放音频 224

11.1 使用DirectSound 224

11.1.1 初始化DirectSound 225

11.1.2 创建声音缓冲区 226

11.1.3 装载波形文件 226

11.1.4 播放声音 227

11.2 测试DirectSound 228

11.2.1 创建项目 229

11.2.2 修改“MyDirectX”

文件 230

11.2.3 修改MyGame.cpp 232

11.3 你所学到的 238

11.4 复习测验 239

11.5 自己动手 240

第 12章 学习3D渲染基础 241

12.1 3D编程简介 242

12.1.1 3D编程的关键组成

部分 242

12.1.2 3D场景 242

12.1.3 转移到第三个轴 247

12.1.4 掌握3D管线 248

12.1.5 顶点缓冲区 250

12.1.6 渲染顶点缓冲区 252

12.1.7 创建四边形 253

12.2 带纹理的立方体示例 256

12.3 你所学到的 264

12.4 复习测验 265

12.5 自己动手 266

第 13章 渲染3D模型文件 267

13.1 创建以及渲染后援网格 267

13.1.1 创建后援网格 268

13.1.2 渲染后援网格 270

13.1.3 编写着色器代码 270

13.1.4 Stock Mesh程序 272

13.2 装载并渲染模型文件 274

13.2.1 装载.X文件 275

13.2.2 渲染纹理模型 279

13.2.3 从内存中删除一个

模型 280

13.2.4 Render Mesh程序 281

13.3 你所学到的 289

13.4 复习测验 289

13.5 自己动手 290

第 14章 Anti-Virus(反病毒)

游戏 291

14.1 Anti-Virus游戏 291

14.1.1 游戏玩法 292

14.1.2 游戏源代码 302

14.2 你所学到的 329

14.3 复习测验 329

14.4 自己动手 330

第3部分 附 录

附录A 配置Visual Studio 2013 333

A.1 安装 333

A.2 创建一个新的项目 334

A.3 修改字符集设置 337

A.4 修改VC++路径 338

附录B 各章测验答案 339

详情

本书语言简练,适合有志于进入游戏编程世界且有一定C++编程基础的初学者阅读,也适合作为社会培训机构的培训教材。本书向初出茅庐的游戏开发人员展示了将游戏思想从概念转变为现实的方法。游戏的每个元素都在书中讲授——从学习如何创建简单的Windows程序,到使用关键的Directx组件来渲染2d和3d,再到给游戏添加声音。通过学习本书,读者可以开发出属于自己的用于构建将来的游戏项目的游戏库。

图书摘要

相关图书

Python面向对象编程:构建游戏和GUI
Python面向对象编程:构建游戏和GUI
精通游戏测试(第3版)
精通游戏测试(第3版)
罗布乐思开发官方指南 从入门到实践
罗布乐思开发官方指南 从入门到实践
游戏引擎原理与实践 卷2 高级技术
游戏引擎原理与实践 卷2 高级技术
游戏数值设计
游戏数值设计
游戏引擎原理与实践 卷1 基础框架
游戏引擎原理与实践 卷1 基础框架

相关文章

相关课程