DirectX 9.0 3D 游戏开发编程基础

第Ⅰ部分 基础知识

必备的数学知识

3D空间中的向量

向量相等

计算向量的长度

向量的规范化

向量加法

向量减法

数乘

点积

叉积

矩阵

矩阵相等、矩阵数乘和矩阵加法

矩阵乘法

单位矩阵

逆矩阵

矩阵的转置

D3DX矩阵

基本变换

平移矩阵

旋转矩阵

比例变换矩阵

几何变换的组合

向量变换的一些函数

平面(选读)

D3DXPLANE

点和平面的空间关系

平面的创建

平面的规范化

平面的变换

平面中到某一点的最近点

射线(选读)

射线

射线与平面的相交

小结

  

第Ⅱ部分 Direct3D基础

第1章 初始化Direct3D

1.1 Direct3D概述

1.1.1 REF设备

1.1.2 D3DDEVTYPE

1.2 COM(组件对象模型)

1.3 预备知识

1.3.1 表面

1.3.2 多重采样

1.3.3 像素格式

1.3.4 内存池

1.3.5 交换链和页面置换

1.3.6 深度缓存

1.3.7 顶点运算

1.3.8 设备性能

1.4 Direct3D的初始化

1.4.1 获取接口IDirect3D9的指针

1.4.2 校验硬件顶点运算

1.4.3 填充D3DPRESENT_PARAMETER结构

1.4.4 创建IDirect3DDevice9 接口

1.5 例程:Direct3D的初始化

1.5.1 d3dUtility.h/cpp

1.5.2 例程框架

1.5.3 例程:D3D初始化

1.6 小结

第2章 绘制流水线

2.1 模型表示

2.1.1 顶点格式

2.1.2 三角形单元

2.1.3 索引

2.2 虚拟摄像机

2.3 绘制流水线

2.3.1 局部坐标系

2.3.2 世界坐标系

2.3.3 观察坐标系

2.3.4 背面消隐

2.3.5 光照

2.3.6 裁剪

2.3.7 投影

2.3.8 视口变换

2.3.9 光栅化

2.4 小结

第3章 Direct3D中的绘制

3.1 顶点缓存与索引缓存

3.1.1 创建顶点缓存和索引缓存

3.1.2 访问缓存内容

3.1.3 获取顶点缓存和索引缓存的信息

3.2 绘制状态

3.3 绘制的准备工作

3.4 使用顶点缓存和索引缓存进行绘制

3.4.1 IDirect3DDevice9::DrawPrimitive

3.4.2 IDirect3DDevice9::DrawIndexedPrimitive

3.4.3 Begin/End Scene

3.5 D3DX几何体

3.6 例程:三角形、立方体、茶壶、D3DXCreate*

3.7 小结

第4章 颜色

4.1 颜色表示

4.2 顶点颜色

4.3 着色

4.4 例程:具有颜色的三角形

4.5 小结

第5章 光照

5.1 光照的组成

5.2 材质

5.3 顶点法线

5.4 光源

5.5 例程:光照

5.6 一些附加例程

5.7 小结

第6章 纹理映射

6.1 纹理坐标

6.2 创建并启用纹理

6.3 纹理过滤器

6.4 多级渐进纹理

6.4.1 多级渐进纹理过滤器

6.4.2 使用多级渐进纹理

6.5 寻址模式

6.6 例程:纹理四边形

6.7 小结

第7章 融合技术

7.1 融合方程

7.2 融合因子

7.3 透明度

7.3.1 Alpha通道

7.3.2 指定Alpha来源

7.4 用DirectX Texture Tool

创建Alpha通道

7.5 例程:透明效果

7.6 小结

第8章 模板

8.1 模板缓存的使用

8.1.1 模板缓存格式的查询

8.1.2 模板测试

8.1.3 模板测试的控制

8.1.4 模板缓存的更新

8.1.5 模板写掩码

8.2 例程:镜面效果

8.2.1 成像中的数学问题

8.2.2 镜面效果实现概述

8.2.3 代码解析

8.3 例程:Planer Shadows

8.3.1 平行光阴影

8.3.2 点光源产生的阴影

8.3.3 阴影矩阵

8.3.4 使用模板缓存防止二次融合

8.3.5 代码解析

8.4 小结

第Ⅲ部分 Direct3D的应用

第9章 字体

9.1 ID3DXFont接口

9.1.1 创建一个ID3DXFont

接口对象

9.1.2 绘制文本

9.1.3 计算每秒绘制的帧数

9.2 CD3DFont

9.2.1 创建CD3DFont类的实例

9.2.2 绘制文本

9.2.3 清理

9.3 D3DXCreateText函数

9.4 小结

第10章 网格(一)

10.1 几何信息

10.2 子集和属性缓存

10.3 绘制

10.4 网格优化

10.5 属性表

10.6 邻接信息

10.7 克隆

10.8 创建网格(D3DXCreateMeshFVF)

10.9 例程:网格的创建与绘制

10.10 小结

第11章 网格(二)

11.1 ID3DXBuffer

11.2 XFile

11.2.1 加载XFile文件

11.2.2 XFile材质

11.2.3 例程:XFile

11.2.4 生成顶点法线

11.3 渐进网格

11.3.1 生成渐进网格

11.3.2 顶点属性权值

11.3.3 ID3DXPMesh接口方法

11.3.4 例程:Progressive Mesh

11.4 外接体

11.4.1 一些新的特殊常量

11.4.2 外接体的类型

11.4.3 例程:Bounding Volumes

11.5 小结

第12章 设计一个灵活的Camera类

12.1 Camera类的设计

12.2 实现细节

12.2.1 观察矩阵(取景变换矩阵,

View Matrix)的计算

12.2.2 绕任意轴的旋转

12.2.3 俯仰、偏航和滚动

12.2.4 行走、扫视和升降

12.3 例程:Camera

12.4 小结

第13章 地形绘制基础

13.1 高度图

13.1.1 创建高度图

13.1.2 加载RAW文件

13.1.3 访问和修改高度图

13.2 创建地形几何信息

13.2.1 顶点的计算

13.2.2 索引的计算

13.3 纹理映射

13.4 光照

13.4.1 概述

13.4.2 坐标方格的明暗度计算

13.4.3 对地形进行着色

13.5 在地形中“行走”

13.6 例程:Terrain

13.7 一些改进

13.8 小结

第14章 粒子系统

14.1 粒子和点精灵

14.1.1 结构格式

14.1.2 点精灵的绘制状态

14.1.3 粒子及其属性

14.2 粒子系统的组成

14.2.1 绘制一个粒子系统

14.2.2 随机性

14.3 具体的粒子系统

14.3.1 例程:Snow System

14.3.2 例程:Firework

14.3.3 例程:Particle Gun

14.4 小结

第15章 拾取

15.1 屏幕到投影窗口的变换

15.2 拾取射线的计算

15.3 对射线进行变换

15.4 射线/物体相交判定

15.5 例程:Picking

15.6 小结



侠客C#营销软件开发特训
附件
1438_pan
****(需购买后查看)
前往下载
附件购买
售价:10 积分
开通终身全站通或更高级的会员可免费下载该文件

登录注册购买

未经允许不得转载! 作者:admin,转载或复制请以超链接形式并注明出处搜库资源网

原文地址:https://www.soku.wang/ruanjianbiancheng/1438.html发布于:2019-01-25

您需要 登录账户 后才能发表评论

发表评论

快捷回复: 表情:
评论列表 (暂无评论,338人围观)

还没有评论,来说两句吧...