当前位置:首页 » 编程软件 » directx3d编程基础

directx3d编程基础

发布时间: 2022-04-24 11:25:30

⑴ 谁推荐几本学习DirectX的书

《Direct3D游戏编程入门教程(第二版)》《Programming Role Playing Games with DirectX》

⑵ 用DirectX游戏编程,要学哪些内容

如果想DirectX游戏编程,而又有很多不清楚的问题,那请看这个:
1、 语言编程:c/c++;
2、 编程基础一定要好:数据结构,c/c++语言;
2、 IDE集中开发环境:visual studio .net 2003;
3 、游戏开发SDK用DirectX9;
4、 Win32 api开始的时候不能学的太多;
5、 可以不用MFC(如果c++基础好,MFC学起来很简单);
6、 编网络游戏,使用winsock,通讯协议用TCP;
7、 多下载源代码,观看之;
8、 数学上的要求(其它基础文化课类似):不需要了解算法的来历、推导等,但一定要知道它们是干什么用的以及如何用;
9、 学习STL,必须C++要过关,否则会很难学。首先要学会如何用STL,再想深入的话,学习STL的内部代码。STL首先从list,vector学起。

⑶ 怎么学习DirectX3D游戏编程的基础是(初中,中专,高中,大学以上)。

基本不需要太高的基础
数学初中就差不多了
不过3D需要一点线性代数和离散数学
但是并不需要解题那么高的要求,能够理解即可

⑷ 请问《DirectX 9.0 3D游戏开发编程基础》 前提C++要熟悉到什么程度

光基础语法肯定不够。
类的继承、虚函数。
模板(这个要求不高,大致知道函数怎么使用,模板特化之类的概念就好)。
STL大概也要有些了解。
至于Windows编程,有关联,但是在实践这本书时不是重点,跟着书上走就行。
最好C++ primer放旁边,看到不懂的就去补习下知识点。(C++ primer里面知识点比较全面,如果缺少C++实践经验,推荐翻翻这本书最后两章的内存管理、异常、命名空间那几节,不用全看,实践时哪里不懂翻哪里)

重点是跟着实践,如果光看十有八九看不懂,那自己敲下代码至少能多理解一两成。

还有一点是Visual Studio的,很多新手不熟悉IDE,头文件库文件不知道怎么加,往往第一个问题就是:书上的代码怎么编译不过·····

⑸ DirectX9.03D游戏开发编程基础的目录

第Ⅰ部分 基础知识
必备的数学知识
3D空间中的向量
矩阵
基本变换
平面(选读)
射线(选读)
小结
第Ⅱ部分 Direct3D基础
第1章 初始化Direct3D
1.1 Direct3D概述
1.2 COM(组件对象模型)
1.3 预备知识
1.4 Direct3D的初始化
1.5 例程:Direct3D的初始化
1.6 小结
第2章 绘制流水线
2.1 模型表示
2.2 虚拟摄像机
........

⑹ DirectX 3D编程入门教程

你可以先去【绘学霸】网站找“3d建模”板块的【免费】视频教程-【点击进入】完整入门到精通视频教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=307&zdhhr-11y04r-182987840

想要系统的学习可以考虑报一个网络直播课,推荐CGWANG的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。

自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐行业龙头:王氏教育。
王氏教育全国直营校区面授课程试听【复制后面链接在浏览器也可打开】: www.huixueba.com.cn/school/3dmodel?type=2&zdhhr-11y04r-182987840

在“3d建模”领域的培训机构里,【王氏教育】是国内的老大,且没有加盟分校,都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合基础差的学生。

大家可以先把【绘学霸】APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: www.huixueba.com.cn/Scripts/download.html

⑺ 《DirectX 9.0 3D游戏开发编程基础》这本书里的介绍的数学知识在3D游戏制作中够用了吗

个人感觉啊,说实话,这类书籍不是给想从事游戏开发的人看的,而是给那些想成为游戏引擎开发者看的。现代的大型游戏开发,算是一种高层开发,就类似于我们用word写文档,游戏开发人员就是使用word来自定义自己文档的人,而游戏引擎开发者就像微软的编程师一样,是用代码从无到有来实现word文档编辑器的人。
现代游戏开发,效率很重要,你可以想象一下,利用你书中所学知识,完全使用编程代码去开发一个使命召唤,需要多长时间?可能一个人物建模就够你忙个半个月,还有后期CG,特效,事件触发等等,时间就不止现在一年一部使命召唤了。

⑻ DirectX 9.0 3D游戏开发编程基础 读后感

DirectX 9.0 3D游戏开发编程基础 内容提要:
本书主要介绍如何使用DirectX 9.0开发交互式3D图形程序,重点是游戏开发。全书首先介绍了必要的数学工具,然后讲解了相关的3D概念。其他主题几乎涵盖了Direct3D中的所有基本运算,例如图元的绘制、光照、纹理、Alpha融合、模板,以及如何使用Direct3D实现游戏中所需的技术。介绍顶定点着色器和像素着色器的章节(包含了效果框架和新的高级着色语言的内容)对这些关键运算进行了较为集中的讨论。
本书内容深入浅出,内容广泛,可供从事3D游戏程序设计、可视化系统设计或其他图形应用程序开发的开发人员和大中专院校学生参考,也极适合各种游戏开发培训机构作为Direct3D编程的培训教程。

DirectX 9.0 3D游戏开发编程基础 读后感:
第Ⅰ部分 基础知识

必备的数学知识 3
3D空间中的向量 3
向量相等 7
计算向量的长度 7
向量的规范化 8
向量加法 9
向量减法 9
数乘 10
点积 11
叉积 11
矩阵 12
矩阵相等、矩阵数乘和矩阵加法 13
矩阵乘法 14
单位矩阵 15
逆矩阵 15
矩阵的转置 16
D3DX矩阵 16
基本变换 19
平移矩阵 20
旋转矩阵 21
比例变换矩阵 23
几何变换的组合 24
向量变换的一些函数 25
平面(选读) 26
D3DXPLANE 27
点和平面的空间关系 27
平面的创建 28
平面的规范化 29
平面的变换 29
平面中到某一点的最近点 30
射线(选读) 31
射线 31
射线与平面的相交 32
小结 32

第Ⅱ部分 Direct3D基础

第1章 初始化Direct3D 37
1.1 Direct3D概述 37
1.1.1 REF设备 38
1.1.2 D3DDEVTYPE 38
1.2 COM(组件对象模型) 38
1.3 预备知识 39
1.3.1 表面 39
1.3.2 多重采样 41
1.3.3 像素格式 42
1.3.4 内存池 42
1.3.5 交换链和页面置换 43
1.3.6 深度缓存 44
1.3.7 顶点运算 45
1.3.8 设备性能 45
1.4 Direct3D的初始化 46
1.4.1 获取接口IDirect3D9的指针 47
1.4.2 校验硬件顶点运算 47
1.4.3 填充D3DPRESENT_
PARAMETER结构 48
1.4.4 创建IDirect3DDevice9
接口 50
1.5 例程:Direct3D的初始化 51
1.5.1 d3dUtility.h/cpp 52
1.5.2 例程框架 53
1.5.3 例程:D3D初始化 54
1.6 小结 56
第2章 绘制流水线 58
2.1 模型表示 59
2.1.1 顶点格式 60
2.1.2 三角形单元 60
2.1.3 索引 61
2.2 虚拟摄像机 62
2.3 绘制流水线 63
2.3.1 局部坐标系 64
2.3.2 世界坐标系 64
2.3.3 观察坐标系 65
2.3.4 背面消隐 67
2.3.5 光照 68
2.3.6 裁剪 68
2.3.7 投影 69
2.3.8 视口变换 70
2.3.9 光栅化 72
2.4 小结 72
第3章 Direct3D中的绘制 73
3.1 顶点缓存与索引缓存 73
3.1.1 创建顶点缓存和索引缓存 73
3.1.2 访问缓存内容 76
3.1.3 获取顶点缓存和
索引缓存的信息 77
3.2 绘制状态 78
3.3 绘制的准备工作 78
3.4 使用顶点缓存和索引缓存进行绘制 79
3.4.1 IDirect3DDevice9::
DrawPrimitive 79
3.4.2 IDirect3DDevice9::
DrawIndexedPrimitive 80
3.4.3 Begin/End Scene 81
3.5 D3DX几何体 81
3.6 例程:三角形、立方体、
茶壶、D3DXCreate* 83
3.7 小结 87
第4章 颜色 89
4.1 颜色表示 89
4.2 顶点颜色 92
4.3 着色 92
4.4 例程:具有颜色的三角形 93
4.5 小结 95
第5章 光照 97
5.1 光照的组成 97
5.2 材质 98
5.3 顶点法线 100
5.4 光源 102
5.5 例程:光照 105
5.6 一些附加例程 108
5.7 小结 108
第6章 纹理映射 109
6.1 纹理坐标 110
6.2 创建并启用纹理 111
6.3 纹理过滤器 112
6.4 多级渐进纹理 113
6.4.1 多级渐进纹理过滤器 114
6.4.2 使用多级渐进纹理 114
6.5 寻址模式 114
6.6 例程:纹理四边形 116
6.7 小结 118
第7章 融合技术 119
7.1 融合方程 119
7.2 融合因子 121
7.3 透明度 122
7.3.1 Alpha通道 122
7.3.2 指定Alpha来源 123
7.4 用DirectX Texture Tool
创建Alpha通道 123
7.5 例程:透明效果 125
7.6 小结 127
第8章 模板 128
8.1 模板缓存的使用 129
8.1.1 模板缓存格式的查询 129
8.1.2 模板测试 130
8.1.3 模板测试的控制 130
8.1.4 模板缓存的更新 132
8.1.5 模板写掩码 132
8.2 例程:镜面效果 133
8.2.1 成像中的数学问题 133
8.2.2 镜面效果实现概述 134
8.2.3 代码解析 135
8.3 例程:Planer Shadows 139
8.3.1 平行光阴影 139
8.3.2 点光源产生的阴影 140
8.3.3 阴影矩阵 141
8.3.4 使用模板缓存
防止二次融合 142
8.3.5 代码解析 143
8.4 小结 144

第Ⅲ部分 Direct3D的应用

第9章 字体 149
9.1 ID3DXFont接口 149
9.1.1 创建一个ID3DXFont
接口对象 149
9.1.2 绘制文本 150
9.1.3 计算每秒绘制的帧数 151
9.2 CD3DFont 152
9.2.1 创建CD3DFont类的实例 152
9.2.2 绘制文本 152
9.2.3 清理 153
9.3 D3DXCreateText函数 153
9.4 小结 155
第10章 网格(一) 156
10.1 几何信息 156
10.2 子集和属性缓存 157
10.3 绘制 159
10.4 网格优化 159
10.5 属性表 161
10.6 邻接信息 163
10.7 克隆 164
10.8 创建网格(D3DXCreateMeshFVF) 165
10.9 例程:网格的创建与绘制 167
10.10 小结 172
第11章 网格(二) 174
11.1 ID3DXBuffer 174
11.2 XFile 175
11.2.1 加载XFile文件 175
11.2.2 XFile材质 176
11.2.3 例程:XFile 177
11.2.4 生成顶点法线 180
11.3 渐进网格 181
11.3.1 生成渐进网格 182
11.3.2 顶点属性权值 183
11.3.3 ID3DXPMesh接口方法 183
11.3.4 例程:Progressive Mesh 184
11.4 外接体 187
11.4.1 一些新的特殊常量 189
11.4.2 外接体的类型 189
11.4.3 例程:Bounding Volumes 190
11.5 小结 192
第12章 设计一个灵活的
Camera类 193
12.1 Camera类的设计 193
12.2 实现细节 195
12.2.1 观察矩阵(取景变换矩阵,
View Matrix)的计算 195
12.2.2 绕任意轴的旋转 198
12.2.3 俯仰、偏航和滚动 199
12.2.4 行走、扫视和升降 201
12.3 例程:Camera 202
12.4 小结 205
第13章 地形绘制基础 206
13.1 高度图 207
13.1.1 创建高度图 207
13.1.2 加载RAW文件 208
13.1.3 访问和修改高度图 209
13.2 创建地形几何信息 210
13.2.1 顶点的计算 212

13.2.2 索引的计算 214
13.3 纹理映射 216
13.4 光照 219
13.4.1 概述 219
13.4.2 坐标方格的明暗度计算 220
13.4.3 对地形进行着色 222
13.5 在地形中“行走” 222
13.6 例程:Terrain 226
13.7 一些改进 228
13.8 小结 229
第14章 粒子系统 230
14.1 粒子和点精灵 230
14.1.1 结构格式 230
14.1.2 点精灵的绘制状态 231
14.1.3 粒子及其属性 233
14.2 粒子系统的组成 234
14.2.1 绘制一个粒子系统 238
14.2.2 随机性 243
14.3 具体的粒子系统 243
14.3.1 例程:Snow System 244
14.3.2 例程:Firework 246
14.3.3 例程:Particle Gun 248
14.4 小结 250
第15章 拾取 251
15.1 屏幕到投影窗口的变换 253
15.2 拾取射线的计算 254
15.3 对射线进行变换 255
15.4 射线/物体相交判定 256
15.5 例程:Picking 258
15.6 小结 259

第Ⅳ部分 着色器和效果

第16章 高级着色语言(HLSL)入门 263
16.1 HLSL着色器程序的编制 264
16.1.1 全局变量 266
16.1.2 输入和输出结构 266
16.1.3 入口函数 267
16.2 HLSL着色器程序的编译 268
16.2.1 常量表 268
16.2.2 HLSL着色器程序的编译 272
16.3 变量类型 274
16.3.1 标量类型 274
16.3.2 向量类型 274
16.3.3 矩阵类型 275
16.3.4 数组 277
16.3.5 结构体 277
16.3.6 关键字typedef 277
16.3.7 变量的前缀 278
16.4 关键字、语句及类型转换 279
16.4.1 关键字 279
16.4.2 基本程序流程 279
16.4.3 类型转换 280
16.5 运算符 281
16.6 用户自定义函数 282
16.7 内置函数 284
16.8 小结 286
第17章 顶点着色器入门 287
17.1 顶点声明 288
17.1.1 顶点声明的描述 288
17.1.2 顶点声明的创建 291
17.1.3 顶点声明的启用 291
17.2 顶点数据的使用 291
17.3 使用顶点着色器的步骤 293
17.3.1 顶点着色器的编写与编译 294
17.3.2 顶点着色器的创建 294
17.3.3 顶点着色器的设置 294
17.3.4 顶点着色器的销毁 295
17.4 例程:Diffuse Lighting 295
17.5 例程:Cartoon Rendering 302
17.5.1 卡通着色 303
17.5.2 卡通着色的顶点
着色器代码 304
17.5.3 轮廓的勾勒 307
17.5.4 实现轮廓勾勒的
顶点着色器代码 310
17.6 小结 312
第18章 像素着色器入门 313
18.1 多重纹理概述 313
18.1.1 启用多重纹理 315
18.1.2 多重纹理坐标 316
18.2 像素着色器的输入和输出 317
18.3 使用像素着色器的步骤 318
18.3.1 像素着色器的编写和编译 318
18.3.2 像素着色器的创建 318
18.3.3 像素着色器的设置 319
18.3.4 像素着色器的销毁 319
18.4 HLSL采样器对象 319
18.5 例程:像素着色器中的多重纹理 321
18.6 小结 329
第19章 效果框架 331
19.1 手法与路径 331
19.2 更多HLSL的内置对象 333
19.2.1 纹理对象 333
19.2.2 采样器对象与采样器状态 333
19.2.3 顶点着色器对象和
像素着色器对象 334
19.2.4 字符串 335
19.2.5 注释 335
19.3 效果文件中的设备状态 336
19.4 创建一种效果 337
19.5 常量的设置 338
19.6 使用一种效果 340
19.6.1 效果句柄的获取 341
19.6.2 效果的激活 341
19.6.3 效果的启用 341
19.6.4 当前绘制路径的设置 342
19.6.5 效果的终止 342
19.6.6 一个例子 342
19.7 例程:效果文件中的光照和纹理 343
19.8 例程:雾效 349
19.9 例程:卡通效果 352
19.10 EffectEdit 353
19.11 小结 354

⑼ 本人是一个老程序员,目前想学习3D编程,请问3D方面的基础知识可以看哪本书不拘泥于编程语言,求经典。

1、WINDOWS 3D编程
《WINDOWS 3D编程》主要内容:Learn to create 3D graphics for Windows-from programming legend Charles Petzold.Get a focused introction to programming 3D graphics with the Windows Presentation Foundation 3D API. Complementing his book Applications =Code + Markup, award-winning author Charles Petzold builds on XAML essentials, teaching you how to display and animate 3D graphics under the Microsoft .NET Framework 3.0 and Windows VistaTM. You'll get expert guidance and code samples in XAML and Microsoft Visual C#-helping you master the skills you need to create high-fidelity user interfaces.
Discover how to:
Define complex 3D obiects with triangle meshes
Enhance the illumination of 3D surfaces with light and shading effects
Color 3D figures with gradients, bitmaps, and drawings
Add animation with transforms and vertex manipulation
Represent linear, affine, and camera transforms by using matrices
Calculate vector angles, angles of rotation, and axes of rotation
Generate triangle meshes efficiently by using C# code
Express rotation by using quaternion computation
Provide a user interface for manipulating and drawing 3D figures
目录
--------------------------------------------------------------------------------
1 Lights! Camera! Mesh Geometries!
Sorting Out the Classes
2 Transforms and Animation
3 Axis/Angle Rotation
4 Light and Shading
SpotLight and PointLight
5 Texture and Materials
6 Algorithmic Mesh Geometries
7 Matrix Transforms
8 Quaternions
9 Applications and Curiosa

/******************************************************************************************************************/
2、java 3d编程实践:网络上的三维动画
目录:
第1章 全世界都能看到的三维动画
1. 1 初识java 3d
1. 1. 1 网络时代需要java 3d
1. 1. 2 java 3d是什么
1. 1. 3 java 3d的应用场合举例
1. 2 java 3d运行及开发环境的安装
1. 2. 1 最新版java 3d的安装
1. 2. 2 老版本的安装步骤
1. 3 体验java 3d编程
1. 3. 1 第一个java 3d程序:hello
1. 3. 2 java 3d的编程思想
1. 4 在网上发布java 3d程序
1. 5 java 3d的网络资源和学习资料
1. 5. 1 主要网站
1. 5. 2 各种文档
1. 5. 3 软件资源
第2章 基本形体的生成
2. 1 基本立体形体的生成
2. 1. 1 从一个简单的程序说起
2. 1. 2 创建场景图
2. 1. 3 高层java 3d类
2. 1. 4 编写java 3d程序的一般步骤
2. 1. 5 激活和编译
2. 1. 6 内容子图的创建
2. 1. 7 mycone程序中使用的java 3d类
2. 1. 8 几何体工具类
2. 1. 9 高级主题:基本几何体
2. 1. 10 能力和性能
2. 2 点. 线. 面的生成
2. 2. 1 几何体类
2. 2. 2 点的生成
2. 2. 3 直线的生成
2. 2. 4 面的生成
2. 3 曲面的可视化
2. 4 2d和3d文本的生成
2. 4. 1 2d文本的生成
2. 4. 2 3d文本的生成
2. 5 appearance. shape3d和bounds对象的使用
2. 5. 1 appearance对象
2. 5. 2 shape3d对象
2. 5. 3 bounds对象
第3章 形体的组合
3. 1 形体的分组
3. 1. 1 group对象
3. 1. 2 branchgroup对象和orderedgroup对象
3. 1. 3 decalgroup对象
3. 1. 4 switch对象
3. 1. 5 sharedgroup对象
3. 2 几何变换
3. 2. 1 transformg

/*********************************************************************************************************/
3、Directx 3D 游戏编程实用教程
目录
--------------------------------------------------------------------------------
第一篇 d游戏编程基础
第1章 windows编程基础
1.1 简单的windows应用程序
1.1.1 创建windows应用程序项目
1.1.2 配置、生成及运行项目
1.2 windows应用程序结构
1.2.1 数据类型
1.2.2 入口函数
1.2.3 注册窗口类
1.2.4 创建并显示窗口
1.3 windows消息机制
1.3.1 消息队列
1.3.2 消息循环
1.3.3 消息处理
1.4 匈牙利命名法
1.4.1 类型和常量的命名
1.4.2 变量的命名
1.4.3 函数和参数的命名
1.4.4 类的命名
1.5 本章小结
第2章 direct3d编程基础
2.1 directx概述
2.1.1 directx的发展过程
2.1.2 directx的组成部分
2.1.3 direct3d与com
2.1.4 direct3d接口对象
2.2 direct3d渲染流水线
2.2.1 渲染流水线
2.2.2 灵活顶点格式
2.2.3 d3d中的颜色
2.2.4 d3d中的图元
2.3 direct3d程序结构
2.3.1 简单的direct3d应用程序
2.3.2 创建direct3d接口对象
2.3.3 获取硬件设备信息
2.3.4 创建direct3d设备接口
2.3.5 开始direct3d图形绘制
2.3.6 结束并清理对象资源
2.4 顶点缓存
2.4.1 创建顶点缓存
2.4.2 访问顶点缓存
2.4.3 使用顶点缓存绘制图形
2.4.4 顶点缓存的绘制示例
2.5 索引缓存
2.5.1 创建索引缓存
2.5.2 访问索引缓存
2.5.3 使用索引缓存绘制图形
2.5.4 索引缓存的绘制示例
2.6 direct3d渲染状态
2.6.1 剔除状态
2.6.2 着色状态
2.6.3 填充状态
2.7 本章小结
第3章 基本的数学基础
3.1 坐标空间
3.1.1 d笛卡儿坐标系
3.1.2 多坐标系统
3.2 向量
3.2.1 向量的基本概念
3.2.2 向量的基本运算
3.2.3 d3d中的向量
3.3 矩阵
3.3.1 矩阵的基本概念
3.3.2 矩阵的基本运算
3.3.3 矩阵的基本变换
3.3.4 d3d中的矩阵
3.4 平面及射线
3.4.1 平面的定义
3.4.2 点与平面的关系
3.4.3 射线的定义
3.4.4 射线与平面的关系
3.5 空间坐标变换
3.5.1 世界变换
3.5.2 取景变换
3.5.3 投影变换
3.5.4 视口变换
3.6 空间坐标变换示例
3.7 本章小结
第二篇 d游戏图形渲染
第4章 光照与材质
4.1 光照模型
4.1.1 环境光
4.1.2 漫反射光
4.1.3 镜面反射光
4.2 光源类型
4.2.1 点光源
4.2.2 方向光
4.2.3 聚光灯
4.3 物体的材质
4.3.1 d3d材质
4.3.2 顶点法线
4.4 光照与材质示例
4.5 本章小结
第5章 纹理映射
5.1 纹理映射基础
5.1.1 纹理坐标
5.1.2 创建纹理
5.1.3 启用纹理
5.1.4 创建纹理示例
5.2 纹理过滤
5.2.1 最近点采样过滤
5.2.2 线性纹理过滤
5.2.3 各向异性过滤
5.2.4 多级渐进过滤
5.2.5 纹理过滤示例
5.3 纹理寻址
5.3.1 重复寻址
5.3.2 镜像寻址
5.3.3 夹取寻址
5.3.4 边框颜色寻址
5.3.5 纹理寻址示例
5.4 纹理包装
5.4.1 纹理包装原理
5.4.2 纹理包装示例
5.5 本章小结
第6章 网格模型
6.1 网格模型基础
6.1.1 网格的子集及属性
6.1.2 网格的邻接信息
6.1.3 网格的创建及绘制
6.1.4 创建及绘制网格示例
6.2 网格的优化及克隆
6.2.1 优化网格
6.2.2 克隆网格
6.3 x文件格式分析
6.3.1 模板的定义
6.3.2 常用的模板类型
6.3.3 x文件的结构
6.4 从x文件创建网格
6.4.1 加载网格模型数据
6.4.2 获取纹理和材质信息
6.4.3 绘制网格模型
6.4.4 读取x文件示例
6.5 创建渐进网格模型
6.5.1 id3dxpmesh接口
6.5.2 创建并绘制渐进网格
6.5.3 创建渐进网格示例
6.6 d3d中的几何体
6.7 本章小结
第7章 深度、融合及模板
7.1 深度测试
7.1.1 深度缓存
7.1.2 深度测试
7.1.3 深度测试示例
7.2 融合技术
7.2.1 融合因子
7.2.2 alpha来源
7.2.3 启用alpha融合
7.2.4 alpha融合示例
7.3 模板技术
7.3.1 模板缓存
7.3.2 模板测试
7.3.3 更新模板缓存
7.4 镜面效果
7.4.1 镜面成像原理
7.4.2 实现镜面效果
7.5 本章小结
第8章 hlsl语言基础
8.1 hlsl概述
8.1.1 可编程管线
8.1.2 hlsl工作模型
8.2 简单的hlsl程序
8.2.1 编写hlsl代码
8.2.2 hlsl关键字和保留字
8.2.3 hlsl预处理指令
8.2.4 输入、输出结构
8.2.5 hlsl入口函数
8.3 hlsl基本语法
8.3.1 hlsl中的变量
8.3.2 hlsl中的函数
8.4 d3d与hlsl交互
8.4.1 编译着色器程序
8.4.2 获取常量的句柄
8.4.3 设置常量的值
8.5 hlsl程序示例
8.6 本章小结
第9章 着色器与效果
9.1 顶点着色器
9.1.1 创建顶点声明
9.1.2 使用顶点着色器
9.1.3 顶点着色器示例
9.2 渐变动画效果
9.2.1 渐变动画原理
9.2.2 实现渐变动画
9.3 像素着色器
9.3.1 创建像素着色器
9.3.2 使用像素着色器
9.4 多重纹理混合
9.4.1 hlsl采样器
9.4.2 多重纹理坐标
9.4.3 启用多重纹理
9.4.4 多重纹理示例
9.5 效果框架
9.5.1 通道与手法
9.5.2 着色器内置对象
9.5.3 效果中的渲染状态
9.5.4 创建效果框架
9.5.5 效果中常量的设置
9.5.6 使用效果框架
9.5.7 效果框架示例
9.6 本章小结
第三篇 d游戏输入控制
第10章 directx输入控制
10.1 directinput接口
10.2 使用directinput接口
10.2.1 directinput的初始化
10.2.2 创建设备接口对象
10.2.3 设置数据格式
10.2.4 设置协作级别
10.2.5 设置特殊属性
10.2.6 获取、轮询设备
10.2.7 读取设备数据
10.3 使用directinput处理键盘
10.3.1 初始化键盘设备接口
10.3.2 获取输入的键盘数据
10.3.3 键盘输入控制示例
10.4 使用directinput处理鼠标
10.4.1 在d3d中移动鼠标
10.4.2 初始化鼠标设备接口
10.4.3 获取鼠标的移动位置
10.4.4 鼠标输入控制示例
10.5 使用directinput处理游戏杆
10.5.1 游戏杆及其控制原理
10.5.2 初始化游戏杆设备接口
10.5.3 读取游戏杆的状态数据
10.5.4 游戏杆输入控制示例
10.6 本章小结
第四篇 d游戏应用编程
第11章 摄像机、地形及天空
11.1 虚拟摄像机
11.1.1 摄像机的属性
11.1.2 摄像机的变换
11.1.3 摄像机的实现
11.1.4 摄像机应用示例
11.2 三维地形系统
11.2.1 地形高度图
11.2.2 顶点的计算
11.2.3 索引的计算
11.2.4 地形的绘制
11.2.5 地形类的实现
11.2.6 地形绘制示例
11.3 球形天空顶
11.3.1 顶点的计算
11.3.2 索引的计算
11.3.3 天空的绘制
11.3.4 天空类的实现
11.3.5 天空绘制示例
11.4 本章小结
第12章 文字、拾取及碰撞检测
12.1 字体及文本绘制
12.1.1 绘制2d文本
12.1.2 绘制3d文本
12.1.3 文本绘制示例
12.2 拾取技术
12.2.1 网格外接体
12.2.2 拾取技术原理
12.2.3 拾取应用示例
12.3 碰撞检测
12.3.1 边界球碰撞检测
12.3.2 aabb碰撞检测
12.3.3 obb树碰撞检测
12.3.4 aabb碰撞检测示例
12.4 本章小结
第13章 骨骼动画
13.1 x文件中的骨骼信息
13.1.1 骨骼蒙皮信息
13.1.2 骨骼层次信息
13.1.3 模型动画信息
13.2 加载骨骼动画数据
13.2.1 扩展结构体
13.2.2 加载x文件
13.2.3 callocatehierarchy类
13.2.4 生成蒙皮网格
13.3 顶点混合技术
13.3.1 顶点混合原理
13.3.2 索引顶点混合
13.4 骨骼动画的绘制
13.4.1 开启顶点混合
13.4.2 更新骨骼矩阵
13.4.3 绘制骨骼动画
13.5 骨骼动画控制器
13.5.1 使用动画控制器
13.5.2 平滑过渡动画集
13.6 骨骼动画示例
13.7 本章小结
第14章 实时阴影
14.1 平面阴影的原理
14.1.1 点光源平面阴影
14.1.2 方向光平面阴影
14.2 平面阴影的实现
14.2.1 计算阴影矩阵
14.2.2 平面阴影的绘制
14.2.3 平面阴影示例
14.3 体积阴影的原理
14.3.1 模型阴影体
14.3.2 阴影锥的计算
14.4 体积阴影的实现
14.4.1 体积阴影的绘制
14.4.2 体积阴影示例
14.5 阴影贴图的原理
14.6 本章小结
第15章 广告牌技术与粒子系统
15.1 广告牌技术
15.1.1 广告牌的原理
15.1.2 广告牌的实现
15.1.3 广告牌示例
15.2 粒子系统
15.2.1 粒子系统的原理
15.2.2 粒子系统的实现
15.2.3 粒子系统的更新
15.2.4 粒子系统的绘制
15.3 粒子系统示例
15.3.1 烟花示例
15.3.2 喷泉示例
15.4 本章小结
第16章 雾化及lod地形
16.1 雾化效果
16.1.1 雾化混合因子
16.1.2 顶点雾化
16.1.3 像素雾化
16.1.4 范围雾化
16.2 lod地形原理
16.2.1 lod四叉树算法
16.2.2 lod地形的实现
16.2.3 节点剔除原理
16.2.4 节点简化准则
16.2.5 地形裂缝的处理
16.2.6 地形的更新及绘制
16.3 lod地形示例
16.4 本章小结
第五篇 d游戏音频输出
第17章 direct3d音频控制
17.1 音频文件格式
17.1.1 音频的基本概念
17.1.2 wav音频格式
17.1.3 midi音频格式
17.1.4 mp3音频格式
17.2 使用directsound处理音频
17.2.1 directsound的结构
17.2.2 directsound的初始化
17.2.3 directsound音频缓冲
17.2.4 向缓冲区中写入数据
17.2.5 播放声音及音频控制
17.2.6 用directsound反馈信息
17.2.7 directsound应用示例
17.3 使用directmusic处理音频
17.3.1 directmusic的结构
17.3.2 开始使用directmusic
17.3.3 加载、操作midi段
17.3.4 directmusic应用示例
17.4 使用directshow处理音频
17.4.1 directshow的工作原理
17.4.2 directshow的初始化
17.4.3 加载流媒体数据
17.4.4 控制流媒体的播放
17.4.5 directshow应用示例
17.5 本章小结
第六篇 d游戏网络通信
第18章 direct3d网络控制
18.1 了解网络互联
18.1.1 网络会话模型
18.1.2 寻址与通信协议
18.2 directplay概述
18.2.1 创建和管理会话
18.2.2 directplay传输协议
18.2.3 directplay网络对象
18.2.4 玩家与游戏大厅
18.3 客户/服务会话
18.3.1 初始化网络对象
18.3.2 选择服务提供者
18.3.3 使用directplay地址
18.3.4 建立客户/服务会话
18.3.5 发送、接收数据
18.3.6 创建并使用分组
18.3.7 结束及终止会话
18.4 游戏大厅的支持
18.4.1 游戏大厅的结构
18.4.2 实现游戏大厅客户端
18.4.3 实现支持大厅的程序
18.5 客户/服务会话示例
18.5.1 创建服务端程序
18.5.2 创建客户端程序
18.6 本章小结
附 录
附录a directx9 sdk的安装与配置
a.1 安装directx
a.2 配置开发环境
a.3 浏览directx示例
附录b dxut程序框架介绍
b.1 创建dxut项目
b.2 dxut框架的初始化
b.3 创建应用程序窗口
b.4 创建direct3d设备
b.5 dxut的事件处理
b.5.1 框架事件
b.5.2 设备事件
b.5.3 消息事件
b.6 dxut的错误处理

⑽ 《DirectX 9.0 3D游戏开发编程基础》这本书的例子里有个问题不明白

你理解的深度没错,就是像素距像机的距离
先看一种最容易理解的情况,壶在镜前,像机在壶后,拍照.
然后,像机转到镜后镜像位置,对壶拍照(只渲染壶)
可见,镜中壶比真壶深度要大,比镜子也大(纸上画画就知)
但镜子范围像素是被特殊标记,深度运算时镜壶显现镜外过滤了
若如你说,岂不是镜外也可看见了?

热点内容
随机启动脚本 发布:2025-07-05 16:10:30 浏览:525
微博数据库设计 发布:2025-07-05 15:30:55 浏览:24
linux485 发布:2025-07-05 14:38:28 浏览:304
php用的软件 发布:2025-07-05 14:06:22 浏览:754
没有权限访问计算机 发布:2025-07-05 13:29:11 浏览:430
javaweb开发教程视频教程 发布:2025-07-05 13:24:41 浏览:695
康师傅控流脚本破解 发布:2025-07-05 13:17:27 浏览:239
java的开发流程 发布:2025-07-05 12:45:11 浏览:684
怎么看内存卡配置 发布:2025-07-05 12:29:19 浏览:282
访问学者英文个人简历 发布:2025-07-05 12:29:17 浏览:833