Beginning game programming

副标题:无

作   者:(美)Jonathan S. Harbour著;陈征,傅鑫等译

分类号:

ISBN:9787111328605

微信扫一扫,移动浏览光盘

简介

   《游戏编程入门(原书第3版)》从基本的windows编程开始,为游戏编程入门者介绍了使用directx在windows下编写游戏所需的基础知识。读者将学习到把思想转化为现实所需的技术,比如2d、3d图形的绘制、背景卷动、处理游戏输入、音效、碰撞检测等。    《游戏编程入门(原书第3版)》语言简练,适合有志于进入游戏编程世界且有一定c++编程基础的初学者阅读,也适合作为社会培训机构的培训教材。    《游戏编程入门(原书第3版)》向初出茅庐的游戏开发人员展示了将游戏思想从概念转变为现实的方法。《游戏编程入门(原书第3版)》涵盖了使用directx编写代码创建2d和3d游戏所需的所有技能,而读者只需基本掌握c++语言即可学会。游戏的每个元素都按部就班地在书中讲授——从学习如何创建简单的windows程序,到使用关键的directx组件来渲染2d和3d,再到给游戏添加声音。通过学习本书讲授的技能,读者可以开发出属于自己的用于构建将来的游戏项目的游戏库。《游戏编程入门(原书第3版)》在每章结束时新增了测验题和项目以便帮助读者实践新学到的技能!《游戏编程入门(原书第3版)》最后部分通过创建一个完整的、全功能的游戏来实践所介绍的新技能。

目录

《游戏编程入门(原书第3版)》

译者序



欢迎前来冒险

第一部分 windows和directx游戏编程引言

第1章 windows初步2

1.1 windows编程概述2

1.1.1 认识windows3

1.1.2 windows消息机制4

1.1.3 多任务5

1.1.4 多线程6

1.1.5 事件处理7

1.2 directx快速概览8

direct3d是什么9

1.3 windows程序基础9

1.3.1 创建第一个win32项目10

1.3.2 理解winmain16

1.3.3 完整的winmain17

1.4 你所学到的19

1.5 复习测验19

.1.6 自己动手19

第2章 侦听windows消息20

2.1 编写一个真正的windows程序20

2.1.1 理解initinstance23

2.1.2 理解myregisterclass25

2.1.3 晒一晒winproc的秘密27

2.2 什么是游戏循环31

2.2.1 老的winmain31

2.2.2 winmain和循环33

2.3 gameloop项目35

gameloop程序的源代码36

2.4 你所学到的42

2.5 复习测验42

2.6 自己动手43

第3章 初始化direct3d44

3.1 初识direct3d44

3.1.1 direct3d接口44

3.1.2 创建direct3d对象45

3.1.3 让direct3d转起来47

3.1.4 全屏模式的direct3d55

3.2 你所学到的56

3.3 复习测验56

3.4 自己动手57

第二部分 游戏编程工具箱

第4章 绘制位图60

4.1 表面和位图60

4.1.1 主表面61

4.1.2 从离屏(off-screen)表面62

4.1.3 create_surface示例64

4.1.4 从磁盘装载位图68

4.1.5 load_bitmap程序69

4.1.6 代码再利用73

4.2 你所学到的73

4.3 复习测验73

4.4 自己动手73

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

5.1 键盘输入74

5.1.1 directinput对象和设备74

5.1.2 初始化键盘75

5.1.3 读取键盘按键77

5.2 鼠标输入77

5.2.1 初始化鼠标77

5.2.2 读取鼠标78

5.3 xbox 360控制器输入79

5.3.1 初始化xinput80

5.3.2 读取控制器状态81

5.3.3 控制器振动82

5.3.4 测试xinput82

5.4 精灵编程简介88

5.4.1 一个有用的精灵结构90

5.4.2 装载精灵图像91

5.4.3 绘制精灵图像91

5.5 bomb catcher游戏92

5.5.1 mywindows.cpp93

5.5.2 mydirectx.h95

5.5.3 mydirectx.cpp97

5.5.4 mygame.cpp103

5.6 你所学到的107

5.7 复习测验107

5.8 自己动手108

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

6.1 什么是精灵109

6.2 装载精灵图像109

6.3 透明的精灵111

6.3.1 初始化精灵渲染器112

6.3.2 绘制透明的精灵113

6.4 绘制动画的精灵120

6.4.1 使用精灵表120

6.4.2 精灵动画演示123

6.5 你所学到的126

6.6 复习测验126

6.7 自己动手126

第7章 精灵变换127

7.1 精灵旋转和缩放127

7.1.1 2d变换129

7.1.2 绘制变换了的精灵132

7.1.3 rotate_scale_demo程序134

7.1.4 带有变换的动画136

7.2 你所学到的139

7.3 复习测验140

7.4 自己动手140

第8章 检测精灵碰撞141

8.1 边界框碰撞检测141

8.1.1 处理矩形141

8.1.2 编写碰撞函数142

8.1.3 新的精灵结构143

8.1.4 为精灵的缩放进行调整144

8.1.5 边界框演示程序144

8.2 基于距离的碰撞检测148

8.2.1 计算距离149

8.2.2 编写计算距离的代码149

8.2.3 测试基于距离的碰撞150

8.3 你所学到的151

8.4 复习测验151

8.5 自己动手151

第9章 打印文本153

9.1 创建字体153

9.1.1 字体描述符153

9.1.2 创建字体对象154

9.1.3 可重用的makefont函数154

9.2 使用id3dxfont打印文本155

9.2.1 使用drawtext打印155

9.2.2 文本折行156

9.3 测试字体输出156

9.4 你所学到的159

9.5 复习测验160

9.6 自己动手160

第10章 卷动背景161

10.1 卷动161

10.1.1 背景和布景162

10.1.2 从图片单元创建背景162

10.1.3 基于图片单元的卷动163

10.1.4 基于图片单元的卷动项目163

10.2 动态渲染图片单元168

10.2.1 图片单元地图169

10.2.2 使用mappy创建图片单元地图170

10.2.3 tile_dynamic_scroll项目174

tile_dynamic_scroll源代码175

10.3 基于位图的卷动180

10.3.1 基于位图的卷动理论180

10.3.2 位图卷动演示181

10.4 你所学到的184

10.5 复习测验184

10.6 自己动手184

第11章 播放音频186

11.1 使用directsound186

11.1.1 初始化directsound187

11.1.2 创建声音缓冲区187

11.1.3 装载波形文件188

11.1.4 播放声音188

11.2 测试directsound189

11.2.1 创建项目189

11.2.2 修改mydirectx文件191

11.2.3 修改mygame.cpp193

11.3 你所学到的199

11.4 复习测验199

11.5 自己动手199

第12章 3d渲染基础200

12.1 3d编程介绍200

12.1.1 3d编程的关键组成部分200

12.1.2 3d场景201

12.1.3 转移到第三维204

12.1.4 掌握3d管线205

12.1.5 顶点缓冲区206

12.1.6 渲染顶点缓冲区208

12.1.7 创建四边形209

12.2 带纹理的立方体示例211

mygame.cpp213

12.3 你所学到的219

12.4 复习测验219

12.5 自己动手220

第13章 渲染3d模型文件221

13.1 创建及渲染后援网格221

13.1.1 创建后援网格221

13.1.2 渲染后援网格223

13.1.3 stock_mesh程序224

13.2 装载并渲染模型文件226

13.2.1 装载.x文件226

13.2.2 渲染完整的模型231

13.2.3 从内存中删除一个模型231

13.2.4 render_mesh程序232

13.3 你所学到的239

13.4 复习测验239

13.5 自己动手240

第三部分 游 戏 项 目

第14章  anti-virus(反病毒)游戏242

14.1 anti-virus游戏242

14.1.1 游戏玩法243

14.1.2 游戏源代码251

14.2 你所学到的264

14.3 复习测验264

14.4 自己动手264

第四部分 附  录

附录a 配置visual c++268

附录b 可进一步学习的资源274

附录c 各章测验答案278

附录d 附加示例287


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Beginning game programming
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon