- 最后登录
- 2018-12-19
- 注册时间
- 2012-8-20
- 阅读权限
- 90
- 积分
- 54706
- 纳金币
- 32328
- 精华
- 41
|
maya 硬件渲染粒子与软件渲染元素结合
VI. 硬件渲染粒子
缓存
在硬件渲染前隐藏粒子,如果没有隐藏,运动模糊就不会产生正确的结果, pickup 帧就不会和原始帧匹配。
Alpha 通道
当 sprites 透明值少于 1 时,由 Hardware Render Buffer 生成的 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% 绿色原因是:消除任何在几何体上的硬件阴影影响。
匹配镶嵌细分 Matching Tessenllation
在场景中使用 NURBS 几何体的时候,这一点很重要:三维视图里的镶嵌细分要和软件渲染的渲染镶嵌细分相匹配。 cg/image/ 的 NURBS 物体在视口里高精度显示 ----Hotkey:3---- 这与用渲染器来渲染镶嵌细分是不一样的。如果你正在渲染一个非常厚的体积,你会看到几何体遮罩比软件渲染物体有很多的小面,这个结果导致在合成时会有令人不快的边缘围绕在物体周围。为了避免发生这样的事情,打开场景里所有 NURBS 物体的 Display Render Tessenllation ,现在,当你硬件渲染的时候,镶嵌细分会和软件渲染器相匹配。
运动模糊
模拟渲染粒子时,运动模糊就是必须的。一般说来,粒子都非常小,运动速度非常快,粒子系统的外观不仅仅指颜色、灯光和透明度,还包括运动中粒子的模糊状态。运动模糊不仅仅反映了粒子运动速度,而且反映了粒子体积大小。一股旋风不需要由 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 通道,单独模糊图像的那个部位。
【来源:软件学院】
更多精彩教程,尽在web3D纳金网http://www.narkii.com/college/ |
|