论文摘要
自然景物的模拟一直是计算机图形学中的热门研究课题,其应用范围很广,包括影视广告、实时绘制、3D游戏、装潢设计、虚拟场景等各种领域,以其独特的魅力在信息化社会中占据着重要的位置。然而,大多数自然景物的外形是随机变化的,如:火焰、浪花、河流、瀑布、雨雪、烟雾等,很难用常规的建模方法及模拟技术来描述,因此自然景物的模拟也是具有挑战性的课题。本课题以瀑布场景作为模拟的对象,以粒子系统作为基本建模方法来表现其运动的随机性和动态性特点,并且模拟了粒子与障碍物的碰撞效果。首先,本文对目前国内外通用的流体模拟方法做了概述,对粒子系统和碰撞检测技术在水流模拟上的应用进行了讨论;通过将瀑布水流的属性参数化,建立了一个基于粒子系统和动力学原理的参数化的瀑布水流运动模型,并对粒子的参数特性进行了详细的定义;通过分析瀑布水流粒子系统和通用的层次包围盒技术的特点,提出了加速水粒子与障碍物碰撞检测的方法,该方法基于AABB层次包围盒技术,并且根据水流运动的方向性,剔除了不会发生碰撞的障碍物的边面;利用专业建模软件实现地形及障碍物等静态模型的建模,通过编程读取模型并在场景中绘制出来;使用网格模拟了水面,并通过实时改变网格顶点坐标来实现水面的波动效果;此外还加入了天空、光照和雾化等效果来增加场景的真实感。本文基于Visual C++编程环境及OpenGL标准图形库设计了一个瀑布场景的演示系统,实现了瀑布的动态绘制,其运动和外观效果真实,在普通的PC机上获得了实时的绘制速度。用户可以在调整参数的同时观察到瀑布水流运动的变化,其方法可应用于虚拟场景漫游、3D实时游戏等中。
论文目录
摘要ABSTRACT第1章 绪论1.1 课题的研究背景1.1.1 计算机图形学的发展现状1.1.2 虚拟现实技术的应用与发展1.1.3 流体模拟方法概述1.2 课题研究的意义1.3 本文主要技术简介1.3.1 粒子系统1.3.2 碰撞检测技术1.4 课题研究的主要内容1.5 本章小结第2章 开发工具介绍2.1 图形与硬件的接口—OpenGL2.1.1 OpenGL概述2.1.2 OpenGL的基本操作2.1.3 OpenGL的体系结构2.1.4 OpenGL开发组件2.1.5 OpenGL函数2.1.6 OpenGL运行方式2.2 开发平台—Microsoft Visual C++2.2.1 面向对象的程序设计2.2.2 MFC(Microsoft Foundation Class)简介2.2.3 Windows图形编程基础2.3 本章小结第3章 基于粒子系统的瀑布模型3.1 粒子系统概述3.1.1 粒子系统简介3.1.2 粒子系统的基本原理3.1.3 粒子系统的形式描述3.2 粒子系统的构造3.2.1 粒子系统基本属性3.2.2 粒子的产生和删除3.2.3 粒子的运动和绘制3.3 瀑布水流运动的粒子系统3.3.1 算法框架3.3.2 水粒子运动的动力学原理3.3.3 粒子的表示方法3.4 瀑布水流粒子系统的数据结构3.4.1 水粒子的数据结构3.4.2 水粒子的运动过程3.5 本章小结第4章 水粒子与障碍物的碰撞检测4.1 层次包围盒碰撞检测算法4.1.1 沿坐标轴的轴向包围盒(AABB)4.1.2 包围球(Sphere)4.1.3 有向包围盒(OBB)4.1.4 离散方向多面体(K-DOP)4.1.5 几种包围盒的优缺点4.2 水粒子与障碍物的碰撞检测算法4.2.1 水粒子与障碍物的碰撞加速方法4.2.2 水粒子与障碍物的碰撞检测算法结构4.2.3 水粒子与包围盒的相交算法4.2.4 水粒子与三角形的求交算法4.2.5 水粒子的碰撞反应4.3 本章小结第5章 本文用到的其它关键技术5.1 纹理映射及融合技术5.1.1 OpenGL中的纹理映射5.1.2 OpenGL中的融合操作5.2 光照和雾5.2.1 OpenGL中的光照5.2.2 OpenGL中的雾效5.3 场景建模方法5.3.1 天空的模拟5.3.2 水面水波的模拟5.3.3 地形地物的建模5.4 本章小结第6章 瀑布场景实时绘制的实现6.1 系统运行框架6.2 系统功能模块6.2.1 功能模块的设计6.2.2 各功能模块之间的关系6.3 系统运行界面与绘制效果6.4 本章小结结论参考文献致谢攻读硕士学位期间所发表的学术论文学位论文评阅及答辩情况表
相关论文文献
标签:瀑布论文; 粒子系统论文; 层次包围盒论文; 碰撞检测论文; 实时绘制论文;