Blender插件(Filp Fluid):创建一个 FLIP 流体仿真

推荐:将NSDT场景编辑器加入你的3D工具链
创建您的第一个 FLIP 流体仿真
让我们开始吧!在本指南中,我们将主要关注与Blender用户界面的以下区域的交互:
- 3D 视口 - 用于添加、选择和操作场景对象。
物理场属性面板 - 用于与 FLIP 流体插件仿真设置进行交互。

第 1 步。启动一个新的混合文件
首先,我们将从打开一个新的 Blend 文件开始。我们将此文件另存为 my_first_simulation.blend。保存 Blend 文件不是必需的,但可以确保如果我们不小心关闭了 .blend 文件,我们不会丢失任何模拟进度。
第 2 步。创建翻转流体域对象
接下来,我们将创建模拟域对象。模拟域是将模拟流体的体积。流体不能存在于域对象之外。域对象必须是长方体形状,并与 Blender x/y/z 轴对齐。
选择默认多维数据集
- 我们将使用此多维数据集对象作为我们的域。如果场景没有默认立方体,请创建一个立方体并选择它。
- 为了使我们的场景井井有条,让我们将此对象重命名为 Domain。

2、将此对象设置为翻转流体对象
- 在“物理属性”面板中,单击“翻转流体”按钮。这会将所选对象设置为翻转流体模拟对象。

将“翻转流体”对象类型设置为“域”
- 在“类型”下拉列表中,选择“_域__”。这会将对象激活为域对象。
- 物理面板现在将包含许多面板和设置来控制模拟。在本指南中,我们只需要关注其中的一小部分设置。

设置域大小和位置
- 现在,我们将域对象缩放到所需的大小。让我们将域缩放为两倍大,并移动域,使地板接触 Z 原点。
- 在这个例子中,我们使用了比例 = (x=2, y=2, z=2) 和位置 = (x=0, y=0, z=2)。在模拟器内部,默认情况下,每个Blender单元都被认为是1米宽。此示例中的域对象长度为 4 个 Blender 单元,因此模拟大小将长 4 米。

- 可以在“域> FLIP 流体模拟>网格信息”部分中查看模拟网格的确切物理尺寸和其他属性。有关模拟网格的详细信息和说明,请将鼠标悬停在工具提示的 ? 图标上,或访问域模拟网格文档。

现在我们已经完成了域对象的创建。
混合文件: my_first_simulation_step_2.混合(https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Official-Marketplaces-of-the-FLIP-Fluids-Addon#how-do-i-download-the-flip-fluids-addon-product-files)
第 4 步。创建翻转流体障碍物对象
接下来,我们将创建一个障碍物对象。障碍物充当流体与之交互的固体。在此示例中,我们的障碍物对象将是放置在域地板上偏离中心的球形圆顶。
创建半球对象
- 我们将首先创建一个新的 Blender Icosphere 对象,它将成为我们的障碍。我们希望这个对象相当平滑,因此我们将在添加 Ico 球体属性中将细分设置为 5。
- 我们将加倍比例,并将对象放置在更靠近域的底角之一的位置。我们将定位对象,以便只有一小部分球体戳穿域地板。这将是我们的穹顶。
- 在这个例子中,我们使用了比例 = (x=2, y=2, z=2) 和位置 = (x=0.5, y=0.5, z=-0.5)。
- 为了使我们的场景井井有条,让我们将此对象重命名为 Obstacle。

将对象设置为“翻转流体障碍物”对象
- 与我们创建流入的方式类似,我们将选择障碍物对象,然后单击翻转流体按钮。这一次,我们将类型设置为障碍,而不是将类型设置为流入。物理面板现在将包含用于配置障碍物对象的设置。我们将保持这些设置不变。

现在我们已经完成了障碍物对象的创建。
混合文件: my_first_simulation_step_4.混合
第5步。运行模拟
接下来,我们将运行我们的模拟!此过程称为烘焙。模拟器会将流体*烘焙_到动画网格序列中,这些网格将成为我们的流体表面。根据模拟的复杂程度和详细程度,烘烤时间可能从几分钟到几个小时不等。我们将在本指南中运行的大多数模拟都很简单,细节水平较低,因此这些模拟的烘焙过程不应超过几分钟。
设置帧范围
- 默认情况下,模拟器将烘焙在Blender时间轴中设置的帧范围。现在,我们将仅将其保留为本指南的默认值Start=1和End=250。

开始烘焙模拟
- 选择 Domain 对象以在物理面板中显示域设置。单击烘焙运算符开始烘焙模拟。

等待模拟完成烘焙
- 在等待模拟器完成烘焙的同时,让我们来看看并尝试一下 FLIP 流体插件的一些烘焙功能!
- 在烘焙模拟时,您可以播放/清理时间线以查看模拟的进度。

- 烘焙操作员将显示已完成的模拟百分比、处理的帧数以及模拟器完成的最新时间轴帧。

- 您可以随时停止/暂停模拟器。

并稍后恢复烘焙。您可以在恢复模拟之前更改大多数模拟设置

- 您甚至可以更改模拟设置并从较早的帧恢复模拟。有关更多详细信息,请参阅保存状态文档(https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Domain-Simulation-Settings#savestates)。

- 或者,如果要重新开始,可以使用 Reset 运算符清除模拟。该操作员将为您提供确认警告,一旦重置模拟,模拟将被永久删除。

- 烘焙后的仿真结果存储在称为缓存的外部目录中。展开“域> FLIP 流体缓存”面板以查看当前缓存位置和其他设置。有关更多详细信息,请参阅 FLIP 流体缓存文档(https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Domain-Cache-Settings)。
- 默认情况下,如果在运行模拟之前保存了 Blend 文件,则缓存目录将根据您的 Blend 文件名命名,并位于与 Blend 文件相同的位置。与Blender中的其他缓存系统类似,如果您移动Blend文件,则还需要移动缓存目录。或者,您也可以使用文件选择器图标设置特定的缓存目录位置或加载另一个缓存。

在模拟运行时或完成后,您可以通过展开“域> FLIP 流体统计信息”面板来查看有关整个缓存或特定帧的模拟统计信息。有关更多详细信息,请参阅 FLIP 流体统计文档(https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Domain-Stats-Settings)。

祝贺!您刚刚运行了第一个翻转流体模拟!它并不完美,看起来也不太令人印象深刻,但这只是一个简单的例子和一个良好的开端。在下一节中,我们将研究如何修改和改进简单的模拟场景以创建不同类型的液体。
