Houdini基础学习-DOP与POP

发布时间:2026/8/15 11:49:23
Houdini基础学习-DOP与POP Solver模拟的核心是Solver提供了缓存当前帧供下一帧使用的功能因此可以通过上一帧的结果和驱动逻辑去模拟出下一帧的结果。核心驱动逻辑帧结果缓存内外部数据通信SubStep。1正常情况下外部应该输入的是初始状态和场景信息并将核心驱动逻辑放到Solver内执行。如果驱动逻辑在外部作用只输入结果那么Solver内会一直重复输入的初始状态因为上一帧一直是初始状态。可通过StaticObject的Use Deform Geometry去导入但只能用于动态物理碰撞。2可以通过Merge当前帧和上一帧的结果来在当前帧缓存前面每一帧的状态从而记录下了运动轨迹。3部分逻辑应该放在Solver之后作为后处理因为之前的状态会被缓存因此如果没有剔除逻辑那么缓存好的之前状态可能会被重复使用而实际上并不需要从而造成效果错误。比如脚印每一次的脚印都被记录了下来如果将Smooth逻辑放在Solver内那么之前踩下的脚印会一直被Smooth因此应该放在Solver之后去作为后处理。4SubStep的重要性很多效果不够流程圆润都可以尝试提高SubStep去尝试解决。Popnet类似于Solver负责控制整个系统的各种状态。1输出默认会输出所有可以手动选择只导出粒子。且popnet节点哪怕多选了也只有一个输出口因此本质上还是不能拆开输出。因此需要与dop import配合从而实现选择性导出(入)。2模拟PopObject粒子状态容器导出也是PopObject部分对应粒子 初始模拟状态比如Physical物理属性PopSource1粒子生成来源与方式2粒子的爆发式生成与持续性生成以及生成速率、新生成粒子标志、Life等设置。Jitter与Interpolate防止粒子速度过快导致断节在中途插值式生成一些Age不从0开始的粒子。3粒子属性继承设置尤其是速度。PopSolverSleeping本质是设置istopped。与active的区别Sleep是暂时休眠还有唤醒可能但是active0几乎是确认停止不用了Physical与CollisionParticle1PopObject_Physical2PopSolver_CollisionGlobal Hit 和 Response3Pop Collision DetectSpecial Hit 和 Response本质是对粒子Collision相关属性进行设置得在Merge_Collision前设置好一般在PopSolver前。StaticObject0碰撞体预处理如何创建高效的近似碰撞体ConvexVDBHeightFiled_Project等近似方式。1导入SOP Path与opinputpath注不是冒号‘’而是波浪号的那个反引号·~。OBJ Path与外部使用Nullout去作为统一最终输出接口防止增删逻辑后要修改Path。导入设置Use Defoming Geometry运动物体的动态碰撞。2Physical3Collision_RBD Solver一般情况下物体都用VolumeSDF但也可以使用Surface更精确但是慢很多。Collision_RBD Solver_Volume默认情况下是接收Polygon然后自己计算SDF但也可以直接接收SDF此时Divisions就没效了。此外还有HeightField等额外方式去创建碰撞体。Collision_RBD Solver_SurfaceMerge_CollisionForcesPop Gravity、Wind、Noise、Axis、Curve、Drag、Attract、Fan风扇锥形力注很多Force也有单独的功能节点加上Pop前缀才是该在Dop内使用的。Pop group常见用法是体积遮罩。Suction吸力。Orbit螺旋缠绕力。Particle AttribuesagelifenageNormalized Ageidpv...SOP SolverTime相关节点ReTime播放速率自动实现帧间平滑采样插值。TimeShift定帧采样。TimeBlend定帧混合。PBDPosition Based Dynamics常规粒子主要通过力和速度推进位置且粒子之间没有强约束关系而PBD 先通过Force和V预测位置再通过约束网络修正位置并由位置修正反馈到速度。Substeps 控制时间离散精度Constraint Iterations 控制约束求解精度在强耦合的PBD系统中粒子之间的关联性和影响力都很强且两者设置不够都会导致结果不准确并且之后无法修补错误会被一直积累从而直接影响模拟结果的正确与错误。效果循环粒子信息P、v、id、pscale、mass、rest 等场景碰撞信息Collisider、Physical、Respnse等动态逻辑Grain、Force、Merge_Collision上一帧结果——Force、V、P——约束——场景碰撞 约束——SolverCache常见效果套路1粒子运动逻辑驱动 或者 速度场2Trail Wire / Sweep轨迹、生长效果3Copy To Point存在实体可继续编辑 与 Instance几何实例化渲染只存在引用关系与 PopSprite把粒子配置成面向摄像机的精灵显示4Pop Replicated二次发射比如烟花爆炸水滴溅射等。本质上还是个粒子发射器只是基于输入的Point位置等信息去拷贝发射并可指定发射形状。5PBD - GrainGrainSource与PopGrain1干沙子Fraction2湿沙子Clumping