第1章 Managed DirectX和XNA 1
DirectX 1
Managed DirectX 1
XNA简介 3
.NET Framework 3
事件驱动 3
Windows应用程序框架 4
可视化程序设计 6
解决方案和项目 9
键盘事件 10
事件处理函数参数 10
鼠标事件 11
窗体的Paint事件 12
常用结构 13
第2章 3D图形的数学基础 15
3D坐标系统和坐标 15
向量 16
矩阵和Matrix结构 18
仿射矩阵 19
Matrix结构表示3D变换矩阵 21
第3章 Direct 3D程序框架 23
图形卡和GPU 23
Device类 24
3D程序基本框架 26
从基本框架创建项目 29
TransformedColored结构 30
绘制静止三角形 32
绘制点、线和三角形 33
V ertexB uffer类 35
绘制静止立方体 37
背面剔除 39
在基本框架中使用控件 41
第4章 Direct 3D图形原理 42
世界、观察和投影变换 42
PositionColored结构 46
显示三角形 46
使三角形旋转 48
三角形连续旋转 50
显示立方体 51
从不同位置观察立方体 53
使用顶点索引绘制立方体 54
模拟地板和墙壁 56
旋转的空心圆柱 59
复杂的变换关系 61
第5章 灯光和材质 63
灯光 63
材质和Material结构 64
PostionNormal结构和法线 65
定向光源照亮三角形 66
定向光源照亮立方体 69
定向光源照亮空心圆柱 73
点光源 75
聚光灯光源 77
各种光源照射到地板上 78
镜面高光 83
材质属性Emissive 84
第6章 纹理 86
纹理图案和坐标 86
包含纹理坐标的顶点结构 87
为墙壁增加纹理 87
纹理寻址模式 89
光照三角形增加纹理 91
为立方体增加纹理 96
为空心圆柱增加纹理 101
添加背景 103
纹理滤波器 105
多层纹理 106
多级渐进纹理滤波 109
第7章 Mesh类 111
Mesh类预定义的几何体 111
显示茶壶 112
改变观察点和旋转茶壶 114
增加多个茶壶 115
克隆mesh实现纹理 116
3D字体 118
显示.x文件中的3D图形 118
地形图 121
Mesh的优化 125
Mesh的简化 127
ProgressiveMesh类 129
将3ds Max文件转换为.x文件 131
第8章 透明效果和雾化 133
深度测试 133
透明物体的绘制原理 137
顶点颜色透明 138
材质颜色透明 140
纹理透明 142
有纹理的透明立方体 145
多个透明体 148
雾化 150
顶点雾化 151
像素雾化 153
基于范围的雾化 154
第9章 其他特殊效果 157
倒影 157
使用TextureFactor来设置顶点颜色 161
阴影 163
后视镜 166
广告牌技术 171
模板测试 176
第10章 可编程流水线入门 184
可编程流水线的基本概念 184
HLSL基础 185
fx文件 190
Effect类 191
使用HLSL程序基本框架 192
简单HLSL渲染 194
HLSL光照模型 198
HLSL表示环境光 199
HLSL定向光源漫反射光 202
HLSL表示镜面高光 204
纹理渲染 210
effect编辑器的使用 218
第11章 移植到XNA游戏框架 220
XNA基本框架 220
Basic Effect类 224
键盘 227
用顶点索引绘制图形 229
灯光 231
纹理 233
.x和.fbx文件 235
HLSL 239
SpriteBatch类 241
输出字符串 245
鼠标及按钮实现 247
第12章 XNA透明效果和雾化 249
深度测试 249
将顶点颜色设置为透明 251
将材质颜色设置为透明 253
纹理透明 255
像素雾化 256
第13章 XNA特殊效果 258
倒影 258
阴影 262
广告牌技术 266
模板测试 268
后视镜 273
声音 276
第14章 用XNA实现粒子系统 279
Point Sprite 279
描述粒子的结构 281
粒子系统原理 283
粒子系统类 284
模拟曳光弹 286
模拟爆炸 289
模拟雪景 293
HLSL粒子系统 296
SpriteBatch粒子系统 311
第15章 XNA实现阶层动画 314
常用的动画技术 314
阶层关系 315
.x文件格式分析 319
显示有阶层关系的.x文件 321
逼真的坦克 328
蒙皮骨骼动画 331
第16章 XNA游戏实例 333
显示一辆汽车 333
汽车停在公路上 335
汽车在公路上行驶 337
汽车左右移动 338
在公路上增加障碍物 340
汽车是否碰到障碍物 344
完成游戏 346
附录 C#语言入门 352