对移动碰撞体的精确速度,通常对模拟是非常重要的,尤其是FLIP;不正常的碰撞速度,可能会缺乏动态的飞溅或泄漏;
SOP流体通过FLIP Collide SOP节点来处理碰撞和交互;碰撞对象可以是静态达到,移动的,变形的;可在该节点的第四个端口连入几何体或体积;
解算器的边界条件对碰撞无关,仅与域(FLIP Container)交互被计算;
Volume and surface collision
在FLIP Collide节点有两种主要碰撞模式:Volume Collide、Surface Collide,默认都是开启的;
- Volume Collide,创建volume,质量和精度由Particle Separation与Grid Scale参数(FLIP Collide)控制;适合3D和volume;
- Surface Collide,表示输入的mesh,对volume不可用;如开启,需使用解算器Particle模式;适合2D,如grid;避免粒子泄漏;
Leaking collision objects
泄漏通常发生在对象未完全封闭的情况下,无法创建合适的碰撞体;非常小的对象也容易泄漏;可缩放对象,或封闭破洞;
对于非常薄的碰撞对象,可能需要创建代理碰撞;
通常泄漏源是非常快递粒子或物体,尽管碰撞体足够厚,解释器子步(Global Substeps)可能不足;子步对解算影响非常大,测试时仅增加1;如碰撞对象是移动或变形的,可增加FLIP Collide/Velocity Substep参数(通常与Global Substeps匹配);
保持碰撞体拓扑结构不变,使用Time Blend节点查看几何体子步是否合适插值;
Clipping collision objects
对真实的流体对象交互,在碰撞体内部的粒子将被移除;要求碰撞对象是封闭且实体的;Surface Collide将不起作用;
- 封闭破洞;
- 挤出已获得实体;
- 开启Volume Collide;
- 设置Move Outside Collision;
Solver collision settings
解算器的Collision面板会处理许多碰撞和泄漏问题;
- None,不碰撞检测;
- Move Outside Collision,最快速的处理方法,最平滑的飞溅,但不精确;与体积碰撞仅有的方法;
- Particle,是Surface Collide必须的;
Moving and deforming objects
当开启FLIP Collide的Compute Velocity参数,将会考虑移动或变形对象的速度;