[发明专利]一种基于粒子系统的三维火焰动态模拟方法在审
申请号: | 201910614193.2 | 申请日: | 2019-07-09 |
公开(公告)号: | CN110310348A | 公开(公告)日: | 2019-10-08 |
发明(设计)人: | 冉小军 | 申请(专利权)人: | 四川三秦电气有限责任公司 |
主分类号: | G06T13/20 | 分类号: | G06T13/20 |
代理公司: | 成都九鼎天元知识产权代理有限公司 51214 | 代理人: | 邓世燕 |
地址: | 610100 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 粒子系统 火焰动态 三维 模拟火焰 模拟三维 实时动画 纹理映射 纹理渲染 运动规律 粒子 渲染 | ||
1.一种基于粒子系统的三维火焰动态模拟方法,其特征在于,包括以下步骤:
S1.通过粒子系统模拟三维火焰;
S2.对系统中的火焰粒子进行纹理渲染;
S3.模拟火势蔓延。
2.根据权利要求1所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,所述步骤S1包括以下步骤:
S11.生成火焰粒子;
S12.模拟火焰粒子的运动变化。
3.根据权利要求2所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,在所述步骤S11中,采用正四面体作为火焰基本粒子的几何模型。
4.根据权利要求2所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,在所述步骤S12中,将火焰活动时的运动场简化为重力场、风力场和热浮力场;
所述重力场中的力沿Y轴负方向;
所述风力场中的力通过随机函数设置;
所述热浮力场中的力沿Y轴正方向,且所述热浮力场中的力的大小与粒子到燃点的距离的平方呈正比。
5.根据权利要求1所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,所述步骤S2包括以下步骤:
S21.描述纹理片的运动变化特征;
S22.选择纹理片;
S23.确定纹理片的旋转角度。
6.根据权利要求5所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,所述步骤S21中,所述纹理片的运动变化特征为:
TextureP.y+=STEP
TextureP.z+=rand()
其中,为采用的类二次指数曲线函数,C1是整体调节常数;rand()用来产生随机扰动;STEP为变化步长;TextureP为第P号纹理图片;x、y、z为纹理片的中心在三维直角坐标系中的坐标值。
7.根据权利要求6所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,通过控制TextureP.size的值控制纹理片的大小:
当TextureP.life∈(0,b)时候,纹理片不断增大;
当TextureP.life∈(b,∞)时候,纹理片不断减小;
TextureP.life为第P号纹理图片的生命期;
b为燃烧的中心。
8.根据权利要求7所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,在所述步骤S23中,通过以下赋值语句实现纹理片旋转角度的确定:
TextureP.rot_x=Rotated.rot_x
TextureP.rot_y=Rotated.rot_y
TextureP.rot_z=Rotated.rot_z
其中Rotated.rot_x为三维场景视角下,x轴的视线偏移角;
Rotated.rot_y为三维场景视角下,y轴的视线偏移角;
Rotated.rot_z为三维场景视角下,z轴的视线偏移角。
9.根据权利要求1所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,所述步骤S3中包括以下步骤:
S31.确定蔓延过程中的参数;
S32.粒子系统实现;
S33.坐标变换。
10.根据权利要求9所述的基于粒子系统的三维火焰动态模拟方法,其特征在于,在所述步骤S31中,所述蔓延过程中的参数包括火焰蔓延的速率、风速、所述风速的修正系数、坡度、所述坡度的修正系数以及火焰反应强度;
在所述步骤S33中,假设纹理图案定义在纹理空间中的一个正交坐标系(u,v)中,三维场景定义在景物空间的正交坐标系(x,y,z)中,三维场景在参数空间(θ,φ)中的表示是x(θ,φ),y(θ,φ),z(θ,φ),则从纹理空间到参数空间的映射关系为:
θ=f(u,v),φ=g(u,v)
从参数空间到纹理空间的逆映射是:
u=r(θ,φ),v=s(θ,φ)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川三秦电气有限责任公司,未经四川三秦电气有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910614193.2/1.html,转载请声明来源钻瓜专利网。