Maya 硬件渲染粒子与软件渲染元素结合
http://tech.ddvip.com 2006年08月08日 社区交流
本文详细介绍Maya 硬件渲染粒子与软件渲染元素结合
LEGO 投射方面的“领头羊”合成器 ----Gary Jackamuk 需要一个粒子路径,这样就可以调整颜色,以和 CG 背景元素的阴影及灯光匹配。通常,当软件为合成渲染一个元素时候,你可以输出一个单独的 shadow pass ,它可以被合成器单独调整。 Gray 要给粒子上多少色,这要看粒子获得的阴影数量。
我们可以提供一个给粒子上色和阴影的解决办法,使它效果更好。

在 Add Dynamic Attributes 栏里点击 General 按钮,到 Particle 栏。
1 、创建 birthWorldPosition 属性
2 、添加下面东西到 runtime 表达式:
//rgbPP
//
vector $pos=position;
vector $birthPos=birthWorldPosition;
float $hue=(240+120*smoothstep(-1,1, $pos.Y-$birthPos.y))/360;
rgbPP=hsr_to_rgb(<<$hue,1.0,intensityPP>>);
为了控制粒子颜色,我们规格化粒子所在位置和粒子产生位置之间的差数,该规格发生在 -1 和 1 之间,这意味着如果一个粒子比它产生的位置低于 1 个单位,我们就会得到一个 0 的值;如果高于 1 个单位,则会得到一个 1 的值,然后,这些值要被调整为沿着色轮 ----100% 蓝色和 100% 红色之间,或者 240 和 360 之间。参考颜色选择窗口,找到其它颜色的色彩值。
粒子物体的 rgbPP 属性读取 rgb 值,而不是 hsv 值,所以,你需要利用 hsv_to_rgb 函数将 hsv 转换成 rgb 。该功能视一个矢量为输入,那也是为什么我们用 <<>> 来为色彩、饱和度、密度压缩这些值的原因。色彩值最好为 0-1 ,而不是 0-360 ,所以我们要用 360 来除 hue 值。饱和度仍为 1.0 ,但是,你有个机会:通过修改饱和度(在你决定的值的基础上),添加路径附加消息到合成器上,最后,粒子的亮度都被考进 hsv 的 value 中。
责编:豆豆技术应用