本发明专利技术提供一种基于热力学模型的固体燃烧过程模拟方法,包括了四个步骤:预计算阶段,用于处理模型表面的几何信息以及模型燃烧后的纹理颜色等细节变化;物体表面的火焰扩散计算阶段,主要根据当前的模型燃烧状态,按照热力学模型迭代计算出下一个时刻火焰在模型表面的燃烧范围;燃烧物体的形变计算阶段,根据火焰扩散范围和燃烧状态,结合模型表面的材质特点计算出模型的形变程度;真实感绘制阶段,根据虚拟场景中物体的燃烧状态,对火焰和模型进行真实感绘制。本发明专利技术可完全基于GPU来模拟燃烧过程中火焰在物体表面的扩散、物体因燃烧而发生形变的过程,并可对火焰自身进行逼真渲染,具有实时性好,物理真实感强的特点。
【技术实现步骤摘要】
本专利技术涉及ー种基于热力学模型的固体燃烧过程模拟方法。
技术介绍
八十年代起至今,针对火焰等不定形物体以及流体仿真的研究已经发展了 20多年。该领域的研究涉及牛顿动力学、连续介质力学、数值计算、微分集合以及计算机图形学等多个学术方向,在游戏娱乐、科学计算、仿真训练等方面具有很高的实用价值,也一直都是ー个非常具有挑战性的研究热点。近几年来,随着多核CPU、GPU并行处理技术的普及,基于物理的火焰建模与仿真技术得到了迅猛发展,成为计算机图形学领域新的研究热点,而借助于GPU并行加速计算,在特定范围和精度下的流体模拟已经基本可以满足实时交互的需要。基于物理的火焰模拟技术需要对三维空间中的流体力学方程进行求解,因而具有非常高的计算复杂度,目前仍然很难找到一种普适的方法来解决这ー问。同时,对于大規模的流体模拟而言,也很难对其实现实时逼真绘制;因为即使是采用GPU加速的较低精度流体模拟,其物理模型的解算也会占据GPU绝大部分的计算资源。因此,该类方法在游戏、实时模拟仿真等领域的应用并不多见,更多是采用粒子系统、高度简化的物理模型等逼近方法来对火焰进行实时模拟。此外,火焰和燃烧物体的交互效果模拟在游戏、战场仿真、影视特技、动画、广告等领域对提升场景的沉浸感有着重要的作用,具有广阔的应用前景和巨大的市场价值。然而,目前对火焰与其他物体的交互以及物体燃烧过程的仿真研究还面临诸多挑战,因为这些现象背后蕴含着更为复杂的物理机制,要实现令人信服的仿真效果,需要多学科交叉理论和软硬件结合的高效算法设计作为支撑。为了解决上述问题,本专利技术基于GPGPU(General_PurposeComputing on GraphicsProcessing Units)等技术提出了固体燃烧过程的模拟方法,该方法可有效模拟三维物体表面的火焰扩散、物体燃烧形变、着火物体视觉表现等效果。
技术实现思路
本专利技术解决的技术问题是克服了现有的火焰和固体燃烧仿真技术的不足,提供了ー种基于热力学模型的燃烧过程模拟方法。并通过使用基于GPU的数据结构和算法,满足了对三维物体燃烧过程进行实时模拟的需要。本专利技术采用的技术方案为ー种基于热力学模型的固体燃烧过程模拟方法,包括以下四个步骤步骤(I)、燃烧模拟预计算通过由Normal Map所描述的物体表面细节几何特征,对漫反射纹理进行预处理,计算出燃烧以后物体表面的漫反射纹理,井根据三维网格模型的几何结构,预计算后续仿真所需的三角面片面积;步骤(2)、物体表面的火焰扩散计算通过将热力学模型与三维网格模型表面的测地距离计算模型相结合,迭代计算火焰在三维网格模型表面的燃烧扩散状态,并将其以纹理形式储存到显存中,以便于GPU加速使用;步骤(3)、燃烧物体的形变计算根据步骤(2)中计算得到的火焰扩散状态,通过使用弹簧质点模型和描述燃烧形变的物理模型来计算三维网格模型的形变;弹簧质点模型用于计算形变时三维网格模型顶点间的相互作用力,基于可移动欧拉网格的烟雾模拟和燃烧形变模型则主要用于计算燃烧分解导致的形变作用力,计算结果以纹理形式存储到显存中;步骤(4)、火焰和燃烧物体的真实感绘制使用步骤(I)中预计算得到的漫反射纹理和步骤(2)、步骤(3)中得到的火焰扩散状态和形变状态对虚拟场景中的物体和火焰进行真实感绘制。 本专利技术的原理在于(I)通过计算多边形网格表面的測地距离,使用基于热量传播模型的方法来计算火焰在多边形模型表面的扩散状态。为了兼顾计算速度和燃烧过程可控性,本专利技术提出了基于燃烧状态纹理的数据组织方式。(2)为了模拟燃烧过程中固体因为燃烧分解而发生变形的现象,本专利技术通过使用弹簧质点模型,提出了一种通过模型表面燃料消耗状态来计算形变的力学模型。该方法通过使用火焰扩散模拟方法计算得到的燃烧状态来计算模型的形变,将整个计算被放到模型纹理空间上并行进行来控制计算量,同时使用基于多重深度纹理过滤的方法来剔除因为物体自相交导致的绘制错误。(3)为了对燃烧物体表面纹理颜色的变化进行视觉仿真,本专利技术通过使用Y粒子来轰击三维模型来迭代地计算粒子在模型表面的碰撞状态,并以此来模拟燃烧过程中漫反射纹理的颜色变化。本专利技术与现有技术相比的优点在于I、本专利技术提出的基于燃烧状态纹理的数据组织方式,一方面更加便于使用GPU来进行并行计算加速,另ー方面也可以提供ー种更直观的方式来对燃烧过程进行控制。2、对比已有的燃烧形变模拟方法,本专利技术提出的基于物理模型的燃烧形变方法,可直接应用在三维网格模型上,并且具有更高的计算效率优势。3、本专利技术提出的基于Y粒子的纹理预处理方法,允许首先使用不同的粒子数量计算出多个燃烧细节纹理,然后再根据燃烧的不同阶段进行分段插值,这可进ー步提高燃烧过程中的细节效果表现。附图说明图I为基于热力学模型的固体燃烧过程方法的处理流程图;图2为燃烧漫反射纹理生成过程中粒子的运动传播过程示意图;图3为燃烧漫反射纹理的迭代处理流程;图4为燃烧状态纹理的示意图;图5为燃烧状态的扩散模拟结果示意图;图6为燃烧分解形变的计算方法示意图;图7为最终模拟結果。具体实施例方式图I给出了基于热力学模型的固体燃烧过程的总体处理流程,下面结合其他附图及具体实施方式进ー步说明本专利技术。本专利技术提供ー种基于热力学模型的固体燃烧过程模拟方法,主要步骤介绍如下I、燃烧漫反射纹理预计算方法该方法结合预计算和过程纹理(Procedural Texture)来模拟火焰燃烧时物体表面的特殊效果。在固体燃烧时,模型表面的细小起伏会导致表面颜色发生一些细节上的变化,如裂痕、因起伏而导致的顔色差异等等。以木炭为例,木炭的燃烧过程具有复杂、丰富的细节变化。木炭正在燃烧的部分会变成红色,完全燃烧的部分会变成灰白色,没有燃烧的部分会是纯黑色;而且木炭本身会有很多裂縫,在燃烧过程中这些裂缝也有可能会发生变化。本专利技术主要使用燃烧细节纹理和燃烧高光纹理来对这种现象进行视觉仿真。 燃烧细节纹理通过仿真计算得到,在绘制的时候,根据模型表面的燃烧状态将燃烧细节纹理和漫反射纹理进行混合可得到最終的顔色=C ■ Tlktt^ +C; ,, 。其中的¢.表示燃料消耗的比例,Tlliff■表示未燃烧时的漫反射顔色、Tllrtail表示燃烧细节顔色得到的颜色。在本专利技术的预计算阶段,会过使用Y粒子来对模型纹理进行预处理,并算出燃烧过程中模型表面不同位置在燃烧细节上的差异,进而得到燃烧导致的细节颜色变化。而Tll6tail的计算则主要来自于预计算結果。预计算的整体思路是通过Bump Map/Normal Map来表示模型表面的细节起伏,并构造出模型表面的细节网格。具体步骤为将整个漫反射纹理看作ー个平面,从Bump Map/Normal Map中读取模型表面的起伏信息,构造出ー个只具有模型细节几何信息的表面;然后从半球空间内发射粒子,并模拟粒子在这个细节表面上的运动传播过程,每ー个粒子对其落脚的地方都产生一定的灼烧效果;最终将所有粒子对灼烧效果的贡献保存到一张细节纹理中,即燃烧细节纹理。预处理阶段是ー个循环迭代的计算成果,每一次迭代都会发射出数千个粒子,并跟踪这些粒子在场景中的传播。粒子在和物体表面发生碰撞后,可能会被反射、反弹、甚至被吸收,具体会进入哪种状态取决于粒子当时的运动状态(速度、位置等)、碰撞表面的材质本文档来自技高网...
【技术保护点】
一种基于热力学模型的固体燃烧过程模拟方法,其特征在于包括以下四个步骤:步骤(1)、燃烧模拟预计算:通过由Normal?Map所描述的物体表面细节几何特征,对漫反射纹理进行预处理,计算出燃烧以后物体表面的漫反射纹理,并根据三维网格模型的几何结构,预计算后续仿真所需的三角面片面积的;步骤(2)、物体表面的火焰扩散计算:通过将热力学模型与三维网格模型表面的测地距离计算模型相结合,迭代计算火焰在三维网格模型表面的燃烧扩散状态,并将其以纹理形式储存到显存中,以便于GPU加速计算使用;步骤(3)、燃烧物体的形变计算:根据步骤(2)中计算得到的火焰扩散状态,通过使用弹簧质点模型和描述燃烧形变的物理模型来计算三维网格模型的形变;弹簧质点模型用于计算形变时三维网格模型顶点间的相互作用力,基于可移动欧拉网格的烟雾模拟和燃烧形变模型则主要用于计算燃烧分解导致的形变作用力,计算结果以纹理形式存储到显存中;步骤(4)、火焰和燃烧物体的真实感绘制:使用步骤(1)中预计算得到的漫反射纹理和步骤(2)、步骤(3)中得到的火焰扩散状态和形变状态对虚拟场景中的物体和火焰进行真实感绘制。
【技术特征摘要】
【专利技术属性】
技术研发人员:李帅,冉蛟,郝爱民,杨丽鹏,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。