当前您所在的位置:首页>新闻中心>公司新闻>

TurbulenceFD:基于体素的气体流体动力学(二)

发布时间:2020/11/04 浏览量:565

TurbulenceFD

 

自适应容器

TurbulenceFD不断地尝试最小化需要处理的卷,以节省内存和时间。对速度场进行分析,以确保只有体积的那些部分将被剪裁,而不会影响后续帧中的流。如有必要,可以控制每个流体通道的剪裁灵敏度。

 

发射器

发射器对于流体模拟就像笔刷对于绘制一样。如果一个物体被点燃,它会放出热量和火焰。TurbulenceFD允许使用任何几何对象或粒子系统发射到流体通道中。这将为发射器的形状和动画提供最终的自由。在TurbulenceFD中使用发射器就像为绘制火源、烟雾源等的笔刷笔划设置动画一样。流体模拟将获取动画发射并从中创建物理上合理的流。

 

碰撞对象

在许多场景中,让流体流与实体对象交互非常有用。从简单的实心地板到穿越火灾和烟雾的车辆,再到着火的动画角色。不仅有必要将模拟整合到一个环境中,还可以在物体的尾迹处产生优美自然的湍流。碰撞物体可以搅动流体,使其向一侧摆动或充当障碍物。TurbulenceFD还支持具有各种复杂动画的碰撞对象,包括MDD导入和刚体动力学控制的对象。

 

 

着色曲线编辑器

体素着色的核心是函数曲线(f曲线),它将温度和密度等值重新映射到用于不透明度和颜色的强度值。TurbulenceFD具有一个f曲线编辑器,专门为基于体素的流体着色设计。它允许准确和直观的控制,使它非常类似于许多艺术家已经熟悉的色彩校正工作流程。由于f曲线在渲染过程中要进行数十亿次的计算,因此针对TurbulenceFD设计了一种特殊类型的样条曲线,这种曲线对于体素渲染特别有效。

 

湍流映射

向流体速度场中添加程序噪声是获得看起来更湍流和更有趣的卷曲流的一种方法。这些控件的工作方式非常类似于纹理工具中常见的程序噪波着色器。然而,在整个体积上均匀地加入湍流,会激起爆炸的核心,就像远离剧烈反应的部分一样。这没什么意义。因此TurbulenceFD允许您使用一个流体通道和一个简单的映射曲线来控制向流中添加卷曲的确切位置。这样,湍流只能添加到某些区域,例如爆炸的核心或火焰的高温部分。

 

 

视口预览

基于OpenGL的预览可以实时详细查看每个流体通道。预览中支持多种着色模式。这里有一个分析模式,可以详细查看模拟的原始输出。还有一些着色模式,可以在调整每个着色器的设置时提供实时反馈。除了全三维预览模式外,还可以显示体素栅格的二维切片,定向并定位在体积中的任何位置。这可以看作是预览模式的放大镜,与几何对象的线框视图相当。

 

体素网格压缩

为了帮助处理大量的模拟数据,TurbulenceFD的特点是无损数据压缩,这是专门为流体数据设计的。在实践中,它通常将体素数据减少到大约60%

 

点火控制

TurbulenceFD中,控制火的点燃方式和火焰在传播的速度与用发射器绘制流体一样简单灵活。它可以基于任何流体通道,而不仅仅是温度。这避免了您必须做的平衡动作,如果温度也驱动了让热气上升的浮力。

 

上升-恢复

通常,在低或中等分辨率下进行模拟,以便快速迭代。然后,您只需以更高的分辨率重新模拟即可得到最终结果。但由于模拟的数值性质,这不仅可以增加高分辨率的细节,而且可以稍微改变大尺度的运动。向上分辨率是一种保持低分辨率或中等分辨率模拟的精确形状和运动的方法,并且只向其添加高分辨率细节。它也比在相同的高分辨率下运行完整的模拟要快。

 

 

子网格详图

使用渲染时间子网格细节TurbulenceFD进一步推动了向上恢复方法。无需在基础模拟上运行第二个过程,只需在渲染时将高分辨率细节添加到结果中。对于极端的设置,这不像恢复一样灵活,但也不需要额外的模拟过程或额外的缓存内存。

 

北京哲想软件有限公司