Pyro —— 简介

14 篇文章 0 订阅

目录

Differences between legacy and sparse pyro

Getting started with pyro using shelf tools

Sourcing

DOP simulation

SOP simulation

Post-Processing

Rendering

Simple FX shelf tools


        Pyro为Houdini的体积流体(volumetric fluid)模拟包;用于烟、火、爆炸,也可用于其他类似流体现象,如雾、雪崩;

注,与FLIP相反,Pyro不使用粒子来追踪流体,由于粒子对surface解析非常有用,因此Pyro不适合模拟液体;

Differences between legacy and sparse pyro

Legacy pyro works

        H18之前,使用fuel场燃烧,在高温区,fuel被点燃,形成瞬时的burn场以提供heat场,从而捕获烟雾的发射部分;最后,输出将由积累的heat和瞬时burn场产生;

Sparse pyro works

        新推荐的工作流,要求在SOP中生成瞬时burn场并作为源的一部分;此burn会被合并到flame和divergence场;此方法具有可预测和更多控制的优点;

Getting started with pyro using shelf tools

        Simple FX shelf工具架,生成pyro模拟(使用Pyro Solver SOP),提供快速友好的用户体验,并避免手动构建动力学网络;通常是更好的选择,因为更简单、更友好、不需要分离的动力学网络;

        Pyro FX shelf工具架,使用DOP pyro设置案例;

Sourcing

        Sourcing负责向模拟注入新的流体,建议使用光栅化点属性(Volume Rasterize Attributes)的方法来创建source volumes,可使用粒子模拟的结果来发射源;

Sourcing相关节点
Pyro Source将几何体转化为具有指定属性(如density、temperature)的点,可操作这些属性,以调整烟火特性;
Pyro Source Spread模拟点上的fuel燃烧及heat扩散;
Pyro Burst Source创建爆炸核心的源点,且塑造爆炸的外观;
Pyro Muzzle Flash(Pyro Burst Source)创建枪火源点,且塑造枪口闪光的外观;
Pyro Shockwave(Pyro Burst Source)创建爆炸冲击波源点,且塑造冲击波;
Pyro Scatter from Burst在爆炸核心创建点,用于生成拖尾,火花,各种粒子,及飞溅的刚体碎片;
Pyro Trail Path生成用作拖尾的曲线(为Pyro Trail Scource);
Pyro Trail Scource生成沿曲线运动的源点;
Pyro Source Pack从输入的volumes创建packed source,可合并多个packed source,可被实例化到pyro模拟中;
Pyro Spawn Sources创建spawn点,实例化源库的元素,可精确控制位置和时间;
Pyro Sources Instance从spawn点生成实例化源点;
Debris Source使用RBD Bullet Solver输出来生成源点,用于从破碎处发射烟雾;
Attribute Noise对点添加随机,以创建更有趣更真实的烟火效果;
Volume Rasterize Attributes从点和点属性生成volume,为Pyro Solver;

DOP simulation

        Pyro动力学模拟的基本构成为:object、sourcing、solver;Smoke Object(Sparse)创建所有必要的场,Volume Source负责导入源,最终Pyro Solver(Sparse)应用力及演算流体场;

DOP Simulation
Smoke Object控制精度和域,及可视化;
Volume Source导入volumes,并与object场合并(具有多种合并方式);
Volume Instance Source与Volume Source类似,合并volumes,但使用实例化点;
Pyro Solver基于Smoke Solver构建,添加火等控制;
Smoke Solver烟雾解算器,但没有flame;
DOP Import Fields将模拟结果导入的SOP,以输出和渲染;使用Pyro Bake Volume SOP创建和调整可视化数据;

SOP simulation

        Pyro模拟可完全在单个SOP中,避免切换;使用Pyro Solver SOP,pyro动力学网络的封装,可适用于大多数模拟;内置了Pyro Post-Process和Pyro Bake Volume,以确保可渲染;

Post-Processing

        处理解算完的volume,以节省空间是非常重要的;可使用此节点,来优化;Pyro Solver SOP节点的Quick Setups->Optimize Exports可降低90%大小;

Rendering

        最后是在视图或渲染中,尽可能获得最佳外观;须调整默认的颜色显示,默认是gamma2.2不足以显示和渲染pyro;使用ACES(Academy Color Encoding System);

Rendering
Volume Visualization调整volume的可视化;
Pyro Bake Volume调整volume以备渲染,视图结果非常接近于渲染;
Pyro Shader由渲染使用的shader,以生成产品级的质量;

Simple FX shelf tools

Pyro Muzzle Flash,创建枪火及额外的火星,非动力学模拟;

Simple Billowy Smoke,简单的上升烟雾设置(sparse pyro);

Simple GPU Ground Explosion,创建完全GPU模拟的爆炸(Minimal OpenCL Solve);尽可能快的模拟,可在模拟过程中实时操作参数(以快速反馈效果),会禁用某些功能;

Minimal OpenCL Solve

为了加速模拟,有以下局限:

  • 禁用模拟的缓存,无法返回查看;
  • 不支持Advection-Reflection
  • 仅执行dense模拟;
  • 禁用动态流体框;
  • 不可基于CFL Condition动态子步;
  • 发射源和碰撞体有更多的限制;须指定帧范围,解释器会循环整个输入源;碰撞体须转化为SDF(collision)和速度场(v);

以下可提高性能:

  • 避免使用Pyro Bake Volume节点;
  • 关闭Field Guides和Shape Guides;
  • 尽可能的循环源;
  • 如使用microsolvers,开启Use OpenCL

Simple GPU Torch,创建完全GPU模拟的火炬(Minimal OpenCL Solve);

Simple Fireball,创建上升扩大的爆炸火球(Sparse);

产品级文件:Fireball | SideFX

Simple Aerial Explosion,创建空中爆炸(Sparse);

产品级文件:Aerial Explosion | SideFX

Simple Ground Explosion,创建地面爆炸(Sparse);

产品级文件:Ground Explosion | SideFX

Simple Shockwave,创建地面爆炸(Sparse),并带有冲击波;

Simple Bonefire,创建篝火(Sparse);

Simple Spreading Fire,创建表面蔓延火(Sparse);

  • 13
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值