基于粒子系统和纹理映射烟花动画模拟研究.docVIP

基于粒子系统和纹理映射烟花动画模拟研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于粒子系统和纹理映射烟花动画模拟研究

基于粒子系统和纹理映射烟花动画模拟研究   摘要:为了更好地模拟烟花动画,通过分析粒子系统和烟花燃放的原理,采用VC++和OpenGL的纹理映射技术,建立了烟花模拟模型。通过控制烟花爆炸后烟花粒子的运动轨迹,对不同形状的烟花进行模拟,并成功模拟了笑脸烟花、奇形四叶玫瑰形烟花等。实验结果表明,该算法具有简单、实时性等优点,实现了对特殊形状烟花效果的逼真性模拟。   关键词关键词:烟花动画;粒子系统;纹理映射;动画模拟   中图分类号:TP319 文献标识码:A 文章编号文章编号2013)007016803   0 引言   近年来,计算机技术和动画技术的快速发展,为自然景物的模拟提供了一定的条件。然而,由于自然景物构造的复杂性,对它们进行实时性和真实性的模拟一直是我们追求的目标。特别是对于云、水、雾、烟花等不规则物体的模拟,在计算机图形学和虚拟现实中一直备受关注。1983年,W.T.Reeves[1]首次提出了粒子系统模型,并用其对许多不规则自然景物进行了成功的模拟。它的优点是可以利用非常简单的体素来构造复杂的物体,即一个粒子系统有大量称为粒子的简单体素构成。每个粒子都有一组属性,如位置、速度、形状、颜色和生命周期等。一个粒子究竟有什么样的属性,主要取决于具体的应用。因此,粒子系统为自然景象如火焰、雨、雪、烟花等的模拟提供了强有力的技术支持。目前,国内外已经有很多学者采用粒子系统对自然景物进行成功的模拟。万华根等[4]通过对NS方程的求解并结合粒子系统来模拟喷泉,同时利用圆球实现水滴,采用光线跟踪算法绘制。1985年, WilliamT.Reeves 和Blau R.[4]采用“volume filling”基本单元模拟了随风飘动的花草树木,很好地发展了粒子系统。   目前, 在模拟烟花方面, 国内外已有一系列的研究成果。1992年T.Loke等人[5]提出一种用粒子衍生法来表现烟花粒子轨迹的绘制算法, 同时采用链表数据结构的存储方式, 实现了多种烟花的特殊效果。陈利平[6]、甘露等人[7]通过深入研究烟花燃放过程的特点, 给出了不同状态下的烟花的具体算法。然而,用这种算法模拟的烟花,其烟花粒子数目的多少对模拟效果的实时性和逼真性??很大的影响。罗玉玲[9]给出了一种基于粒子系统与纹理映射结合的烟花动态模型,模拟出了较为真实的烟花动态视觉效果。李清畅等人[10]将粒子系统与BillBoarding技术相结合, 取得了逼真的烟花模拟燃放效果。   通过深入研究上述方法的优缺点,本文以粒子系统和烟花燃放的基本原理为基础,将VC++和OpenGL中的纹理映射技术相结合, 对不同形状的烟花进行了仿真, 满足了烟花模拟的实时性和逼真性的要求。   1 粒子系统基本原理   粒子系统的基本组成要素是粒子。通过这些粒子的集合,进行整个形体的表达。在粒子系统中,每个粒子都拥有一组属性,包括形状、颜色、位置、运动速度、生命值等。粒子的形状可以是点、球、立方体、圆等一些简单的形状,也可以是正四面体、矩形体和星形等复杂一点的形状。具体采用的形状取决于粒子系统所要表达的形体。   在粒子系统的整个应用中,粒子的状态是随着时间的变化而不断变化的,这个变化的过程,称为粒子的生命期。在生命期的每一刻,需要完成以下四步工作:   (1) 粒子源产生新粒子。进行粒子的初始化操作,包括粒子数目、生命值、速度、运动方向等属性的预处理。   (2) 更新粒子属性。由于时间的变化会对粒子的位置、速度、生命值等产生影响,所以应对现存粒子的属性进行更新。   (3) 删除“死亡”粒子。对粒子的生命值进行检查,若为0则需要从系统中删除该粒子。   (4) 绘制粒子。为展现粒子的运动轨迹及各属性的变化,以产生动画的效果,需要对粒子系统中所有现存的粒子进行绘制并显示。   2 纹理映射技术   纹理映射技术在计算机图形学中应用非常广泛,可以降低渲染粒子的复杂度,是一种增强图形真实感的简单有效的手段。   2.1 纹理映射定义   将纹理模式映射到物体模型表面,模拟物体表面细节和光照,称为纹理映射(Texture Mapping)。   2.2 应用纹理映射步骤   为了在OpenGL中使用纹理映射,需要执行以下步骤:   ①创建纹理对象,并为它指定一个纹理;   ②确定这个纹理如何应用到每个像素上;   ③启用纹理贴图功能;   ④绘制场景,提供纹理坐标和几何图形坐标。   2.3 应用纹理映射的优势   (1)利用纹理图像来描述景物表面各点处的发射属性,可以模拟景物表面丰富的纹理细节,从而提高计算机生成图形的真实性。   (2)采用纹理映射的方法在一定程度上简化了建模过程。   3.2 烟花粒子燃放的

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档