使用流体形状着色器来为粒子着色
Maya 会创建一个流体容器(fluidShape 节点)。容器将显示在场景中,但仅在粒子上渲染。
创建“粒子采样器”(Particle Sampler)实用程序 (particleSamplerInfo),并连接所需每粒子属性(如 normalizedAge)到要控制 fluidShape 上的任意“着色”(Shading)”属性中。(按住 Shift 键并使用鼠标中键将 particleSamplerInfo 节点拖动到 fluidShape 节点上,并使用“连接编辑器”(Connection Editor))。
可以连接到 fluidShape 节点显示在“属性编辑器”(Attribute Editor)的“着色”(Shading)、“照明”(Lighting)和“纹理”(Texture)部分的任何属性。“密度比例”(Density Scale)或“粘度”(Viscosity)等其他属性不会每像素求值,因此将不使用粒子“SamplerInfo”。
通过这种方式,可以每个粒子的纹理放置、颜色、不透明度等都不相同,同时基于粒子年龄来更改。
只需启用 fluidShape 节点上的“自身阴影”(Self Shadow),就可以使每个液体粒子有内部自身阴影。
如果希望粒子投射阴影到其他粒子上,则必须使用光线跟踪,并在 particleShape 上的隐藏属性中设定一个标志:
setAttr particleShape1.ignoreSelfShadowing 1
这将避免粒子在其自己的阴影触角中计算(当为流体启用“自身阴影”(Self Shadow)后,这将更加高效地计算)。
渲染时处于活动状态的“渲染统计信息”(Render Stats)是 particleShape 而不是 fluidShape 上的信息,因为 particleShape 用于定义几何体,而流体只能使用着色器。