- 5 -
INDEX
我们该如何学习 OSG ............................................................................................................................. - 7 -
第一章 MFC 基础 ............................................................................................................................... - 8 -
1.1 最精简的单文档 MFC 框架 ...................................................................................................... - 8 -
1.2 MFC 常用的几种基本操作 ...................................................................................................- 24 -
1.2.1 修改鼠标.................................................................................................................- 24 -
1.2.2 透明对话框 .............................................................................................................- 26 -
1.2.3 客户区全屏 .............................................................................................................- 28 -
1.2.4 音乐播放.................................................................................................................- 30 -
第二章 基本几何体的绘制.................................................................................................................- 36 -
2.1 构建 OSG+MFC 框架 ..............................................................................................................- 36 -
2.1.1 OSG 渲染过程 .........................................................................................................- 36 -
2.1.2 MFC+OSG 控制 ........................................................................................................- 41 -
2.2 矩阵操作..............................................................................................................................- 50 -
2.2.1 矩阵操作的数学原理 ...............................................................................................- 50 -
2.2.2 osgViewer 对于视口的控制 ..................................................................................- 52 -
2.2.3 绘制基本几何体 ......................................................................................................- 54 -
2.3 绘制各种几何体 ...................................................................................................................- 61 -
2.4 综合例子:制做时钟 ............................................................................................................- 65 -
第三章 场景漫游...............................................................................................................................- 76 -
3.1 如何编写动态链接库 ..........................................................................................................- 76 -
3.1.1 OSG 中的 DLL .........................................................................................................- 76 -
3.1.2 编写 TravelManipulator.DLL...........................................................................- 78 -
3.1.3 测试 TravelManipulator.DLL...........................................................................- 87 -
3.2 碰撞检测 ............................................................................................................................- 89 -
3.2.1 最简单的碰撞检测...................................................................................................- 89 -
3.2.2 常用的碰撞检测方法 ...............................................................................................- 90 -
3.2.2 空间划分 BSP 树与八叉树 .......................................................................................- 91 -
3.3 项目协作 ............................................................................................................................- 93 -
第四章 路径漫游...............................................................................................................................- 94 -
4.1 应用.PATH 文件 ................................................................................................................- 95 -
4.1.1 PATH 文件结构 .......................................................................................................- 95 -
4.1.2 使用 PATH 文件 ......................................................................................................- 97 -
4.2 曲线生成插值算法 ..............................................................................................................- 99 -
4.2.1 多项式插值 ........................................................................................................... - 100 -
4.2.2 Hermite 和 Cardinal 曲线 ................................................................................ - 102 -
4.2.3 B zier 曲线 ........................................................................................................ - 104 -
4.3 路径漫游 .......................................................................................................................... - 104 -
4.3.1 路径漫游流程........................................................................................................ - 105 -
4.3.2 增强 TravelManipulator.dll......................................................................... - 107 -
4.3.3 路径漫游功能演示................................................................................................. - 117 -
第五章 粒子系统............................................................................................................................. - 130 -