Maya硬件渲染粒子与软件渲染元素结合(7)

4/5/2006来源:Maya教程人气:7829

Maya硬件渲染粒子与软件渲染元素结合
VI.硬件渲染粒子

缓?

  在硬件渲染前隐藏粒子,如果没有隐藏,运动模糊就不会产生正确的结果,pickup帧就不会和原始帧匹配。

Alpha通道

  当sPRites透明值少于1时,由HardwareRenderBuffer生成的Alpha通道是不正确的。与彩色通道不同,考虑到当前粒子后的粒子颜色,Alpha通道会返回只显示在显示器上的最终粒子的值----这意味着,如果你有1000个粒子堆叠一起,每个粒子透明值为0.1,即使不能在三维视图里看穿粒子堆,cg/image/也将在图像最终Alpha通道里放上一个0.1的值。

  用Luminance作为Alpha通道会产生不正确的结果,用粒子的亮度,你会将粒子里的所有阴影挪开。不管较黑区域在哪里,较黑区域都会比较亮区域更加透明。最终的图像看起来是平的,尘土很少纹理。

  合成粒子的最好方法就是用非内嵌的Alpha通道渲染它们,背景要是100绿色。利用简单的合成技术,这种绿屏方法,Alpha通道就会有准确的结果。如果粒子没有任何绿色信息,这种方法会更好,这也是为什么我们限制尘土粒子的色彩范围在绿色和红色之间,而不通过绿色范围。

几何体遮罩

  既然大多数粒子效果倾向于带有体积的三维元素,那么,当正确分层你的效果时,一个简单的二维Alpha通道就会不充足了。体积在不同的深度有不同的密度,你需要在三维空间裁减体积,这样,元素前的体积才会保持密度。有两种方法:

  打开几何体遮罩,cg/image/自动利用场景中的所有几何体作为一个三维挖剪图画,该几何体被用来挖剪粒子,但是,它在色彩和Alpha通道里是看不见的,就像在软件渲染里的useBackground材质。

特殊遮罩元素

  运用几何遮罩将带来一个后果,那就是如果你用了粒子替代并且替代物是几何体,那么几何体也会被遮罩,但不会出现在色彩或者Alpha通道里。为了避免这点,你可以指定一个Lambert材质到场景中的所有做为遮罩的几何体,其色彩和incandescence都是100绿色,也可以是其它颜色,只要以后能对它进行抠像就行。将incandescence提高到100绿色原因是:消除任何在几何体上的硬件阴影影响。

匹配镶嵌细分MatchingTessenllation

  在场景中使用NURBS几何体的时候,这一点很重要:三维视图里的镶嵌细分要和软件渲染的渲染镶嵌细分相匹配。cg/image/的NURBS物体在视口里高精度显示----Hotkey:3----这与用渲染器来渲染镶嵌细分是不一样的。如果你正在渲染一个非常厚的体积,你会看到几何体遮罩比软件渲染物体有很多的小面,这个结果导致在合成时会有令人不快的边缘围绕在物体周围。为了避免发生这样的事情,打开场景里所有NURBS物体的DisplayRenderTessenllation,现在,当你硬件渲染的时候,镶嵌细分会和软件渲染器相匹配。

运动模糊

  模拟渲染粒子时,运动模糊就是必须的。一般说来,粒子都非常小,运动速度非常快,粒子系统的外观不仅仅指颜色、灯光和透明度,还包括运动中粒子的模糊状态。运动模糊不仅仅反映了粒子运动速度,而且反映了粒子体积大小。一股旋风不需要由100,000,000个快速自旋的点粒子组成,几百个带有运动模糊的sprite就可以产生同样的精彩结果。

  硬件渲染的运动模糊和软件渲染的运动模糊结果不同,不必考虑匹配它们有多难,实际上,绝不可能100精确,有50精确就很幸运了。依靠物体相对于摄影机的移动速度,产生的结果可能是可接受的,也可能是完全没用的。可以用不同的合成技巧和粒子系统的从属路径来取消这些差异。

  为了更好地匹配粒子的软件渲染,运动模糊长度的设置要和摄影机的快门角度相匹配,144快门角度会产生144/360或0.4的运动模糊,若用更高值时,可能会获得有趣的效果。记住以下几点很重要:

  如果你正用几何体遮罩,运动模糊设置过高或过低都会引起遮罩和软件运动模糊不相匹配。

  如果你的摄影机被动画,动作模糊设置高过1,你的效果将在三维空间游动,运动模糊结果将在时间线之前。

  如果你有一个锁定的摄影机,且你正在用的一个作为遮罩的几何体没有运动(比如从一个烟囱或蜡烛冒出的烟),你可以抬高运动模糊设置,用完全非真实的大于1的值试验一下,你会获得非常有趣的结果。

纠正运动模糊Artifacts

  如果几何遮罩引起严重Artifacts,纠正这些Artifacts的方法是非常有限的:

多数情况下,关闭运动模糊会给你一个元素并更好地适合你的软件渲染元素,当然,代价就是粒子外观会改变。

关闭特殊物体的运动模糊

  这种办法就是关闭运动模糊。与软件渲染器不同的是,硬件渲染器在渲染状态下不妨碍运动模糊特征。

要关闭一个物体的运动,你需要这样做:

1、选中物体

2、烘焙所有的动画属性,这样每帧都有了关键帧。

3、关键帧插入类型为stepped

  这会确保当物体在关键帧之间取样的时候,cg/image/不会插入到物体的位置上。该技术通常比较好用,而且可以写入一个mel脚本,将所有动画曲线程序自动化。

  如果你看见artifacts和摄影机还处于动画状态,你也可以尝试上面提到的摄影技术。

关键帧特殊物体

  修改Artifacts的另一技术就是:在合成阶段添加附加的运动模糊到Artifacts,但是,这项技术的难点在于----遮罩那些引起问题的特殊几何体,并只模糊几何体有问题的区域。要做到这一点,用一种绿色Lambert材质渲染粒子的附加路径,就像在几何体遮罩章节描述的一样。合成器现在可以为那个区域提取一个alpha通道,单独模糊图像的那个部位。