目录
Understanding Pyro Bake Volume
Using Pyro Bake Volume with the Pyro Shader
Setting up scattering
Understanding the Pyro Shader
Smoke and Emission
Emission Masking
Scatter, Fire, and Secondary Fire
Pyro Shader vs Pyro Shader - Classic
Rendering volumetric smokeless flames
Pyro shader控制烟火爆炸的渲染外观,提供了对所有相关属性的访问,且可控制渲染过程的各个方面;
Understanding Pyro Bake Volume
Pyro Bake Volume节点,可对视口中pyro外观控制,且自动赋材质,以使渲染结果和视口显示最佳匹配;与Pyro shader类似的界面;当开启scatter,会烘焙出被Pyro shader使用的scatter体积,以在爆炸内部近似光散射外观;
Using Pyro Bake Volume with the Pyro Shader
Pyro Bake Volume包含Pyro shader,会自动赋加,且引用Pyro Bake Volume的参数;尽管Pyro shader的大多数功能,在Pyro Bake Volume上可用,但shader上还有一些额外的参数在视口中不可用;要查看这些参数的效果,需渲染;
Pyro shader额外控制:
- Use Control Volume,clamp、remap、或scale(通过其他体积如temperature);
- 设置Smoke Brightness;
- 设置Scattering Phase;
Setting up scattering
- 开启Scatter->Enable Scatter;
- 关闭Enable Mask,以显示无mask的完整scatter范围;
- 知悉temperature的最大值,以调整Source Range;
- 调整scatter的强度Scale,Hot Core Scale;
- 基于模拟尺寸调整模糊量,开启Use Blur Steps;
- 细化上述参数的同时,测试开始、中间、结束帧;
- 开启Enable Mask,设置Mask Center、Mask Width参数;另外,可断开材质引用调整shader参数;
注,Pyro Solver可输出最大/小值(Export->Compute Min/Max Values)
Understanding the Pyro Shader
Pyro Solver用于创建真实的烟雾、火、爆炸或程序生成体积渲染;
Smoke and Emission
此两个组件构成最终的体积渲染,一些渲染(如烟囱烟雾、尘埃云和其他常规烟雾元素)仅需作为smoke着色shade;Smoke主要受密度和颜色控制,Emission光(由火发射的)的整体强度和颜色;
每个组件都依赖于一组volume来实现,density通常绑定于Smoke组件,可使用3个Emission元素(scatter,fire,secondary fire);
scatter(由Pyro Bake Volume SOP生成),可具有内部散射效果;尽管这种散射近似于真实行为,但于使用体积光和大量体积反弹相比,此方法渲染成本更低,且对外观有更大的艺术控制;
fire、secondary fire提供了一组更传统的控制(Pyro Shader - Classic),特别这些Emission元素需要intensity、color场,以管理发射光的强度和颜色;
Emission Masking
Pyro shader可使用其他场对scatter和fire进行遮罩,默认遮罩场为density,其效果是在更高density处降低emission;Masking对渲染爆炸特别有用,会引入细节;
Scatter, Fire, and Secondary Fire
为最终渲染,此三个emission组件可能被合并在一起,但用于不同目的;
- Scatter主要用于模拟爆炸内部光散射,依赖由Pyro Bake Volume生成的scatter体积;
- Fire用于对fire和flame着色,默认发射强度和颜色都使用temperature,也可使用masking;
- Secondary fire主要用于为拖尾添加火顶(由Pyro Trail Source生成);
Pyro Shader vs Pyro Shader - Classic
Pyro Shader | Pyro Shader - Classic |
三个emission元素:scatter,fire,secondary fire | 一个emission元素 |
scatter,fire可被其他场遮罩,能对爆炸添加细节 | 可添加noise,需rest场 |
内部散射近似(Pyro Bake Volume SOP),渲染更加廉价 | 内部散射通过体积光和大量体积反弹强制实现 |
Rendering volumetric smokeless flames
如有被命名为density的体积,在渲染时mantra会将其与之相交;对无烟pyro模拟,此体积的所有值为0;mantra假定光线不会击中任何可见物,从而渲染除烟雾以外的所有东西;
可从渲染几何体中移除空密度体积,强制mantra与emission场相交,以完全无烟渲染;
或者,使用Flame Density参数(Pyro Post Process),在任何非零emission处设置为指定最小值;