摘要 | 第1-4页 |
Abstract | 第4-8页 |
引言 | 第8-9页 |
1 绪论 | 第9-15页 |
·课题来源和研究意义 | 第9-11页 |
·国内外研究现状综述 | 第11-15页 |
·虚拟现实概述 | 第11页 |
·虚拟现实系统 | 第11-13页 |
·沉浸式虚拟现实 | 第13-14页 |
·桌面式虚拟现实 | 第14-15页 |
2 系统开发平台简介 | 第15-24页 |
·3D Studio Max简介 | 第15页 |
·DirectX技术 | 第15-16页 |
·图形处理器(GPU)和GPU编程 | 第16-24页 |
·GPU技术 | 第16-17页 |
·GPU的特点 | 第17-18页 |
·GPU的图形处理流水线结构 | 第18-19页 |
·顶点处理 | 第19-20页 |
·片段处理 | 第20-21页 |
·Shader语言 | 第21-24页 |
3 系统分析与设计 | 第24-26页 |
·系统简介 | 第24页 |
·关键性问题分析及其解决方案 | 第24-25页 |
·硬件组成及其性能要求 | 第25-26页 |
4 海面场景中海水的仿真 | 第26-38页 |
·对海面的建模 | 第26-27页 |
·对海面进行环境映射 | 第27-28页 |
·海面波动效果的实现 | 第28-36页 |
·海面理想波动函数的建立 | 第29-30页 |
·对理想的波动函数进行修正 | 第30-31页 |
·计算海面任意顶点的法线和切线 | 第31页 |
·海面几何波动的一些细节 | 第31-32页 |
·海面上法向量的扰动 | 第32-35页 |
·海面上法线图扰动的几个细节 | 第35-36页 |
·对失真边长进行高频波过滤 | 第36页 |
·GPU上的实现及海面场景的最终效果 | 第36-38页 |
5 海底场景中光线刻蚀效果的实时绘制 | 第38-43页 |
·刻蚀效果概述 | 第38-39页 |
·分析 | 第39页 |
·本文中刻蚀的绘制方法 | 第39-43页 |
·使用水面波动函数的偏导数来产生法线 | 第40-41页 |
·相互交叉的刻蚀花纹 | 第41页 |
·太阳环境贴图 | 第41-42页 |
·刻蚀在GPU中的实现及最终效果 | 第42-43页 |
6 海底场景中雾化效果的实时绘制 | 第43-46页 |
·雾的分析和雾效数学模型的建立 | 第43-44页 |
·雾的属性 | 第43-44页 |
·雾的数学模型 | 第44页 |
·实时计算时的简化 | 第44-45页 |
·GPU上的实现及最终的雾效 | 第45-46页 |
7 海底场景中视点碰撞检测的实现 | 第46-54页 |
·碰撞检测概述 | 第46页 |
·多视平面的视点碰撞检测策略 | 第46-47页 |
·系统离线初始化阶段 | 第47-50页 |
·确定若干个候选视平面 | 第47页 |
·在每个候选视平面内建立二级(内层)包围盒 | 第47-49页 |
·在每个候选视平面内建立一级(外层)包围圆 | 第49-50页 |
·系统运行时的碰撞检测阶段 | 第50-52页 |
·确定当前视平面 | 第50页 |
·当前视平面内视点与物体一级(外层)包围圆的碰撞检测 | 第50页 |
·当前视平面内视点与二级(内层)包围盒的碰撞检测 | 第50-52页 |
·侧滑处理 | 第52页 |
·对多视平面的视点碰撞检测策略的分析 | 第52-54页 |
·本文提出的多视平面视点碰撞检测策略的优点 | 第53页 |
·本文提出的多视平面视点碰撞检测策略的不足 | 第53-54页 |
8 海底场景中三维角色的鼠标拾取与交互 | 第54-59页 |
·拾取的概念 | 第54页 |
·拾取的步骤和实现 | 第54-58页 |
·变换并获得通过视点和屏幕上点击点的射线矢量(Dir) | 第54-55页 |
·确定鼠标选取点的屏幕坐标 | 第55页 |
·得到Dir在视坐标空间内的表示 | 第55-57页 |
·转换Dir到世界坐标空间 | 第57-58页 |
·使用射线与场景中三角形求交,获得该三角形所在的模型 | 第58页 |
·拾取实现的最终效果 | 第58-59页 |
结论 | 第59-60页 |
参考文献 | 第60-62页 |
附录A 部分Shader源代码 | 第62-70页 |
第四章 海面场景中海水的仿真 | 第62-70页 |
攻读硕士学位期间发表学术论文情况 | 第70-71页 |
致谢 | 第71-72页 |