图书介绍

Direct3D技术内幕pdf电子书版本下载

Direct3D技术内幕
  • (美)Peter J.Kovach著;李晔等译 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7900635270
  • 出版时间:2001
  • 标注页数:361页
  • 文件大小:24MB
  • 文件页数:380页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

Direct3D技术内幕PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 DirectX基础 1

1.1 DirectX API 2

1.1.1 DirectDraw 2

1.1.2 Direct3D 2

1.1.3 DirectMusic 3

1.1.4 DirectSound 3

1.1.5 DirectPlay 3

1.1.6 DirectInput 4

1.1.7 DirectSetup 4

1.2 Direct3D作为DirectX API时的工作方式 4

1.3 使用DirectX API所应了解的知识 5

1.3.1 什么是COM对象 5

1.3.2 AddRef和Release方法的用途 6

1.3.3 C和C++调用DirectX方法的差别 6

1.3.4 返回代码 7

1.5 结束语 8

1.4 Direct3D Framework 8

第2章 Direct3D程序中的Windows代码 9

2.1 Windows代码的组织方法 9

2.1.1 用于指定所包含文件和定义CUID的代码 10

2.1.2 CMyD3DApplication和CD3DApplication类 11

2.1.3 建立主窗口和消息处理 14

2.1.4 建立消息处理循环 16

2.1.5 建立应用程序的窗口进程 21

2.2 目前的程序代码 28

2.3 结束语 29

第3章 创建Direct3D程序的DirectDraw 30

3.1 DirectDraw和多显示器 31

3.2 建立DirectDraw 32

3.3 创建保存所列举设备的数据结构 33

3.4 列举DirectDraw设备 34

3.5 创建DirectDraw对象 38

3.6 列举显示模式 39

3.7 列举Direct3D设备 41

3.8 选择Direct3D设备 44

3.9 利用CD3DFramework7对象初始化DirectDraw 46

3.10 设定协作级别 52

3.11 创建表面 54

3.11.1 前缓冲区、后缓冲区和裁剪程序 55

3.11.2 全屏幕缓冲区 55

3.11.3 窗口模式缓冲区 59

3.12 界面的翻动 62

3.13 目前的程序代码 64

3.14 结束语 65

第4章 用于DirectX应用程序的Direct3D 66

4.1 Direct3D Immediate Mode的对象和接口 66

4.1.1 DirectDraw对象 66

4.1.2 DirectDrawSurface对象 66

4.1.3 Direct3DDevice对象 67

4.2 创建Immediate Mode的应用程序 68

4.1.4 Direct3DVertexBuffer对象 68

4.2.1 步骤1:初始化应用程序 70

4.2.2 步骤2:判定DirectX的版本 70

4.2.3 步骤3:列举可用的Direct3D设备 71

4.2.4 步骤4:选择Direct3D设备 71

4.2.5 步骤5:获取IDirectDraw7接口 72

4.2.6 步骤6:从IDirectDraw7获取IDirect3D7接口并创建Direct3D设备 73

4.2.7 步骤7:创建深度缓冲区 82

4.3 目前的程序代码 87

4.4 结束语 88

第5章 Direct3D顶点及转换和照明流水线 89

5.1 T L流水线概述 89

5.1.1 世界转换 90

5.1.2 视图转换 91

5.1.3 照明 92

5.1.4 投影转换和观察平截面 92

5.1.5 裁剪 93

5.1.6 除以w或非均匀 94

5.1.7 视口缩放 94

5.2 顶点 94

5.2.1 灵活的顶点格式 95

5.2.2 左手和右手坐标系 96

5.2.3 跨距顶点格式 96

5.2.4 顶点缓冲区 98

5.3 建立T L流水线矩阵 99

5.3.1 世界矩阵 99

5.3.2 观察矩阵 104

5.3.3 投影矩阵 104

5.4 视口 105

5.4.1 创建视口 106

5.4.2 建立视口 106

5.4.3 清理视口 107

5.5 照明 108

5.5.1 环境光 109

5.5.2 直射光 110

5.5.3 光的颜色与材料颜色 111

5.5.4 光的类型 111

5.5.5 光的属性 113

5.5.6 设置光的属性 116

5.5.7 检索光的属性 117

5.5.8 启用和禁用照明引擎 118

5.5.9 启用和禁用某种光 118

5.6 目前的程序代码 118

5.7 结束语 119

第6章 渲染3D图元 120

6.1 BeginScene和EndScene方法 120

6.2 索引和无索引图元 121

6.3 DrawPrimitive方法 122

6.3.1 DrawPrimitive 122

6.3.2 DrawPrimitiveStrided 123

6.3.3 DrawPrimitiveVB 124

6.3.4 DrawIndexedPrimitive 125

6.3.5 DrawIndexedPrimitiveStrided 126

6.3.6 DrawIndexedPrimitiveVB 127

6.4 图元的类型 127

6.4.1 点列表 128

6.4.2 线列表 130

6.4.3 线条 131

6.4.4 三角形列表 133

6.4.5 三角条形 134

6.4.6 三角扇形 136

6.5 设置渲染状态 137

6.5.1 Alpha混合状态 139

6.5.2 Alpha测试状态 139

6.5.3 环境光状态 140

6.5.4 消除锯齿状态 140

6.5.7 清除状态 141

6.5.5 裁剪状态 141

6.5.6 颜色键控状态 141

6.5.8 深度缓冲状态 142

6.5.9 填充状态 143

6.5.10 雾化状态 143

6.5.11 照明状态 144

6.5.12 轮廓状态 144

6.5.13 单项点颜色状态 144

6.5.14 阴影状态 145

6.5.15 模板缓冲状态 145

6.5.16 纹理透视状态 146

6.5.17 纹理包装状态 147

6.5.18 顶点颜色照明状态 147

6.5.19 Z偏差状态 147

6.6 内插值:Gouraud阴影和扩散照明 148

6.7.1 调用模型 149

6.7 创建3D应用程序 149

6.7.2 设备初始化 150

6.7.3 处理每帧的活动性 151

6.7.4 渲染帧 151

6.8 目前的程序代码 151

6.9 结束语 152

第7章 键盘和游戏杆输入 154

7.1 创建DirectInput对象 154

7.2 获取键盘、鼠标或游戏杆 160

7.3 力反馈 173

7.3.1 创建力 175

7.3.2 创建DirectInput力 176

7.4 结束语 185

第8章 纹理 186

8.1 纹理坐标 186

8.2 创建纹理表面 187

8.3 纹理管理 195

8.4 纹理压缩 197

8.4.1 DXT格式 197

8.4.2 使用DXT表面 199

8.5 多纹理映射 203

8.5.1 创建多纹理映射纹理 204

8.5.2 访问多纹理映射级别 206

8.5.3 设置多纹理映射LOD偏移量 207

8.6 纹理过滤 208

8.6.1 最近点取样 208

8.6.2 线性纹理过滤 209

8.6.3 各向异性的纹理过滤 210

8.6.4 多纹理映射纹理过滤 210

8.7 纹理接口指针 211

8.8 纹理阶段 212

8.9 纹理混合 215

8.9.1 多遍纹理混合 215

8.9.2 单遍多纹理混合 217

8.9.3 凸起花纹映射 220

8.10 纹理寻址模式 226

8.10.1 边框颜色纹理寻址模式 226

8.10.2 夹持纹理寻址模式 227

8.10.3 镜像纹理寻址模式 227

8.10.4 包装纹理寻址模式 228

8.11 纹理包装处理 229

8.12 目前的程序代码 230

8.13 结束语 231

第9章 雾化处理 232

9.1 雾化处理公式 233

9.2 创建雾化效果 234

9.3 像素雾化 238

9.4 目前的程序代码 241

9.5 结束语 247

10.1 利用帧缓冲区混合 249

第10章 Alpha混合处理 249

10.2 特殊效果 251

10.2.1 有雾环境中的发射对象 252

10.2.2 镜头眩光 252

10.2.3 照明图 253

10.2.4 有色玻璃 253

10.3 Alpha测试 254

10.4 颜色键控透明性 255

10.5 Alpha可用的调色板化纹理 257

10.6 利用Alpha的纹理阶段 257

10.7 遗留混合模式和纹理阶段 258

10.8 Alpha自左乘与非自左乘 260

10.9 目前的程序代码 260

10.10 结束语 261

第11章 照明映射和环境映射 262

11.1 照明映射 262

11.1.1 多遍纹理混合的照明映射 265

11.1.2 纹理阶段照明映射 266

11.2 环境映射 269

11.2.1 球形环境映射图 270

11.2.2 立方体环境映射图 271

11.3 目前的程序代码 276

11.4 结束语 276

第12章 模板缓冲区 278

12.1 创建模板缓冲区 278

12.2 清除模板缓冲区 282

12.3 配置模板处理状态 283

12.4 创建效果 286

12.4.1 合成效果 286

12.4.3 消融 287

12.4.4 淡入淡出效果 287

12.4.2 贴画效果 287

12.4.5 轮廓线效果 288

12.4.6 测影效果 288

12.4.7 滑入效果 288

12.4.8 阴影效果 288

12.5 ShadowVol和ShadowVo12演示程序 289

12.6 目前的程序代码 290

12.7 结束语 290

第13章 加载3D模型并为之添加动画效果 292

13.1 动画角色 292

13.1.1 分段式角色 292

13.1.2 单网格角色 293

13.2 加载和控制RoadRage模型 294

13.3 目前的程序代码 299

13.4 结束语 300

14.2 保存纹理内存 301

14.2.1 AGP内存 301

第14章 Direct3D应用程序的优化 301

14.1 Direct3D Framework 301

14.2.2 纹理映射图压缩 303

14.3 增强3D效果 303

14.3.1 多纹理处理 303

14.3.2 三重缓冲 304

14.3.3 真彩色渲染 304

14.4.2 顶点缓冲区 305

14.4.3 批量处理DrawPrimitive调用 305

14.4.1 ComputeSphereVisibility 305

14.4 优化几何图形处理 305

14.4.4 浮点精度以及多线程SetCooperativeLevel标志 306

14.4.5 防护带裁剪 306

14.4.6 纹理类型提示 306

14.5 资源最小化 306

14.5.1 高成本状态的变化 306

14.5.2 多边形 306

14.6 结束语 307

14.5.5 可见方格 307

14.5.3 纹理变化 307

14.5.4 纹理内存 307

第15章 集成DirectPlay 308

15.1 DirectPlay概念 308

15.2 启动 309

15.3 Multiplayer Connect对话框 313

15.4 Multiplayer Games对话框 317

15.5 DirectPlay消息 325

15.5.1 向游戏者传送游戏消息 326

15.5.2 结束游戏 355

15.6 目前的程序代码 358

15.7 结束语 358

第16章 结束语 360

16.1 游戏 360

16.2 模拟程序和虚拟现实 361

16.3 一路顺风,尽情陶醉吧! 361

精品推荐