端游开发是目前最热的职业,报酬丰厚且能实现自己的游戏梦想。作者历经一年时间,编写了这本详细讲解Windows游戏开发的入门图书。
《逐梦旅程:Windows游戏编程之从零开始》由浅入深,从Windows游戏开发的基本概念开始讲解,寓教于乐,每个知识点都配有经典的游戏源码 作为实例。让读者可以从零开始,边玩边学,熟练掌握Windows游戏开发。
《逐梦旅程:Windows游戏编程之从零开始》涵盖了市场上最新的DirectX技术,使读者在第一时间接触最新、最前沿的游戏开发技术,同时《逐梦旅程:Windows游戏编程之从零开始》对目前游戏市场里热门的几大游戏引擎都进行了深入浅出的剖析和对比,让读者轻松迈入游戏开发的殿堂。
《逐梦旅程:Windows游戏编程之从零开始》适合Windows游戏开发的初学者阅读,也适合作为高等院校和培训学校相关专业的教学参考书。
书本导读
1. 如果你的编程经验为零:
毫无编程经验的朋友,请先阅读介绍C++编程语言的相关书籍,再来延续我们的梦想,阅读这本书。学习C++推荐书目: C++ Primer和C++ Primer Plus。
2. 如果你有C++编程经验但没有接触过Windows 编程:
有C++编程经验但毫无Windows编程经验的朋友,可以重头到尾顺畅的阅读这本书。因为这本书最准确的定位就是有一点C++编程经验之后从零开始掌握Windows游戏编程。
3. 如果你有Windows 编程经验,但不熟悉GDI:
有Windows编程经验但不熟悉GDI的朋友,推荐适当阅读第一章之后,从第4章开始您的征程。
4. 如果你想了解Windows GDI游戏绘图技巧:
想了解Windows GDI游戏绘图技巧的朋友,请阅读第5章。
5. 如果你想了解Windows游戏动画技巧:
想了解Windows游戏动画技巧的朋友,第6章会满足你的好奇心。
6. 如果你想了解Windows小游戏键盘鼠标编程的相关知识:
需要了解Windows中小游戏对键盘鼠标编程相关知识的朋友,第7章会给你答案。
7. 如果你想看看Windows GDI如何写出好玩的程序:
想看看Windows GDI可以弄出哪些好玩的玩意儿的朋友,第8章会给你惊喜。
8. 如果你想了解一个GDI小游戏完整的开发过程:
想了解一个结构完整的小游戏的开发过程的朋友们,第9章会超出你们的期待。
9. 如果你已经准备好迎接挑战,开始学习DirectX游戏编程:
有一定Windows编程经验,并且了解GDI编程,想开始DirectX 3D游戏编程学习的朋友,请从第10章开始阅读。这本书从第10章往后的内容组织起来是一个系统的DirectX游戏编程教材,其实可以单独成书的。
序 致终将由我们去复兴的国产游戏
我们所有的梦想都可以成真,只要我们有勇气去追求它们(Allour dreams can come true, if we have the courage to pursue them)。
————沃尔特·迪斯尼
依稀记得那还是F4红遍大街小巷,满城都飘扬着《流星雨》的年代。
那个时候的电子游戏,无论是投币式的街机游戏,还是网吧里的《反恐精英》、《流星蝴蝶剑》、《仙剑奇侠传》、《星际争霸》、《帝国时代》等引领时代的游戏界的璀璨明珠,总能深深地吸引住每个纯真无邪的孩童的心,绚烂的游戏画面总是让孩童们流连忘返。
那个时候,每次放学后唯一单纯的想法就是悄悄溜到学校附近的网吧,和电脑游戏亲密接触。口袋里有零花钱的时候就能玩上一会儿,没有零花钱的时候就痴痴地站在屏幕前面看别人操纵着屏幕前的剑侠闯荡世界。年少的我单纯地认为,游戏世界中存在着一个无比恢弘的世界,那是可以装下梦想的地方。应该是我对游戏的痴迷,对游戏开发梦想的虔诚,让我走向了研究游戏开发的这条道路。
还记得那个香樟树覆盖的夏天,年幼无知的我在一帮同学中吹牛说:我长大后,一定要自己开发出比这些游戏还牛、还要好玩的游戏。
现在想想,这几年走过的路途,真应了那句话,“现在的努力,都是为了小时候吹过的牛”。
这些年来,在学习游戏编程的道路上有过惊喜,有过坎坷,有过自豪,有过怅惘,走了不少弯路,最终也算是走上了正途,小有所成。于是,我单曲循环着五月天的《有些事情现在不做一辈子都不会做了》,打开Word,打开Visual Studio,把自己这么多年来的游戏开发经验和心得用文字凝聚起来,开始为大家编写这本书。
而这么一写,就是一整年。
经过一年夙兴夜寐,终于,赶在22岁生日之前,近百万字的书稿随着一声响指而初具雏形。
“谨以此书献给父母,因养育之恩无以回报;谨以此书献给母校南京航空航天大学和乌克兰国立航空航天大学,因赐予我一颗不甘平庸、上下求索的心;谨以此书献给所有怀揣游戏开发梦想的人们,因为,你们不是一个人在战斗。”
当在书稿的开篇写下这三个“谨以”的时候,我终于意识到,这一年的夜以继日,这一年的披星戴月,都是值得的。
然而,因为岁月积累的关系,这本书中渗透的编程思想或许不能和编程界中的泰斗们同日而语。但是我可以捂着胸口说,我把这些年自己悟出来的关于游戏编程的学习方法和真知灼见,毫无保留地呈现给了大家。大家能看到的眼前的这些文字和代码,全都是经过一遍又一遍的深思熟虑,一遍又一遍的修改,小心谨慎地敲出来的。
详细研究过游戏编程的朋友们都应该有这样的共识:“中国人写的书水平上不去,外国人写的书水平有了,但是翻译得往往都强差人意,理解不了”。也许正是这个原因,国内游戏编程的入门门槛一直很高,DirectX一直被人们认为是很难学的。很多怀揣游戏开发梦想的热血青年们,信誓旦旦地开始着手学习游戏编程的时候,往往却被晦涩难懂的游戏编程教材拒之梦想门外,碰了一鼻子灰,从此和最初的梦想失之交臂。我想,这或许是导致国产游戏业界的萎靡,国产游戏一直很难成长起来的原因之一。
在这样的环境的激励下,这本倾注我一年多心血的书出现了,愿它能够改变这样的现状。
愿这本书,能帮助那些热爱游戏编程、怀揣游戏开发梦想,却苦于难以入门的人们,让他们少走弯路。
愿这本书,能为国产游戏、国产游戏引擎的崛起,开启一扇门,迎接新的黎明。
我们都还年轻,该做的梦及时去做,该追寻的梦想用力去追寻。
我有一个梦想,将来的某一天,大家都能玩到拥有自己本土文化的优质游戏。
我有一个梦想,有一天,西游记能出ACT,让老外去体会中国文化西游记中“斗战胜佛”的打击快感,那一定比西方的动作巅峰之作《战神》、《鬼泣》更加深邃。
我有一个梦想,有一天,上海滩能出沙盒游戏,而不是玩《GTA》感受美国梦,亦或是玩着《热血无赖》体验国外公司强行塞给我们的“中国文化”。
我有一个梦想,有一天,不少3A大作不需要汉化,因为是我们自己的游戏,配音是中国的,文化也是中国的。
我有一个梦想,将来的某一天,国产游戏能像中国的其他产业一样,以一个领跑者的姿态,面对全世界,面对全宇宙,器宇轩昂,扬眉吐气。
这会是由我们一起去完成的梦想。
等着我们的好消息!
序 篇 逐梦·游戏开发梦想的重量
第1章 高瞻远瞩——游戏开发面面观............................................................................... 3
1.1 逐梦——梦想让我们不孤单................................................................................ 4
1.1.1 现在的努力,就是为了证明小时候吹过的牛................................................ 4
1.1.2 为梦想,为国产游戏的未来,请把这本书读下去.......................................... 4
1.2 游戏产业的黎明................................................................................................. 5
1.3 游戏产业的分类——六大游戏市场....................................................................... 6
1.3.1 3A级游戏开发领域................................................................................... 6
1.3.2 社交和休闲游戏开发领域.......................................................................... 8
1.3.3 移动游戏开发领域.................................................................................... 9
1.3.4 功能型游戏开发领域................................................................................. 9
1.3.5 学术型游戏开发领域............................................................................... 10
1.3.6 独立型游戏开发领域............................................................................... 10
1.4 游戏平台与游戏开发编程语言的认知.................................................................. 11
1.5 对游戏类型的认知............................................................................................ 12
1.6 游戏开发中图形API的概念.............................................................................. 14
1.7 游戏编程学习路线总结..................................................................................... 15
1.8 章节小憩......................................................................................................... 16
第一篇 起航 · 夯实游戏程序之根
第2章 开锋你的绝世名刃—— Visual Studio开发环境的安装、配置............................... 19
2.1 Visual Studio、VC++和C++的那些事儿............................................................ 20
2.2 Visual Studio 2010的下载、安装与配置............................................................ 21
2.2.1 下载VisualStudio 2010......................................................................... 21
2.2.2 安装VisualStudio 2010......................................................................... 22
2.2.3 初次配置VisualStudio 2010................................................................... 25
2.2.4 Visual Studio 2010常用设置介绍............................................................ 26
2.3 Visual Studio 2010使用指南............................................................................ 27
2.3.1 集成开发环境简介.................................................................................. 27
2.3.2 Visual Studio界面概述........................................................................... 28
2.3.3 工具栏选项............................................................................................ 29
2.4 百科全书——帮助文档与MSDN....................................................................... 30
2.4.1 MSDN的安装........................................................................................ 31
2.4.2 离线查看MSDN的方法.......................................................................... 33
2.4.3 使用MSDN帮助文档.............................................................................. 34
2.5 Coding路上不孤单——强大的编程助手Visual AssistX...................................... 34
2.6 长征第一步——第一个程序的创建与编写........................................................... 36
2.6.1 关于项目与解决方案............................................................................... 36
2.6.2 第一个程序的创建与编写......................................................................... 37
2.6.3 Visual Studio文件类型分析.................................................................... 41
2.7 章节小憩......................................................................................................... 42
第3章 启程——Windows编程基础................................................................................ 43
3.1 高瞻远瞩——Windows编程体系与游戏编程....................................................... 44
3.2 理解两个术语——API与SDK........................................................................... 45
3.2.1 何为API................................................................................................ 45
3.2.2 什么是SDK........................................................................................... 46
3.3 Windows程序的“心脏”——WinMain函数...................................................... 46
3.3.1 WinMain函数......................................................................................... 46
3.3.2 MessageBox函数.................................................................................. 49
3.3.3 PlaySound函数..................................................................................... 51
3.3.4 示例程序Firstblood!............................................................................ 52
3.4 Windows程序的“外貌”——窗口.................................................................... 55
3.5 Winodows资源的“身份证”——句柄.............................................................. 55
3.6 Windows程序的“邮局”——消息与消息队列................................................... 56
3.6.1 消息的表示形式——MSG结构体............................................................. 56
3.6.2 关于消息队列......................................................................................... 58
3.7 步步为营——窗口创建四步曲........................................................................... 58
3.7.1 窗口类的设计......................................................................................... 58
3.7.2 窗口类的注册......................................................................................... 63
3.7.3 窗口的正式创建...................................................................................... 64
3.7.4 窗口的显示和更新.................................................................................. 66
3.8 各有千秋——两套消息循环体系........................................................................ 68
3.8.1 以GetMessage为核心的消息循环体系.................................................... 69
3.8.2 以PeekMessage为核心的消息循环体系.................................................. 71
3.9 Windows程序的“中枢神经”——窗口过程函数................................................ 73
3.10 做好善后——窗口类的注销............................................................................. 75
3.11 牛刀小试——一个完整的窗口程序的诞生......................................................... 76
3.12 小不忍则乱大谋——关于命名规范................................................................... 80
3.13 章节小憩....................................................................................................... 82
第二篇 初探 · GDI 2D游戏编程
第4章 入门心法——Windows游戏图形基础.................................................................. 85
4.1 Windows图形设备接口(GDI)........................................................................ 86
4.1.1 GDI的初印象......................................................................................... 86
4.1.2 用GDI写游戏的认知.............................................................................. 86
4.1.3 关于GDI+............................................................................................. 87
4.1.4 GDI的特点............................................................................................ 87
4.1.5 GDI中的基本图形.................................................................................. 88
4.1.6 GDI的函数分类...................................................................................... 89
4.2 设备环境(DC)............................................................................................. 90
4.2.1 设备环境的基本概念............................................................................... 90
4.2.2 获取设备环境句柄(HDC)的两种方式..................................................... 91
4.3 Windows屏幕区域相关概念阐述....................................................................... 94
4.3.1 屏幕区、窗口区与客户区......................................................................... 94
4.3.2 坐标点与坐标变换.................................................................................. 94
4.4 写一个GDI程序通用框架................................................................................. 95
4.5 GDI基本几何绘图.......................................................................................... 100
4.5.1 创建画笔.............................................................................................. 100
4.5.2 创建画刷.............................................................................................. 101
4.5.3 图形对象的选择.................................................................................... 102
4.5.4 绘制图形和线条.................................................................................... 103
4.6 游戏随机数系统初步....................................................................................... 105
4.6.1 游戏中的随机系统概述.......................................................................... 105
4.6.2 随机系统初步....................................................................................... 106
4.6.3 几种随机数的简单算法.......................................................................... 108
4.6.4 产生一定范围内随机数的通用算法公式................................................... 109
4.6.5 总结.................................................................................................... 109
4.6.6 示例程序GDIdemo1............................................................................. 110
4.7 文字的输出.................................................................................................... 113
4.7.1 最常用文字输出函数TextOut................................................................. 114
4.7.2 进阶文字输出函数................................................................................. 114
4.7.3 设置文字颜色....................................................................................... 115
4.7.4 设置文字背景透明................................................................................. 116
4.7.5 字体的创建.......................................................................................... 116
4.7.6 总结.................................................................................................... 117
4.7.7 示例程序GDIdemo2............................................................................. 119
4.8 位图绘制基础................................................................................................ 120
4.8.1 位图绘制四步曲.................................................................................... 121
4.8.2 示例程序GDIdemo3............................................................................. 125
4.9 消除闪烁:缓冲显示技术................................................................................ 127
4.10 章节小憩..................................................................................................... 128
第5章 遮羞的艺术——Windows游戏绘图技巧............................................................ 129
5.1 透明贴图的两套体系....................................................................................... 130
5.2 透明遮罩法.................................................................................................... 130
5.2.1 具体实现细节....................................................................................... 131
5.2.2 示例程序GDIdemo4............................................................................. 134
5.3 透明色彩法.................................................................................................... 137
5.3.1 具体实现细节....................................................................................... 137
5.3.2 示例程序GDIdemo5............................................................................. 139
5.4 自己动手处理图片素材................................................................................... 141
5.4.1 游戏素材的来源.................................................................................... 142
5.4.2 Photoshop图像处理软件...................................................................... 142
5.4.3 处理游戏素材图片................................................................................. 143
5.5 章节小憩....................................................................................................... 150
第6章 光与影的交汇——Windows游戏动画技术......................................................... 151
6.1 定时器动画显示............................................................................................. 152
6.1.1 创建定时器.......................................................................................... 152
6.1.2 WM_TIMER消息响应............................................................................ 153
6.1.3 删除定时器.......................................................................................... 154
6.1.4 示例程序GDIdemo6............................................................................. 155
6.2 游戏循环动画显示.......................................................................................... 161
6.3 透明动画....................................................................................................... 165
6.4 排序贴图....................................................................................................... 169
6.5 章节小憩....................................................................................................... 175
第7章 做游戏的主人——Windows游戏输入消息处理.................................................. 176
7.1 Windows键盘消息处理.................................................................................. 177
7.1.1 虚拟键码与键盘消息............................................................................. 177
7.1.2 键盘消息处理....................................................................................... 181
7.1.3 示例程序GDIdemo10........................................................................... 182
7.2 Windows鼠标消息处理.................................................................................. 187
7.2.1 鼠标消息的处理方式............................................................................. 187
7.2.2 鼠标相关常用函数讲解.......................................................................... 189
7.3 章节小憩....................................................................................................... 199
第8章 玄妙的物理——物理建模与粒子系统初步.......................................................... 201
8.1 基础物理建模初步.......................................................................................... 202
8.1.1 匀速与加速运动模拟............................................................................. 202
8.1.2 重力系统模拟....................................................................................... 207
8.1.3 摩擦力系统模拟.................................................................................... 210
8.2 粒子系统初步................................................................................................ 214
8.2.1 基本概念.............................................................................................. 214
8.2.2 雪花飞舞示例程序................................................................................. 215
8.2.3 星光绽放示例程序................................................................................. 219
8.3 章节小憩....................................................................................................... 224
第9章 梦的初现——开发回合制游戏《勇者斗恶龙》................................................... 225
9.1 设计游戏登场角色.......................................................................................... 226
9.2 设计主角角色技能.......................................................................................... 228
9.2.1 “无敌斩”角色技能设计....................................................................... 228
9.2.2 “烈火剑法”角色技能设计.................................................................... 228
9.2.3 “气疗术”角色技能设计....................................................................... 229
9.2.4 “恩赐解脱”角色技能设计.................................................................... 229
9.3 设计反派角色技能.......................................................................................... 230
9.3.1 人工智能技术一瞥................................................................................. 230
9.3.2 反派人物AI的设计............................................................................... 232
9.3.3 “幽冥鬼火”反派技能设计.................................................................... 233
9.3.4 “嗜血咒”反派技能设计....................................................................... 233
9.3.5 “致命一击”反派技能设计.................................................................... 234
9.3.6 “使用梅肯斯姆”反派技能设计............................................................. 234
9.4 书写游戏程序实现代码................................................................................... 235
9.4.1 游戏资源的初始化................................................................................. 235
9.4.2 功能函数的实现.................................................................................... 238
9.4.3 游戏主体部分的实现............................................................................. 240
9.4.4 游戏窗口过程函数的实现....................................................................... 244
9.4.5 玩家动作逻辑与技能特效绘图函数的实现................................................ 245
9.4.6 反派动作逻辑与绘图函数的实现............................................................. 248
9.5 整合代码,完成游戏开发................................................................................ 251
9.6 玩游戏.......................................................................................................... 269
9.7 游戏打法攻略、改进与素材............................................................................. 271
9.8 章节小憩....................................................................................................... 272
第三篇 飞跃 · DirectX游戏编程基础
第10章 快到碗里来——DirectX大局观认知................................................................. 275
10.1 对DirectX的认知......................................................................................... 276
10.1.1 DirectX的目前地位............................................................................. 276
10.1.2 DirectX的两种不同含义...................................................................... 277
10.1.3 DirectX的几套开发方案...................................................................... 278
10.1.4 图形API体系认知............................................................................... 278
10.1.5 微软的宠儿——DirectX....................................................................... 279
10.1.6 不甘做备胎——OpenGL...................................................................... 279
10.2 宿敌的世纪之斗:DirectX与OpenGL的博弈.................................................. 280
10.3 DirectX开发环境的配置................................................................................ 282
10.4 新版DirectXSDK的组件介绍....................................................................... 286
10.4.1 新版DirectXSDK中现存的组件.......................................................... 286
10.4.2 新版DirectXSDK中被移除的组件....................................................... 288
10.4.3 关于当前2D游戏开发可用的图形API................................................... 289
10.5 对DirectXSDK文件组成的剖析.................................................................... 289
10.6 让DirectXSDK物尽其用............................................................................. 294
10.7 选择我们的DirectX学习版本........................................................................ 295
10.7.1 DirectX的几套版本简介...................................................................... 295
10.7.2 DirectX11 vs DirectX9,现阶段学哪个好.............................................. 295
10.8 当前Direct3D中的两套渲染体系................................................................... 297
10.9 Direct3D程序的体系结构.............................................................................. 298
10.10 学习DirectX的两个技巧............................................................................. 300
10.11 章节小憩................................................................................................... 300
第11章 三维内功心法——Direct3D编程基础............................................................... 301
11.1 典型Direct3D程序流程分析.......................................................................... 302
11.2 对COM接口对象的一些介绍......................................................................... 303
11.3 写一个DirectX程序通用框架........................................................................ 304
11.4 化腐朽为神奇——Direct3D初始化四步曲....................................................... 310
11.4.1 Direct3D初始化四步曲概述................................................................. 310
11.4.2 Direct3D初始化四步曲之一:创接口.................................................... 310
11.4.3 Direct3D初始化四步曲之二:取信息.................................................... 311
11.4.4 Direct3D初始化四步曲之三:填内容.................................................... 313
11.4.5 Direct3D初始化四步曲之四:创设备.................................................... 315
11.4.6 Direct3D初始化四步曲代码赏析........................................................... 316
11.4.7 示例程序D3Ddemo1.......................................................................... 317
11.5 深入理解Direct3D动画显示技术——交换链................................................... 319
11.6 对固定功能渲染流水线体系的理解................................................................. 321
11.7 Direct3D中的“绘制金钥匙”—— Direct3D设备接口..................................... 322
11.8 Direct3D中二维文本的绘制.......................................................................... 323
11.8.1 D3DXCreateFont函数........................................................................ 324
11.8.2 DrawText函数.................................................................................... 325
11.9 起承转合的艺术:Direct3D渲染五步曲.......................................................... 326
11.9.1 Direct3D渲染五步曲概述.................................................................... 326
11.9.2 五步曲之一:清屏操作........................................................................ 327
11.9.3 五步曲之二:开始绘制........................................................................ 329
11.9.4 五步曲之三:正式绘制........................................................................ 329
11.9.5 五步曲之四:结束绘制........................................................................ 330
11.9.6 五步曲之五:翻转显示........................................................................ 330
11.9.7 Direct3D渲染五步曲代码整体赏析....................................................... 331
11.9.8 示例程序D3Ddemo2.......................................................................... 331
11.10 章节小憩................................................................................................... 337
第12章 腾飞前的助跑——Direct3D 绘制基础............................................................. 338
12.1 顶点缓存的逆袭........................................................................................... 339
12.1.1 引言.................................................................................................. 339
12.1.2 顶点缓存相关基础知识........................................................................ 339
12.1.3 顶点缓存使用四步曲之一:设计顶点缓存.............................................. 340
12.1.4 顶点缓存使用四步曲之二:创建顶点缓存.............................................. 342
12.1.5 顶点缓存使用四步曲之三:访问顶点缓存.............................................. 345
12.1.6 顶点缓存使用四步曲之四:图形的绘制.................................................. 347
12.1.7 示例程序D3Ddemo3.......................................................................... 350
12.2 索引缓存——顶点缓存的红颜知己................................................................. 354
12.2.1 引言.................................................................................................. 354
12.2.2 索引缓存的使用思路............................................................................ 356
12.2.3 相濡以沫的顶点缓存与索引缓存........................................................... 357
12.2.4 双剑合璧:顶点缓存、索引缓存使用四步曲........................................... 359
12.2.5 示例程序D3Ddemo4.......................................................................... 367
12.3 章节小憩..................................................................................................... 371
第13章 迈向三维世界——Direct3D 的四大变换.......................................................... 372
13.1 四大变换的基本认知..................................................................................... 373
13.2 四大变换之一:世界变换.............................................................................. 373
13.2.1 矩阵的平移......................................................................................... 375
13.2.2 矩阵的旋转......................................................................................... 376
13.2.3 矩阵的缩放......................................................................................... 377
13.3 四大变换之二:取景变换.............................................................................. 378
13.4 四大变换之三:投影变换.............................................................................. 379
13.5 四大变换之四:视口变换.............................................................................. 381
13.6 总结............................................................................................................ 382
13.7 示例程序D3Ddemo5................................................................................... 382
13.8 章节小憩..................................................................................................... 389
第14章 绘制出质感的世界—光照与材质.................................................................. 390
14.1 引言............................................................................................................ 391
14.2 四大光照类型............................................................................................... 391
14.3 三大光源类型............................................................................................... 393
14.4 材质............................................................................................................ 398
14.5 关于顶点法线............................................................................................... 399
14.6 总结与升华.................................................................................................. 402
14.7 几何体的快捷绘制........................................................................................ 402
14.7.1 D3D中内置的几何体概述.................................................................... 402
14.7.2 D3D中几种内置的几何体绘制四步曲.................................................... 403
14.7.3 D3D中几种内置几何体的创建.............................................................. 404
14.8 示例程序D3Ddemo7................................................................................... 415
14.9 章节小憩..................................................................................................... 420
第15章 做游戏的主人——输出控制利器DirectInput.................................................... 421
15.1 引言............................................................................................................ 422
15.2 DirectInput接口概述.................................................................................... 422
15.3 DirectInput使用步骤详解.............................................................................. 424
15.3.1 头文件和库文件的包含........................................................................ 424
15.3.2 创建DirectInput接口和设备................................................................. 424
15.3.3 设置数据格式..................................................................................... 427
15.3.4 设置协作级别..................................................................................... 427
15.3.5 设置特殊属性..................................................................................... 428
15.3.6 获取和轮询设备.................................................................................. 429
15.3.7 读取设备信息..................................................................................... 429
15.4 精炼:DirectInput使用五步曲....................................................................... 431
15.5 DirectInput键盘按键键值总结....................................................................... 433
15.6 DirectInput鼠标按键键值总结....................................................................... 434
15.7 示例程序D3Ddemo8........................................
数据结构(C语言版)(配光盘) 本书特色 《清华大学计算机系列教材:数据结构(C语言版)》可作为计算机类专业或信息类相关专业的本科或专科教材,也可供从事计算机工...
《明德学校史话》内容简介:本书依据宏富的史料,记述了明德学校艰苦卓绝的办学历程及其辉煌的办学业绩,展示了胡元倓等一批明德人
联邦学习 本书特色 如何在保证本地训练数据不公开的前提下,实现多个数据拥有者协同训练一个共享的机器学习模型?传统的机器学习方法需要将所有的数据集中到一个地方(例...
成功的网站设计团队依赖开发人员与客户之间的良好沟通,也离不开开发团队内部成员之间的沟通。线框图、站点地图、流程图和其他设
《每个妈妈都是创意家》内容简介:本书从“艺术培养”“母女关系”“哲学思维”“旅行与性格”“职业培养”等方面,展示了作者在20
kh10065 3dsmax2010从新手到高手 本书特色 《3ds Max 2010从新手到高手》的内容简单易学的建模技巧:详细介绍基本造型及修改立体对象的操...
《过去的工作》内容简介:《过去的工作》收入周作人在抗战胜利前后(一九四五年四月至十二月)所作文章十五篇。文章延续四十年代以
《从零开始学K线(实战操练图解版)》内容简介:在股市如此繁荣的今天,你是否想进入股市大展身手?作为股市新手,你是否因为无法读
《中国财政科研教学的“老兵”:邓子基传》内容简介:邓子基是我国著名经济学家、财政学家和教育家、中华人民共和国财政学奠基人和
计算机:一部历史 本书特色 《计算机——一部历史》(彼得·本特利著), 给大众读者写的计算机科普读物,零门槛入门计算机 科学。讲述计算机背后鲜为人知的故事,普及...
Whetheryouareaprofessionalnewtotheuser-centereddesignfield,oranexperienceddesign...
《电脑时代的先锋》内容简介:人类学家玛格丽特·米德认为,人类发展的历史将经历三种不同的文化:前喻文化是后代人必须向前代人
Photoshop CC设计经典特效228例-(附赠3DVD.含35小时多媒体教学视频+海量设计素材) 本书特色 本书以平面广告设计为目的,以技法讲解为方式,以...
《出发!可爱的虫虫世界》内容简介:“蛋蛋学校万物探秘之旅”是国内原创的一套极富趣味性和知识性的探索万物的科普漫画绘本。讲述
《你不知道的JavaScript(中卷)》内容简介:JavaScript这门语言简单易用,很容易上手,但其语言机制复杂微妙,即使是经验丰富的Ja
《图解室内设计(第2版)》由程大锦教授与科基·宾格利共同编写的,现已修订、扩充升级至第二版。通过兼具实用性与艺术美感的插图,
《中国文化史》内容简介:本书是史学家吕思勉的代表作,1940年由开明书店初版,为《吕著中国通史》之上册。全书共十八章,从婚姻、
《程序与民主》是意大利著名政治学家、法学家皮罗·克拉玛德雷(Pierocalamandrei)(1889-1956)讨论现代诉讼程序的著作。该书篇
计算机图形学 内容简介 本书主要讲述计算机图形学的有关原理、软硬件环境、几何建模和图形处理的基本方法。介绍了计算机图形学的基本概念、发展和应用,计算机图形系统的...
主板常用芯片及电路维修实用手册(含盘) 本书特色 主板是电脑的核心部件,是电脑能够实现各种功能的基础。而主板的核心则是其上面集成的各种电子元器件、各种功能的芯片...