| 摘要 | 第6-7页 |
| Abstract | 第7页 |
| 第1章 绪论 | 第10-16页 |
| 1.1 问题的提出 | 第10-11页 |
| 1.2 国内外研究现状 | 第11-14页 |
| 1.3 本文研究的主要内容、目标与方法 | 第14-15页 |
| 1.3.1 研究目标 | 第14页 |
| 1.3.2 研究内容 | 第14-15页 |
| 1.4 本文结构安排 | 第15-16页 |
| 第2章 头发建模与仿真 | 第16-27页 |
| 2.1 头部模型文件的处理 | 第16-19页 |
| 2.1.1 3ds文件的解析 | 第16-17页 |
| 2.1.2 点、面信息处理 | 第17-19页 |
| 2.2 Static Follow-The-Leader(FTL)算法 | 第19-20页 |
| 2.3 Dynamic Follow-The-Leader(DFTL)算法 | 第20-21页 |
| 2.4 头发插值 | 第21-25页 |
| 2.4.1 基于三角形的头发插值 | 第21-23页 |
| 2.4.2 基于高斯核函数的头发插值 | 第23-25页 |
| 2.5 卷发仿真 | 第25-26页 |
| 2.6 本章小结 | 第26-27页 |
| 第3章 碰撞检测与处理 | 第27-37页 |
| 3.1 Axis-Aligned Bounding Box(AABB)算法 | 第27-31页 |
| 3.1.1 分割方向确定 | 第28-30页 |
| 3.1.2 包围盒的创建 | 第30页 |
| 3.1.3 碰撞检测与处理 | 第30-31页 |
| 3.2 包围球 | 第31-33页 |
| 3.2.1 构建包围球 | 第31-32页 |
| 3.2.2 碰撞检测与处理 | 第32-33页 |
| 3.3 头发自碰撞与处理 | 第33-36页 |
| 3.3.1 体积的构建 | 第34-36页 |
| 3.3.2 拉格朗日碰撞 | 第36页 |
| 3.4 本章小结 | 第36-37页 |
| 第4章 动态头发的实现 | 第37-43页 |
| 4.1 ArcBall算法 | 第37-39页 |
| 4.2 变换顶点 | 第39-40页 |
| 4.3 风力模型的建立 | 第40-42页 |
| 4.4 本章小结 | 第42-43页 |
| 第5章 头发实时渲染 | 第43-52页 |
| 5.1 OpenGL渲染管线 | 第43-44页 |
| 5.2 几何着色器处理 | 第44-46页 |
| 5.3 贝塞尔曲线平滑处理 | 第46-47页 |
| 5.4 Kajiya-Kay着色模型 | 第47-48页 |
| 5.5 Marschner着色模型 | 第48-49页 |
| 5.6 Deep Opacity Maps | 第49-51页 |
| 5.7 本章小结 | 第51-52页 |
| 第6章 实验结果与分析 | 第52-69页 |
| 6.1 实验开发环境 | 第52页 |
| 6.2 固定管线 | 第52-57页 |
| 6.2.1 无插值 | 第52-55页 |
| 6.2.2 利用三角形插值 | 第55-57页 |
| 6.3 可编程管线 | 第57-66页 |
| 6.3.1 系统界面及模块介绍 | 第57-60页 |
| 6.3.2 系统总体流程 | 第60-61页 |
| 6.3.3 头发仿真与渲染效果 | 第61-66页 |
| 6.4 与其他文献的对比 | 第66-68页 |
| 6.5 本章小结 | 第68-69页 |
| 结论 | 第69-70页 |
| 致谢 | 第70-71页 |
| 参考文献 | 第71-75页 |
| 攻读硕士学位期间发表的论文及科研成果 | 第75页 |