基于粒子系统的雨雪模拟 计算机毕业论文(2)

2018-12-24 12:44

Abstract

Simulation of natural phenomena has always been one of the most challenging tasks in computergraphics.Simulating natural phenomena, such as water, cloud, smoke, rain, snow and so on, has been widely used in computer game, 3D animation, movie production and advertising, etc.Simulation of rain or snow in natural phenomena can greatly improve the fidelity of 3D scene.In this paper,based on careful analysis and summing-up of the rain and snow simulation at home and abroad,in need of visual simulation of natural scene,with the purpose of friendly interaction,better reality and real-time,a new method of rain and snow simulation on particle system is brought forward.Real-time simulation of rain and snow particle system is an effective method.Based on the basic principles of particle system simulation system built rain and snow Simulation system,model analysis of the properties of rain and snow particles, rain and snow particle movement, rain and snow particle rendering, etc. And presented based on particle systems and OpenGL rainfall,snowfall real-time simulation methods.Practical results show that,This method can compare real-time rendering a real phenomenon of rain and snow, The method to achieve rain and snow modeling Comparison of the real, and in general PC, can also satisfy the general requirements of real-time animation.

In this paper,based on WindowsXP operating system,using Visual C + +6.0 as development tools, combined with OpenGL and MFC programming,design and implementation of rain and snow particle system simulation-based demonstration system,the resulting dynamic rain and snow with real visual effects, and satisfy real-time requirements.

Keywords:Particle system;Rain;Snow;Simulation;OpenGL

2

1 绪论

用计算机生成真实感图形一直是计算机图形学中具有挑战性的研究方向之一,图形的真实感反映了计算机生成的图形与客观世界的相似程度。随着计算机技术的飞速发展,真实感图形的仿真、动画、计算机美术、科学可视化等领域的应用越来越广,而且对真实感的要求也越来越高。

生成客观世界真实感图形的关键是建立恰当的模型。在虚拟环境中,有一类不规则物体,即特殊效果(如雨的下落,雪花的飘零等),它们具有不光滑性、不确定性、不规则性以及运动变化性,而且这种变化是极其复杂、混乱的,并受到周围环境的影响,不可能精确的描述它们,对它们的研究十分困难。OpenGL作为一个高性能的图形和交互式视景处理的工业标准,已经越来越为3D工作者所接受,它是一个开放的三维图形软件包,独立于窗口系统和操作系统,具有很好的移植性。它所具有的强大功能使其在视景仿真方面得到了越来越广的应用。目前,不规则物体建模方法主要有基于分形几何的建模、基于过程纹理函数的建模、基于粒子系统的建模以及基于物理的建模等方法。

近年来,诸如雨、雪、烟、火焰等自然景物的模拟一直是计算机图形学中最具挑战性的课题之一,其模拟在计算机游戏、影视、广告、视景仿真等各种领域中有着广泛的用途。1983年,Reeves首次提出了粒子系统,其优点在于可以用简单的体素来构造复杂的物体,从而为自然现象的造型提供了强

[1]

有力的技术手段。 1.1 课题研究背景

随着计算机科技的不断发展进步,计算机图形学己成为一个具有巨大潜力的新兴产业,对于人们的学习、生活以及学习领域都产生了重大的影响和推动作用。尤其是图形学领域中的计算机动画目前广泛应用于航空航天、影视广告、行为模拟、装演设计、虚拟场景等各种领域。可以预见,在未来的信息工业和产业中,计算机动画将更进一步发挥巨大的作用,占据重要的地位。

近年来,对于自然景物的生成与模拟一直是计算机图形学和动画研究中的热门课题。其中的雨雪下落、云雾闪电、瀑布浪花、飞沙尘埃、花草树木等景物的模拟更具有挑战性。这些自然景物因其形状、形态随时间的推移而动态地、随机地发生变化,很难用常规的建模方法及模拟技术来生成。随机模型是处理这类问题的一种先进的方法,在随机模型中首推Fournier的分形算法和Reeves的粒

[1]

子系统方法。其中粒子系统方法具有良好的随机性和动态性,能逼真地模拟动态景物。因此,研究利用粒子系统方法模拟自然景物,有着重要的科学意义和广泛的应用前景。 1.2 课题研究的意义

计算机图形学中对不规则物体的模拟十分困难,像烟雾、云、火焰、雨雪等自然现象的外观形状极不规则,没有光滑的表面,随着时间变化而变化,这使得应用经典几何来模拟,如直线、圆弧、样条线等来模拟逼真度很差。并且,在应用计算机生成场景时,巨大的计算量往往使之成为图形生成显示的瓶颈。因此,如何简化且有效的模拟如火焰,烟雾,雨雪,瀑布等不规则自然景物就成为计算机真实感图形生成的关键技术。对不规则物体的模拟十分困难,原因在于:

(1)雨、雪等均系自然天气现象,其形成都是由无数小颗粒随机运动而产生,外观形状极不规则,没有光滑的表面,而且极其复杂与随意,并可能随时间而发生变化。 (2)几乎每一个人都知道这类现象,如雨雪是什么样子,但却很少有人能够准确地将其形状描述出来。现实中的雨雪模拟需要很大的人力,物力,财力,而且也存在一定的安全隐患。

应用计算机模拟动态的不规则的自然景物有很广泛的应用前景。比如:将计算机生成的许多奇幻的图像添加到影视作品中可以大大提高作品的观赏性,如雨雪飘落、云雾闪电、瀑布浪花等。另外在比较复杂的可视化系统中,如虚拟战场中,雨雪、火光、烟雾等特效的逼真性直接影响整个系统。在装潢设计、航空航天、游戏制作等领域也都有广泛的应用。

粒子系统方法在模拟不规则动态自然景物的研究领域丌辟了很大的发展空间,粒子系统的优点就是用简单的粒子图元来构造出传统计算机图形学难以构造的复杂物体,而且具有很强的真实感和实时性,粒子系统在对自然景物的模拟方面得到了广泛的应用。自然景物的模拟是计算机图形学理论研究与实际应用的重点与难点;在构造这类复杂物体的几何模型时需要大量的有效数据,而且这

3

些数据都是随机性,计算量相当大,如何以粒子系统基本算法来构造复杂物体并逼真的对其进行实时渲染是虚拟现实技术研究的新课题。

虚拟雨雪的沉浸性、真实性以及实时性效果是传统平面效果图和动画播放所无法达到的,而应用粒子系统实现雨雪的模拟具有较强的真实感,能达到人们对虚拟现实系统沉浸感的要求,使人能在虚拟场景中有身临其境的感觉,更具有实时性。因此虚拟雨雪技术在一定程度上会得到广泛的应用,利用粒子系统实现雨雪的三维效果在虚拟现实领域具有一定的研究意义。 1.3 国内外研究现状

在对于仿真喷泉、火焰、雨、雪、雾等这些生活中常见的自然景物过程中,由于这些景物具有不规则性,动态性和随机性,模拟起来十分的困难,同时也是虚拟场景中不可缺少的部分。而自然景物的模拟一直是虚拟现实领域的重要研究内容,如何在虚拟场景中真实的再现生活中的自然景物

[2]

是极具挑战性的课题之一。自然景物的模拟一般有两种方法:

一种是基于物理建模技术的方法.基于物理建模技术的方法主要是通过对Navier-Stokes(纳维

[3]

埃一斯托克斯,简称N—S方程)方程求解,求出流体过断面时的平均流速业。我国的徐迎庆等人从

[4]

水力学方程出发,提出了一个基于物理模型的模拟流水和波浪的方法;陈前华等人基于物理建模

[5]

方法与隐式曲面造型技术,实现了滴水涟漪的模拟。这些方法的共同特点是要求解Navier-Stokes方程,或者是简化后的Navie-Stokes方程,但由于Navicr-Stokes方程组是非线性方程组,很多情况下都难以精确地求出解析解,即使能求出其特解也往往因为求解计算量太大而难以达到实时的要求。

另一种是基于粒子系统的方法。自然景物与规则的几何物体不同,它们的表面往往包含有丰富的细节或具有随机变化的形状,这些细节与随机变化的形状很难用传统的解析曲面来描述。比如说对喷泉、水流、云、雾、烟、雪、火花等自然景物的模拟上,传统的造型方法具有局限性,而粒子系统的出现却较好的解决了这一难题。粒子系统能充分体现模糊物体的动态性和随机性,能很好地模拟风中飘摇的树枝、天空中的流云、水面上的浪花、山中的薄雾、雨和雪花、园林中的喷泉等三维复杂自然景物。粒子系统的优点就是用简单的粒子图元来构造出传统计算机图形学难以构造的 复杂物体,而且具有很强的真实感和实时性,粒子系统在对自然景物的模拟方面得到了广泛的应用。

雨雪是这类景物中具有代表性的动态景物,是一种自然天气,我们经常会看到,所以很多游戏都会设计实现雨雪效果,让玩家可以体会到真实感。粒子系统很适合在虚拟场景中建立雨雪效果。

[1]

自从1983年由Reeves提出粒子系统训以来,许多的研究者对粒子系统进行了研究与发展。Reeves w.T用粒子系统模型模拟了火焰、爆炸等效果,他还成功模拟了电影《Star Trek II:The warth of Khan》中行星被撞击后所产生的爆炸及火焰等一系列特殊效果。1955年,Reeves W.T

[6]

和Blau发展了粒子系统他们用“V01ume Filling”基本单元法生成随时间改变形状但又基本保持不变的实体,如随风飘动的花草树叶;1990年,Karl Sims研究了粒子的动画及绘制算法,他利用粒子系统的并行特点,提出了一个并行的粒子绘制系统,该系统能绘制不同形状、大小、颜色、透

[7][8]

明度的粒子;1994年,Stam和Flume用“元球”来描述火焰等气态现象,并给出了一种扭曲“元

[9]

球”的算法,使模拟的气态景物的外形更加不规则,从而更加真实;1994年,wong使用粒子系统实现了一个简单的瀑布模型,在该模型中设置了瀑布下落过程中的障碍(如岩石等);1995年,

[10]

McAlister结合OpenGL,用C++开发了一套粒子系统API。利用这套API可以很方便地对运动的物体进行动态模拟,首先将粒子的活动进行简单的分解和描述,然后对粒子系统进行场景渲染,能模拟多种自然景物; 1996年,Fournier A等在研究海浪模型中利用粒子系统模拟了浪花,并提出

[11]

了浪花所产生的条件;1992年,Teng-see Loke等人基于粒子系统,使用牛顿运动定律来描述烟

[12]

火,对烟火的运动、颜色、形状、亮度、尾迹等进行仿真,取得了很好的效果。1998年,

[13]

MatthiasUnbescheiden和Andrzej Trembilski运用粒子系统,从云的物理原理出发,结合纹理映射技术建立了云的模型,其核心是采用具有纹理的多面体顶点集代替粒子群,该模型大大减少了粒子系统中粒子的数量,从而使粒子系统的实时仿真得以实现。2004年,Lutz latta在个人计算机的GPU上实现了并行的粒子系统,能实时处理1,000,000个粒子,并首次提出了大规模粒子系统的

4

概念。

国内人员对粒子系统的研究也在深入,一些研究人员利用粒子系统实现了火烟、云、导弹尾气

[16]

等复杂景物的效果,如2000-2001年,年张芹、吴慧中 等模拟了火焰、烟等所具有的动态性和随

[17][18]

机性;2001年,詹云开等运用粒子系统方法模拟了火焰及其爆炸等效果。2001年,王静秋等通过对焰火细节和特点的分析,给出了模拟焰火的数据结构,用粒子系统实现了焰火的动态模拟,其中主要介绍了焰火的颜色、亮度、透明度、形状、大小、尾迹和生命周期等特性及旋转、星状等特

[19]

殊显示效果的模拟,2004年,谢剑斌,郝建新等运用粒子系统模拟了雨点和雪花的降落;2004年,

[20][21]

彭群生和管宇实现了瀑布的模拟;2006年,徐利明与姜显明实现了雨、雪的效果。 1.4 课题研究的内容

本文基于粒子系统的基本原理建立了雨雪粒子系统模型,在认真分析和总结目前国内外雨雪模拟方法的基础上,深入分析粒子系统的基本原理,雨雪粒子的属性,雨雪粒子的运动及雨雪粒子的绘制等,采用基于粒子系统和OpenGL的降雨、降雪实时模拟的方法,对OenGL渲染管线等建模基础及MFC编程框架展开具体分析,最终实现雨雪模拟效果。 本文内容将组织如下:

第一章:描述粒子系统发展的背景、意义及国内外研究现状,提出基于粒子系统和OpenGL的降雨、降雪实时模拟的方法。

第二章:详细展开分析研究OpenGL渲染管线等建模基础及MFC编程框架。

第三章:详细分析粒子系统的基本原理,雨雪粒子的属性,雨雪粒子的运动及雨雪粒子的绘制等的控制。

第四章:通过雨雪粒子的运动规律,特征,轨迹详细陈述实现系统的设计。并对设计的过程,实现的原理,关键技术和实验结果进行分析。

第五章:总结本文方法并给出进一步的研究展望。

[14,15]

5

2 基于OpenGL+MFC的建模基础

2.1 OpenGL

2.1.1 OpenGL简介

OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口(Application programming interface)的规格,它用于生成二维、三维图像。这个接口由近三百五十个不同的函数调用组成,用来从简单的图元绘制复杂的三维景象。而另一种编程接口系统是仅用于Microsoft Windows上的Direct3D。

OpenGL常用于CAD、虚拟实境、科学可视化程序和电子游戏开发。OpenGL的高效实现(利用了图形加速硬件)存在于Windows,很多UNIX平台和MacOS。这些实现一般由显示设备厂商提供,而且非常依赖于该厂商提供的硬件。开放源代码库Mesa是一个纯基于软件的图形API,它的代码兼容于OpenGL。但是,由于许可证的原因,它只声称是一个“非常相似”的API。

OpenGL规范由1992年成立的OpenGL架构评审委员会(ARB)维护。ARB由一些特别兴趣于建立一个统一的普遍可用的API的公司组成。根据OpenGL官方网站,2002年6月的ARB投票成员包括3Dlabs、Apple Computer、ATI Technologies、Dell Computer、Evans & Sutherland、Hewlett-Packard、IBM、Intel、Matrox、NVIDIA、SGI和Sun Microsystems(Microsoft曾是创立成员之一,但已于2003年3月退出)。 2.1.2 OpenGL发展历程

1992年7月,SGI公司发布了OpenGL的1.0版本,随后又与微软公司共同开发了Windows NT版本的OpenGL,从而使一些原来必须在高档图形工作站上运行的大型3D图形处理软件也可以在微机上运用。

1995年OpenGL的1.1版本面市,该版本较1.0性能提高许多,并加入了一些新的功能。包括提高顶点位置、法线、颜色、色彩指数、纹理坐标、多边形边缘标识的传输速度,引入了新的纹理特性等等。

1997年,Windows 95下3D游戏的大量涌现,游戏开发公司迫切需要一个功能强大、兼容性好的3D图形接口,而当时微软公司自己的3D图形接口DirectX 3.0功能却是很糟糕。因而以制作《雷神之锤》等经典3D射击游戏而著名的id公司同其它一些游戏开发公司一同强烈要求微软在Windows 95中加入对OpenGL的支持。微软公司最终在Windows 95的OSR2版和后来的Windows 版本中加入了对OpenGL的支持。这样,不但许多支持OpenGL的电脑3D游戏得到广泛应用,而且许多在3D图形设计软件也可以运用支持OpenGL标准的3D加速卡,大大提高其3D图形的处理速度。

2003年的7月28日,SGI和ARB公布了OpenGL 1.5。OpenGL 1.5中包括OpenGL ARB的正式扩展规格绘制语言“OpenGL Shading Language”。OpenGL 1.5的新功包括:顶点Buffer Object、Shadow功能、隐蔽查询、非乘方纹理等。

2004年8月,OpenGL2.0版本发布~OpenGL 2.0标准的主要制订者并非原来的SGI,而是逐渐在ARB中占据主动地位的3Dlabs。opengl2.0支持OpenGL Shading Language、新的shader扩展特性以及其他多项增强特性。

2008年8月初Khronos工作组在Siggraph 2008大会上宣布了OpenGL 3.0图形接口规范,GLSL1.30 shader语言和其他新增功能将再次未来开放3D接口发展指明方向。

OpenGL 3.0 API开发代号为Longs Peak,和以往一样,OpenGL 3.0仍然作为一个开放性和跨平台的3D图形接口标准,在Shader语言盛行的今天,OGL3.0增加了新版本的shader语言:GLSL 1.30,可以充分发挥当前可编程图形硬件的潜能。同时,OGL3.0还引入了一些新的功能,例如顶点矩阵对象,全帧缓存对象功能,32bit浮点纹理和渲染缓存,基于阻塞队列的条件渲染,紧凑行半浮点顶点和像素数据,四个新压缩机制等等。

2009年3月又公布了升级版新规范OpenGL 3.1,也是这套跨平台免费API有史以来的第九次更

6


基于粒子系统的雨雪模拟 计算机毕业论文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:公车调度及管理调研报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: