设置 Bifröst 液体和泡沫模拟的初始状态

某些模拟需要预备运行才会显示良好。例如,对于顺着岩石向下层叠到池中的水,可能需要很多帧才会使水达到岩石底部并使泡沫创建漩涡图案。在这些情况下,可以设置初始状态,即:可以根据需要为尽可能多的帧运行模拟,然后将当前帧设置为后续运行的模拟的新起点。这样,就不需要在每次调整模拟设置时重新运行。

一旦设置初始状态,即可更改模拟的任何方面,它将使用新设置从该起点继续。您甚至可以更改“主体素大小”(Master Voxel Size),所有值将以新分辨率重采样。具体来说,您可以低分辨率播放模拟,从而快速实现所需的整体流形状,然后设置初始状态,最后减小“主体素大小”(Master Voxel Size),以更高的分辨率从这里开始继续播放。

设置初始状态

若要设置初始状态或将其更改为后续帧(如果已设置),请执行以下操作:

  1. 根据需要设置 Bifröst 液体模拟(带或不带泡沫)。
  2. 播放模拟,直至达到要用作起点的帧。
  3. 选择 bifrostLiquid 节点。
  4. 选择 “Bifrost > 设置初始状态”(Bifrost > Set Initial State)

    默认情况下,液体(和泡沫(如有))的当前状态基于场景和对象名称在当前项目的缓存目录的子文件夹中保存为 .bif 文件。此外,在 bifrostLiquidPropertiesbifrostFoamProperties 节点的“缓存”(Caching)组中,“初始状态缓存”(Initial State Cache)属性将自动设置为相应值。

  5. 如果模拟不包含发射器、碰撞对象、场和导向等已设置动画的对象,则表示操作已完成。
    但如果存在已设置动画的对象,则动画和模拟不再相互匹配。在第一帧上,模拟现在对应于已设置为初始状态的帧,但对象的动画保持不变。重新同步这些对象的最佳方式如下:
    1. bifrostLiquidContainer 属性中,将“开始帧”(Start Frame)设置为用于初始状态的帧。
    2. 此外,将场景的动画或播放范围的起点设置为同一帧。详细信息请参见范围滑块
注: 如果为仅限液体的模拟设置初始状态,然后向其添加泡沫,则可能需要几帧才能完全形成泡沫。如果之后设置新的初始状态,则泡沫和液体都使用新帧作为其初始状态 - 这可确保泡沫的位置和速度始终匹配液体。

清除初始状态

若要停止使用初始状态,请执行以下操作:

  1. 选择 bifrostLiquid 节点。
  2. 选择“Bifrost > 清除初始状态”(Bifrost > Clear Initial State)
  3. 单击“确认”(Confirm)。如果当前为液体和泡沫设置初始状态,则各自有单独的确认对话框。例如,可以对液体单击“否”(No)以保持初始状态,然后对泡沫单击“是”(Yes)以移除初始状态。
  4. 如有必要,请将“bifrostLiquidContainer”“开始帧”(Start Frame)以及场景的动画或播放范围的起点更改回其原始值。

下次播放时,模拟将从头开始重新计算。