基于粒子系统的实时火焰绘制方法研究b8hhfvrt.doc

基于粒子系统的实时火焰绘制方法研究b8hhfvrt.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于粒子系统的实时火焰绘制方法研究b8hhfvrt

基于粒子系统的实时火焰绘制方法研究 摘 要:设计了粒子系统火焰模型,详细讨论了模型中粒子的属性及其变化。为了提高系统运行效率,采用四边形面片代替点光源粒子,结合纹理映射、Billboarding和alpha混合技术,使得火焰模型在实际应用中能满足实时性要求,同时保持较好的逼真效果。 关键词:粒子系统;纹理映射;公告板;alpha混合 Research of real-time fire rending method based on particle system Abstract: A fire model based on particle system is proposed. Particle’s attributes and their evolvements are discussed. Several methods are used to promote the efficiency of system, such as adopting quadrangle to substituting particle of point light source, applying texture mapping technique, utilizing Billboarding and alpha amalgamation technology. The model can meet real-time and reality requirement in practical application. Key words:particle system ; texture mapping ; Billboarding ; alpha amalgamation 火焰、云雾、浪花、雨雪等自然景物的模拟一直是计算机图形学领域的研究热点和难点。这些物体都具有不断运动变化的特征,形状变化没有固定规律, 很难用传统的造型方法来表现。 粒子系统是迄今为止用于描述不规则物体最成熟的理论之一。其基本思想是通过一定数量的粒子组成的粒子群体来表示不规则物体,然后通过控制粒子的运动变化来模拟不规则物体的运动变化特征。传统粒子系统包含成千上万个粒子,需要大量的计算时间,难以满足实时性要求。为了解决仿真中的实时性问题,本文设计了粒子系统火焰模型,模型中采用四边形面片代替点光源粒子,结合纹理映射、Billboarding和alpha混合技术来实现火焰特效。实验证明,采用该模型模拟的火焰效果真实且能在普通的PC机上满足实时性要求。 1 基于粒子系统的火焰模型 1.1 火焰的分析 火焰具有如下的显示细节和特点: (1) 具有持续性。 (2) 形状的变化。火焰会有特殊的显示效果,如摇曳等; (3) 颜色的变化。火焰从焰心到外焰颜色呈现从亮白色到黄色、红色的变化。 1.2 火焰粒子系统模型 1.2.1 火焰粒子系统的初始状态 初始时刻火焰粒子系统状态包括粒子的数量、位置、运动速度及加速度、颜色、大小、形状以及生存期。 (1) 初始粒子数量 要在给定屏幕显示区域内产生一定数量的火焰粒子, 初始数量的定义很关键, 它决定了火焰的密度和规模, 数目过小无法满足真实感要求;数目过大要占用系统大量的时间, 实时性受到影响。本文设计的粒子系统中粒子数量可根据要模拟的火焰规模由用户指定。 (2) 初始位置 粒子的初始位置由粒子的产生区域决定,同时,产生区域也决定粒子的初始运动方向。产生区域为矩形或圆形时,粒子以一定的喷射角离开所在的平面向外运动。产生区域为球形时,粒子从球的中心沿球径向外运动。 通常产生区域位于某一平面(如xoz平面),火焰沿该面向上燃烧。区域中心粒子密集,边界稀疏,且呈正态分布[3]。由于采用正态分布为新粒子的初始位置赋值不是根据火焰的物理性质得出,从而不过分要求物理上和数学上的精确性,所以为了进一步加快系统的运行速度,本文采用简化的方法计算新粒子的初始位置: (1) (2) (3) 其中为火焰燃烧的中心位置,、、分别表示粒子产生区域在方向的变化范围。为[-1,1]上均匀分布的随机函数。 (3) 初始速度和加速度 每个粒子都有一个随机产生的初始速度和加速度,粒子的初始速度和加速度是实现动态火焰必不可少的因素。 InitialSpeed=MeanSpeed+Rand()×VarSpeed (4) InitialAcceleration=MeanAcceleration+Rand()×VarAccelerati

文档评论(0)

beoes + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档