摘要 | 第1-5页 |
Abstract | 第5-10页 |
1 绪论 | 第10-15页 |
1.1 研究的理论意义和应用价值 | 第10-11页 |
1.2 计算机动画研究的进展情况 | 第11-13页 |
1.2.1 关键帧动画 | 第11页 |
1.2.2 形变物体动画 | 第11-12页 |
1.2.3 过程动画 | 第12页 |
1.2.4 关节动画和人体动画 | 第12-13页 |
1.2.5 基于物理模型的动画 | 第13页 |
1.3 本文的主要工作 | 第13-15页 |
2 鱼的运动模型的研究 | 第15-22页 |
2.1 鱼游动过程中的受力分析 | 第15页 |
2.2 鱼的运动模式及BCF模式下鱼的运动分类 | 第15-17页 |
2.3 鱼身体形状、肌肉活动与运动的关系及波动推进理论 | 第17-20页 |
2.4 鱼运动动画的数学描述 | 第20-22页 |
3 Direct3D开发平台简介 | 第22-33页 |
3.1 DirectX简介 | 第22-24页 |
3.1.1 DirectX出现的意义 | 第22页 |
3.1.2 DirectX的组件 | 第22-23页 |
3.1.3 DirectX的编程接口——组件对象模型(COM) | 第23-24页 |
3.2 Direct3D简介 | 第24-33页 |
3.2.1 Direct3D三维渲染管道及其特点 | 第24页 |
3.2.2 硬件抽象层概念的提出 | 第24-26页 |
3.2.3 Direct3D与计算机图形学 | 第26-27页 |
3.2.4 Direct3D设备 | 第27页 |
3.2.5 Direct3D的资源和状态 | 第27-28页 |
3.2.6 顶点声明和灵活顶点格式(FVF) | 第28-29页 |
3.2.7 固定流水线变换 | 第29-32页 |
3.2.8 可编程流水线 | 第32-33页 |
4 虚拟鱼的整体设计和实现 | 第33-59页 |
4.1 Direct3D流程 | 第33-37页 |
4.1.1 创建Windows窗体程序 | 第33-35页 |
4.1.2 创建Direct3D设备 | 第35页 |
4.1.3 初始化三维物体模型 | 第35-36页 |
4.1.4 世界坐标,视点坐标和投影坐标变换 | 第36页 |
4.1.5 渲染三维物体 | 第36-37页 |
4.1.6 接口对象清除 | 第37页 |
4.2 虚拟鱼实时性的实现 | 第37-41页 |
4.2.1 鱼模型的简化 | 第38-39页 |
4.2.2 平衡不同系统间实时性的差异 | 第39-41页 |
4.3 虚拟鱼对象的建立 | 第41-48页 |
4.3.1 虚拟鱼的整体架构 | 第41-43页 |
4.3.2 鱼抽象基类的建立 | 第43-44页 |
4.3.3 不同鱼类对象的建立和组织 | 第44-46页 |
4.3.4 鱼的运动和行为的分离 | 第46-48页 |
4.4 虚拟鱼的运动控制 | 第48-53页 |
4.4.1 虚拟鱼的坐标变换控制 | 第48-49页 |
4.4.2 虚拟鱼的正常运动 | 第49-52页 |
4.4.3 虚拟鱼的随机运动 | 第52-53页 |
4.5 虚拟鱼的交互 | 第53-59页 |
4.5.1 虚拟鱼之间的碰撞检测与规避 | 第54-57页 |
4.5.2 鼠标点击和虚拟鱼的交互 | 第57-59页 |
5 运动模拟和硬件加速实现机制 | 第59-73页 |
5.1 鱼模型的分离构建 | 第59-62页 |
5.1.1 模型的分块构造与重组 | 第59-60页 |
5.1.2 模型分块的技术实现 | 第60-62页 |
5.2 模拟运动函数的建立 | 第62-65页 |
5.2.1 运动过程的分析和描述 | 第62-63页 |
5.2.2 运动函数的定义 | 第63-65页 |
5.3 硬件加速技术 | 第65-73页 |
5.3.1 Vertex Shader简介 | 第65-67页 |
5.3.2 HLSL简介 | 第67-69页 |
5.3.3 Effects对HLSL的封装和整合 | 第69-71页 |
5.3.4 虚拟鱼中硬件加速的运用 | 第71-73页 |
结论 | 第73-75页 |
参考文献 | 第75-78页 |
攻读硕士学位期间发表学术论文情况 | 第78-79页 |
致谢 | 第79-80页 |
大连理工大学学位论文版权使用授权书 | 第80页 |