Phoenix FD燃烧纸箱

在本教程中,我们演示如何与Phoenix FD一起使用thinkParticles。我们用thinkParticles设置了一个燃烧箱场景,使燃烧的纸箱瓦解了。Phoenix的火/烟源会拾取tP颗粒,并将这些纸箱碎片用作火/烟的源。我们还设置了逼真的燃烧效果的材料。经过一些进一步的调整,我们创建了燃烧盒。

规模对于任何模拟的行为都是至关重要的。仿真器的实际 大小( 单位单位 )对于仿真动力学很重要。大型模拟运动似乎更慢,而中小型模拟运动则非常活跃。创建模拟器时,必须检查“ 格”卷 展栏,其中显示了模拟器的真实范围。如果无法更改场景中模拟器的大小,则可以通过更改 “ 格”卷 展栏中的“ 场景比例”选项 来欺骗求解器以使其看起来像 缩放一样

Phoenix FD解算器不受您选择如何查看“显示单位比例”的影响-只是为了方便。

转到“ 自定义”->“单位设置” ,并将“显示单位比例”设置为“ 公制厘米”

此外,设置 系统单位 ,使得 1股 等于 1厘米

最终场景由图片上显示的以下元素组成:

  1. 共有十个预碎片
  2. 菲尼克斯FD火灾/烟雾源(PHXSource)thinkingParticles颗粒群在其发射极节点列表由菲尼克斯FD自动生成(拿起thinkingParticles节点时)。源处于“ 表面力”模式;
  3. 菲尼克斯FD火灾/烟雾模拟器与 格中,动力学,和呈现的推出一些调整;
  4. 两盏Omni灯。它们用于激活thinkParticles中的盒碎片。
  5. 一个的V-Ray物理相机轻微的调整最终渲染;
  6. 定向光 ;
  7. 的V-Ray顶灯 ;
  8. VRayPlane用作无限大地表面。
  9. 一个力;

这张照片显示了最终的场景特写。有两个动画的GeoSphere(以透视模式显示),用于使燃烧盒变形(通过其着色器中的V-Ray位移)。我们对两个球体的位置和大小进行了动画处理,以匹配燃烧区域的增长。在随后的步骤中,我们将这两个几何球体几何体添加到VRayDistance纹理中,并将该纹理用于盒子着色器的置换插槽中。

将“ 时间配置” >“ 动画长度”设置120,以便时间轴从0到120。

最终模拟为120帧长。在设置模拟器的动态和火/烟源时,可以将“ 动画长度”设置为75帧甚至更短,以加快迭代速度。

盒子几何准备


纸板燃烧时,纸张在燃烧过程中会分解成灰烬。因此,我们需要在几何图形中有足够的细节来制作逼真的灰烬。我们从非常简单的盒子几何开始,一个没有任何段的盒子。尺寸为70 X 111 X 37厘米。然后,将其转换为NURBS

由于您可以在可下载的场景文件中找到此盒子的几何形状,因此可以跳过这些步骤,从“
Burning_Boxes_max2015_Start.max
” 开始,并专注于Phoenix FD设置。


选中NURBS框后,转到“ 曲面近似”卷展栏中的“修改器”面板,并将“ 边”设置为2.0。然后单击高级参数并启用Delaunay选项。这会在盒子表面上产生随机边缘。Delaunay三角剖分拓扑也适用于布料或软体类型的模拟。?F 或飞纸片,We为打算在thinkingParticles BulletPhysics模拟软体。






重复几次我们在上一步中创建的框,然后将它们堆叠起来,如图所示。在此示例中,我们制作了十份。将它们重命名为Box001?Box010

thinkParticles动态集


由于本教程涉及的是使用Phoenix FD的thinkParticles,因此重点不在动态集的完成方式上。但是,以下是一些关键动态集的概述。

  • 通过Obj将 4个盒子的几何形状(Box001?004)纳入了thinkingParticles 。转粒子运算符。然后这些盒子被隐藏在场景中。
  • 然后,通过场景中的两个泛光灯(Omni001Omni002)激活这些盒子(通过片段操作符)。全向灯具有动画效果,可以控制部分盒子开始燃烧。
  • 然后,激活的片段分为两组:A 组B组
  • 然后,纸张碎片-A组分解为较小的碎片,称为SMALL_DEBRIS
  • 然后,较小的碎片将在场景中经受风力。风的湍流推动了较小的碎片并使其随机运动。
  • 我们在场景中仅包含四个框(前四个框),而不是全部十个。这是因为我们要节省缓存粒子的时间。对于场景中的所有框,thinkParticles缓存过程将需要更长的时间才能完成。

    全向灯的远衰减控制盒子开始分解的距离。您可以调整灯光的位置或更改其远衰减以自定义效果。这是一种标准做法,thinkingParticles将自动读取并使用光的衰减。



    thinkParticles UI的右侧,在MasterDynamic展开下,我们选中选项Groups as Objects。此选项将每个粒子组转换为几何体。我们将这些几何形状放入VRayDistance纹理中,以调整火的不透明度。

    启用“ 作为对象组” 选项会从粒子组生成许多几何图形,并阻止Phoenix FD流体模拟。确保将这些多余的对象放入“ 场景交互”中-排除Phoenix FD Simulator的列表,并执行后续步骤。

    缓存思想


    场景中有许多小片段,会大大降低视口的速度。因此,在运行任何模拟之前,最好先缓存粒子。去按名称选择,选择thinkingParticles节点(Thinking001在这种情况下)。

    在缓存粒子之前,不要移动时间滑块。thinkParticles更新视口将需要很长时间。将时间滑块保持在第0帧。


    随着thinkingParticles节点(Thinking001)选中,进入修改面板,然后按属性按钮。

    请注意,thinkingParticles节点绑定到spacewrap场景。风力使Small_Debris 粒子产生一些随机运动。


    右键单击Master Dynamics,然后选择Cache Record

    确保将箱子放入对象中。没有对任何粒子运算符应用任何材质。在着色器会话中,我们将使用带置换的VRay材质。当使用thinkParticles缓存记录时,tP 实际上会将VRay Displacement缓存到缓存序列中,这将使缓存过程慢得多。

    在开始缓存记录过程之前,请确保两个omn??i 指示灯都已打开。没有这两个指示灯,thinkParticles将不会启动将盒子转换成较小片段的激活。


    出现提示对话框,用于保存缓存。我们将缓存保存为* .tps文件格式。


    缓存生成完成后,Master Dynamic的左侧会出现一个绿色箭头


    现在,您可以自由移动时间滑块。视口可以更新得更快。

    在此示例中,Boxes对象以绿色显示;Group_B对象显示为洋红色;SMALL_DEBRIS对象以蓝色显示。


    一旦thinkParticles缓存过程完成,请关闭场景中的Omni001Omni002灯光,因为它们的功能纯粹是为了在thinkParticles内部激活粒子,而不是用于场景中的照明。


    再次,下面的步骤说明了如何在场景中创建灯光,摄像机,vrayplane以及如何准备预碎片化的盒子几何形状。所有这些都已在可下载的场景文件中设置,因此,您可以跳过这些步骤,从“
    Burning_Boxes_max2015_Start.max
    ” 开始,然后专注于Phoenix FD设置。

    灯光


    转到创建面板 > 灯光 > 标准,然后按Target Direct按钮。单击并拖动以在场景中创建直接光


    移动直接照明,直到获得所需的照明条件为止。此示例的确切转换值为:

    直射XYZ:[44cm,-146cm,336cm]
    直射目标XYZ:[-26cm,-42cm,-20cm]


    选择“ 直接照明”(Direct001)后,转到“修改器”面板,并将“ 乘数”减小为0.1


    转到创建面板>灯光> VRay,然后按VRayLight按钮。单击并拖动以创建VRay灯光并将其放置在场景中的任何位置。


    选中VRayLight后,转到“修改器”面板。将type设置为Dome,在插槽中放置一个VRayHDRI纹理。随意使用您选择的HDRI地图。将乘数减小到0.05。在“选项”卷展栏中,选中“ 不可见”选项。

    相机


    转到“ 创建面板”>“相机”>“ VRay”,单击“ VRayPhysicalCam”按钮,然后在场景中创建VRayCam

    摄像机的精确变换值为:

    相机XYZ:[438cm,-357cm,183cm]
    相机目标XYZ:[-27cm,-9cm,197cm]


    物理相机被设置为F值= 1.2,快门速度:500,ISO:100。在示例场景中,对摄像机进行了动画处理,以获得更有趣的摄像机构图。

    焦距为40毫米。

    V射线机


    转到创建面板>几何> VRay,然后按VRayPlane按钮。在场景中创建一个VRayPlane。V射线平面仅用于渲染,不会影响模拟。


    VRayPlane放置在场景中的任何位置。

    火/烟源


    转到“ 创建面板” >“ 助手” >“ PhoenixFD”,然后按PHXSource,然后在场景中创建一个“ 火/烟”源(PHXSource001)


    PHXSource001在选定的改性剂面板,按添加在按钮PHXSource和选择thinkingParticles节点(Thinking001,在场景中白色箭头指出)。


    Phoenix FD会自动生成场景中的粒子集列表。拾取Thinking001粒子Group_A,Group_B和SMALL_DEBRIS,然后按OK。这些是我们要发射流体的粒子组。


    将“ 发射模式”设置 为“ 表面力”,并将“ 传出速度”,“温度”和“ 烟雾量” 保留为 默认值。


    PHXSource的底部,“ Prt形状”设置为“ 使用粒子形状”。这意味着Phoenix FD可以从thinkParticles中读取形状数据。

    仿真 格


    转到“ 创建面板” /“ PhoenixFD”,按“ FireSmokeSim”按钮,然后单击并将“ 火/烟模拟器”拖动 到场景中。


    如示例中所示设置 格的音量。 格显示为紫色。将其 x,y,z 分别设置为 48、157、79,将“ 场景比例”设置 1.0,并将“像 元大小”设置 1.0 cm。启用 自适应 格(基于Smoke)并将Extra Margin 设置 为 5, 这样 格将能够扩展并适应不断增长的烟雾。另外,启用“ 最大扩展” 选项并按如下所示设置值(参数以白色圈出,在视口中 格为红色)。 自适应 格可以让你节省内存和仿真时间作为模拟 格不是在一开始并设置其最大程度的扩张逐步显现。

    模拟器在场景中的确切位置[44 -41,96]


    将“ 动态”卷展栏中的所有参数保留为默认值。


    在“ 场景交互”卷展栏中,添加BOXES,FRAG,GeoSphere001-distance-L,GeoSphere001-distance-R,Group_A,Group_B,SC,SMALL_DEBRISWind001。这样,它们将不会影响或阻止流体模拟。


    现在将这些几何形状和作用力添加到“ 排除列表”中


    在“ 预览”卷展栏中,启用“ GPU Preivew”选项,以便我们可以将烟熏阴影直接预览到视口中。


    因为框的分解要到第12帧才开始,所以禁用“ 开始帧”和“ 停止帧时间轴”并将其分别设置为1275。这样可以节省一些模拟时间。按开始按钮开始仿真。

    尽管总动画为120帧,但我们仅进行仿真直到第75帧才能获得更快的迭代。


    模拟完成后,您可以制作预览动画。这是我们的第一个结果。如您所见,火中没有太多细节,烟似乎太浓了。让我们看看如何纠正它。



    转到“ / 烟模拟器” >“ 渲染”卷展栏,单击“ 体积选项”。调整曲线,如图所示。



    或者,您可以简单地从*加载渲染预设。示例场景中提供的tpr文件。



    渲染图像。烟雾似乎太浓,所以火应该更明亮。

    如果按照以下步骤使用提供的项目文件,请确保已禁用用于thinkingParticles模拟的两个Omni灯(Omni0001和Omni0002),以免对场景照明有所帮助。



    射击乘数提高到10.0。简单烟雾不透明度降低到0.05。



    再次渲染。现在,火势看起来更明亮,烟气已经足够。



    养护方法更改为直接平滑 ; 物料转移到Backtrace每帧步数增加到3。使用这些设置,您将获得看起来更好的小规模火灾。



    创建预览动画。每帧步数越高,射击越平滑。而直接平滑养护方法为我们提供了更好看火。



    出于美学目的,我们希望我们的射击动画变慢。让我们将Fire / Smoke Simulator的时间标度减小到0.7

    声明:本站部分文章内容及图片转载于互联 、内容不代表本站观点,如有内容涉及侵权,请您立即联系本站处理,非常感谢!

    (0)
    上一篇 2019年12月6日
    下一篇 2019年12月6日

    相关推荐