《游戏软件开发基础》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:姚磊,陈帼鸾,陈洪编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302218050
  • 页数:291 页
图书介绍:本书作为游戏软件开发基础图书,共分为5个部分:第一部分讲解Windows基础,帮助读者掌握Windows基本概念和程序框架,让读者对整个Windows程序有个大体的认识。第二部分讲解Win32基本GDI绘图及DirectDraw基础,使读者初步掌握游戏图像的绘制。第三部分介绍DirectInput和DirectX Audio。第三部分结合前面所学的知识,学习RPG游戏制作的技巧,以及RPG游戏中所涉及的各种游戏元素的实现原理。第五部分讲解了ACT游戏的制作。

第1章 Windows基础 1

1.1 Windows概述 1

1.2 Windows的命名规则及窗口的创建 5

1.2.1 匈牙利规则 5

1.2.2 Windows窗口的创建 8

1.3 消息机制 20

1.4 鼠标和键盘 25

1.4.1 虚拟键码 26

1.4.2 鼠标基础 29

1.5 Windows的资源 30

1.6 本章习题 32

第2章 GDI的基本绘图 34

2.1 Windows绘图原理 34

2.1.1 GDI原理 34

2.1.2 色彩和坐标 38

2.2 GDI的基本元素——画笔和画刷 41

2.3 GDI图形绘制 44

2.4 位图 57

2.4.1 位图的传输 57

2.4.2 GDI位图对象 60

2.5 GDI+概述 63

2.6 Windows编程实例 76

2.6.1 蛇的画法 76

2.6.2 食物的画法 77

2.6.3 蛇和食物碰撞 78

2.6.4 贪吃蛇代码实现 79

2.7 本章习题 86

第3章 DirectDraw基础 88

3.1 DirectDraw简介 88

3.2 DirectDraw的基本概念 89

3.2.1 显示模式 89

3.2.2 硬件加速 90

3.2.3 表面 90

3.2.4 Bltting 91

3.2.5 色彩键码 92

3.2.6 调色板 93

3.2.7 剪裁 93

3.2.8 其他表面 94

3.2.9 Microsoft的COM规范 94

3.2.10 IUnknown接口 95

3.2.11 GUID 95

3.3 DirectDraw设置 96

3.4 DirectDraw的使用 99

3.4.1 建立DirectDraw对象 100

3.4.2 设置程序的协调层级 100

3.4.3 设置屏幕显示模式 101

3.4.4 建立绘图页和连接后备缓冲区 102

3.4.5 建立离屏缓冲区 103

3.4.6 读取位图操作 104

3.4.7 加载图片到缓冲区 104

3.4.8 贴图与翻页 105

3.4.9 DirectDraw绘图代码示例 106

3.5 DirectDraw的其他函数 116

3.5.1 Lock()和Unlock()函数 116

3.5.2 GetDC()和ReleaseDC()函数 117

3.5.3 PageLock()和PageUnlock()函数 117

3.5.4 IsLost()和Restore()函数 118

3.5.5 GetDDInterface()函数 119

3.5.6 表面连接函数 119

3.5.7 重叠函数 119

3.5.8 剪裁器函数 120

3.5.9 调色板函数 120

3.5.10 DirectDrawPalette接口函数 121

3.5.11 DirectDrawClipper接口函数 121

3.5.12 附加DirectDraw接口 122

3.6 本章习题 122

第4章 DirectInput基础 123

4.1 DirectInput概述 123

4.1.1 DirectInput的基本概念 124

4.1.2 DirectInput的实现步骤 124

4.2 DirectInput程序建立 125

4.2.1 创建DirectInput接口对象 126

4.2.2 创建DirectInput设备 127

4.2.3 设置DirectInput设备的数据格式 127

4.2.4 设置DirectInput设备的协调层次级别 128

4.2.5 设置设备的状态 129

4.2.6 获得输入设备的访问权 130

4.3 鼠标设备的使用 130

4.4 键盘设备的使用 131

4.5 具体代码实现 133

4.6 本章习题 141

第5章 DirectX Audio基础 142

5.1 音效原理及术语 142

5.1.1 采样频率 143

5.1.2 采样质量 143

5.1.3 立体声音 143

5.1.4 混音 144

5.2 DirectX中的声音处理 144

5.2.1 主缓冲区和辅缓冲区 145

5.2.2 Wave格式 145

5.3 DirectSound的运用 146

5.3.1 建立DirectSound对象 147

5.3.2 设置程序协调层级 148

5.3.3 创建主缓冲区 148

5.3.4 设置播放格式 149

5.3.5 加载WAV声音文件 150

5.3.6 建立辅缓冲区 151

5.3.7 加载WAV文件到辅缓冲区 152

5.3.8 播放声音 153

5.3.9 其他的播放函数 153

5.4 DirectMusic运用 159

5.4.1 初始化DirectMusic对象 160

5.4.2 创建DirectMusic对象 160

5.5 本章习题 165

第6章 RPG(角色扮演)游戏制作 166

6.1 精灵动画 166

6.2 游戏的帧速率 171

6.3 文字的显示 174

6.4 透明效果 175

6.4.1 基本原理和实现方法 175

6.4.2 Alpha融合技术 177

6.5 角色移动 182

6.5.1 角色属性定义 182

6.5.2 角色移动 183

6.6 二维游戏中的地图 185

6.6.1 固定地图 186

6.6.2 卷轴滚动地图 187

6.6.3 斜角地图 189

6.6.4 滚屏地图 190

6.6.5 多层次地图 192

6.6.6 具体地图实现代码 193

6.7 碰撞检测 197

6.7.1 范围碰撞检测 197

6.7.2 范围路线碰撞检测 198

6.7.3 颜色碰撞检测 202

6.8 本章习题 209

第7章 ACT游戏的制作(一) 210

7.1 图形手动切割 210

7.2 背景的滚轴实现 212

7.3 精灵图的实现 219

7.4 子弹的实现 221

7.4.1 添加子弹 221

7.4.2 删除子弹 222

7.4.3 子弹遍历处理 222

7.5 碰撞检测 223

7.6 敌机直线飞行 224

7.7 敌机的飞行轨迹 227

7.7.1 函数说明 227

7.7.2 文件要求 228

7.7.3 代码示例 228

7.8 具体代码实现 231

7.9 本章习题 263

第8章 ACT游戏的制作(二) 264

8.1 游戏界面 264

8.1.1 游戏界面介绍 264

8.1.2 游戏界面及其界面按钮的显示 265

8.1.3 鼠标和游戏界面的碰撞 266

8.1.4 游戏界面的效果 267

8.2 游戏中的背景 268

8.2.1 游戏背景介绍 268

8.2.2 背景的显示 269

8.2.3 背景的滚动 270

8.2.4 增加游戏背景后的效果 270

8.3 主角飞机 271

8.3.1 主角飞机介绍 271

8.3.2 主角飞机动画效果 271

8.3.3 主角飞机的移动 271

8.3.4 主角和敌人碰撞检测 273

8.3.5 增加主角后的效果 273

8.4 主角子弹 274

8.4.1 子弹的显示和动画 274

8.4.2 子弹的初始化 277

8.4.3 子弹和敌人碰撞检测 277

8.4.4 增加子弹后的效果 278

8.5 敌人 279

8.5.1 创建敌人类 279

8.5.2 敌人的初始化 284

8.5.3 敌人的动画和显示 284

8.5.4 增加敌人后的效果 285

8.6 爆炸效果 285

8.6.1 爆炸效果类 285

8.6.2 爆炸效果的放置 289

8.6.3 爆炸效果的显示 290

8.6.4 增加爆炸效果后的效果 290

8.7 总结 290

8.8 本章习题 291