第一篇 DirectX 3
第一章 DirectX简介 3
1.1 DOS已经过时 3
1.2 加速DirectX 4
1.3 加速计算机工业 5
1.4 Directness原理 5
1.5 Direct结构 6
1.6 DirectX组件 7
1.7 小结 8
第二章 基础 9
2.1 期望什么 9
2.2 COM(对象组件模型)入门 10
2.3 编程经验 14
2.4 调试DirectX 15
2.5 总结 17
第三章 开始使用DirectX 18
3.1 安装 18
3.2 文档 18
3.3 例子程序源代码 19
3.4 其他有用的信息 20
3.5 使用DirectX开始工作 23
3.6 总结 26
第二篇 DirectDraw 29
第四章 DirectDraw简介 29
4.1 显示技术 29
4.3 结构 32
4.2 DirectDraw对象 32
4.4 DirectXProperties对话框 34
4.5 总结 37
第五章 使用DirectDraw 38
5.1 例子程序 38
5.2 DirectDraw对象 38
5.3 协作级别 45
5.4 显示模式 46
5.5 总结 53
第六章 图面 54
6.1 例子程序 54
6.2 图面介绍 54
6.3 创建图面 61
6.4 调入图面 67
6.5 丢失的图面 69
6.6 总结 70
第七章 渲染 71
7.1 直接访问图面 71
7.2 与GDI一起使用 78
7.3 总结 80
第八章 位转换操作 81
8.1 例子程序 81
8.2 基本的位转换操作 82
8.3 特殊效果 87
8.4 回到例子程序 96
8.5 总结 97
9.1 撕裂现象 98
第九章 页面切换 98
9.2 DirectDraw切换 101
9.3 例子程序 104
9.4 使用切换图面 106
9.5 三个缓冲区或者更多 110
9.6 其他的应用程序 113
9.7 总结 113
第十章 调色板 114
10.1 调色板化显示模式 114
10.2 DirectDraw调色板 115
10.3 又撕裂了 122
10.4 其它调色板行为 124
10.5 总结 124
11.1 例子程序 125
第十一章 覆盖图 125
11.2 覆盖图简介 126
11.3 创建覆盖图 128
11.4 显示覆盖图 131
11.5 如果不工作 138
11.6 总结 138
第十二章 基于窗口的DirectDraw 139
12.1 例子程序 139
12.2 窗口中的事项 139
12.3 初始化 140
12.4 裁剪 144
12.5 调色板 148
12.6 渲染 152
12.7 重访丢失的图画 156
12.8 欣赏例子 157
12.9 总结 158
第十三章 应用DirectDraw 159
13.1 SpaceBrouhaha 159
13.2 设计显示 160
13.3 卡通制作 164
13.4 控制输入 168
13.5 改变显示模式 169
13.6 总结 170
第十四章 DirectSound介绍 173
14.1 DirectSound如何工作 173
第三篇 DirectSound 173
14.2 关于MIDI 174
14.3 DirectSoundCapture 174
14.4 声音格式 175
14.5 设置DirectSound 175
14.6 属性设置 184
14.7 例子程序 185
14.8 总结 186
第十五章 DirectSound回放 187
15.1 进一步了解从缓冲区对象 187
15.2 满足任务要求的最佳缓冲区对象 188
15.3 关于波形文件(.wav) 191
15.4 使用缓冲区对象 193
15.6 总结 206
15.5 处理DMA 206
第十六章 三维情景中的DirectSound 208
16.1 声源是如何放置的 208
16.2 3D空间中的声源 209
16.3 例子程序 214
16.4 使用3D声音缓冲区对象 214
16.5 使用Listener对象 217
16.6 总结 220
第十七章 声音捕获和通告 221
17.1 全双工声音操作例程 221
17.2 制作全双工声音 222
17.3 生成WAV文件 230
17.4 总结 232
第四篇 DirectPlay 235
第十八章 DirectPlay简介 235
18.1 DirectPlay 235
18.2 用DirectPlay游戏 237
18.3 应用程序设计 239
18.4 DirectPlay标签项 241
18.5 小结 242
第十九章 使用DirectPlay 243
19.1 示例程序 243
19.2 GUID知识 244
19.3 Step by Step 245
19.4 DirectPlay对象 245
19.5 取得连接 247
19.6 会话管理 252
19.7 小结 261
第二十章 消息处理 262
20.1 示例程序 262
20.2 DirectPlay通讯 263
20.3 对游戏者的管理 263
20.4 小组 270
20.5 DirectPlay消息运作 278
20.6 共享数据区 292
20.7 会话说明 296
20.8 小结 297
第二十一章 大厅 298
21.1 示例程序 298
21.2 设想在这里见到你 299
21.3 DirectPlayLobby对象 301
21.4 能用于大厅的程序 301
21.5 自带大厅 309
21.6 小结 314
第二十二章 应用DirectPlay 315
22.1 示列程序 315
22.2 同步 316
22.3 设计时的考虑 317
22.4 Brouhaha的外表与内核 319
22.5 小结 326
第五篇 DirectInput 329
第二十三章 DirectInput简介 329
23.1 示例程序 329
23.2 DirectInput概念 330
23.3 设置DirectInput 332
23.4 列举设备 333
23.5 设置设备 334
23.6 取得输入数据 349
23.7 DirectInput快速测试 352
23.8 小结 353
第二十四章 鼠标输入 354
24.1 鼠标按键 354
24.2 鼠标轴 354
24.3 以独占模式使用鼠标 355
24.4 鼠标缓冲区数据 356
24.5 鼠标立即数据 362
24.6 小结 362
25.1 为有效设备编写代码 364
第二十五章 游戏杆输入 364
25.2 游戏杆轴 367
25.3 游戏杆轴算法 368
25.4 视点帽 371
25.5 游戏杆按钮 371
25.6 获取立即游戏杆数据 371
25.7 小结 373
第二十六章 键盘输入 374
26.1 一个有101个按钮的游戏板 374
26.2 直接的键盘数据 375
26.3 基于缓冲区的键盘数据 379
26.4 总结 380
27.1 什么是力反馈 381
第二十七章 力反馈 381
27.2 力反馈的设备方法 384
27.3 基本效果参数 384
27.4 效果的种类 389
27.5 用封套对效果整形 397
27.6 在运转的效果 398
27.7 清除 403
27.8 创建设计者效果 404
27.9 小结 406
第六篇 DirectSetup 411
第二十八章 使用DirectSetup 411
28.1 例子程序 411
28.3 DirectX的再发行 412
28.2 获得DirectX 412
28.4 安装过程的挑战 414
28.5 控制安装 418
28.6 已安装DirectX的系统 425
28.7 小结 426
第二十九章 包装应用程序 427
29.1 例子程序 427
29.2 AutoPlay 428
29.3 执行AutoPlay 428
29.4 测试 430
29.5 禁止AutoPlay 432
29.6 充分利用AutoPlay 434
29.7 总结 435