【Nuke理论】使用VectorBlur为2D/3D元素添加运动模糊详解
› VFX大学 › Nuke合成影视制作 › 【Nuke理论】使用VectorBlur为2D/3D元素添加运动模糊详解
标签: MotionBlur, Nuke理论, 运动模糊
-
作者帖子
-
-
2019-05-14 - 10:01 #58299
大家早上好😄,☀️非常好,心情格外美丽,之前写过的一些教程讲了不少2D/3D关键帧动画的制作方式,那么动画做出来后,为达到更加真实的效果,添加运动模糊是必须要做的一环,运动模糊是实拍摄影机与CG动画的最重要区别之一,有了运动模糊画面更加符合人眼的观看方式,也更加接近于物体的真实运动。
既然讲到运动模糊,我们就来做个归纳,运动模糊分为:
运动模糊的生成方法:1、节点中自带的运动模糊参数,使用其他插件生成运动模糊。2、使用Transform节点数据传递到Motionblur2d生成运动模糊(需要有Transform节点支持)
运动模糊的生成方法:
1、Motionblur3D生成的运动模糊(特别提示:MotionBlur3D仅使用相机信息来生成运动矢量,若场景中有移动对象但摄像机是静态的,则MotionBlur3D无法生成任何输出。)
2、三维软件里渲染输出运动模糊通道,再通过Vectorblur生成运动模糊。(使用ScanlineRender或RayRender节点生成运动矢量(也可直接生成运动模糊),一般情况下比使用MotionBlur3D节点更准确,并且适用于静态和移动摄像机以及线性和非线性摄像机移动)
综上所述:Motion Vector运动矢量是生成运动模糊的关键数据,而将Motion运动矢量生成运动模糊的工具是Vectorblur。下面我们通过操作流程来学习VectorBlur: -
2019-05-14 - 11:08 #58306
将VectorBlur与ScanlineRender一起使用
一、在ScanlineRender上输出运动矢量并设置采样
1、在3D场景中,打开ScanlineRender属性面板并切换到“Shader(着色器)”选项卡。
2、确保将 Motion vectors(运动矢量)设置为以下之一(而不是Off 关闭):
•Classic(经典): 渲染运动矢量经典(前Nuke 6.1)方式。此选项仅用于向后兼容。
•Velocity:存储运动矢量通道中每个像素的速度(Nuke 7.0之前的方式),选择了这项需要将samples设置为1。
•Distance: 对于每个像素,存储运动矢量通道中样本之间的距离(以像素为单位)。推荐使用这个选项,通常可以产生最佳效果。还可以让VectorBlur节点产生弯曲的矢量模糊,其中两帧之间的插值是根据曲线而不是线性地进行的。3、选择motion vector channels(运动矢量通道),用于存储生成的运动矢量。
切换显示器显示通道为Motion(原始的) 或者Forward(默认的输出通道),就可以看到运动矢量图。3D场景原始图 ScanlineRender 生成的运动矢量
4、在“MultiSample(多样本)” 选项卡上,将samples(样本采样)设置为1(默认值为1)。
提示:若使用VectorBlur的线性算法不能很好地生成运动模糊,则可以增加此值。
二、添加VectorBlur节点
添加VectorBlur节点: 选择 Filter > VectorBlur(连接到ScanlineRender后面)
三、设置VectorBlur节点并生成运动模糊详解
1、在VectorBlur属性中,从channels下拉菜单选择要模糊的通道(默认为All,一般不用更改)。
2、从uv通道下拉菜单中选择运动矢量通道(Motion或Forward都可)。
注意:这里选择的通道应与在步骤3中选择创建的通道相同,选择的通道中必须要有运动矢量数据。
3、选择mv预设。下拉列表可选择要应用于运动矢量的渲染器格式。(取决于你使用的是哪种渲染器得到的运动矢量数据,在Nuke内使用默认即可)
每个预设都包含特定于渲染器的比例和偏移,以便计算出更加精确的运动模糊。4、在模糊图像之前,可以选择blur uv(模糊uv)下拉菜单,来选择不同的算法。选择:
•uniform(平均): 用小的均匀模糊来柔化UV贴图中的边缘。•linear(线性): 应用线性加权模糊以在具有不同运动的区域之间进行混合。这比uniform选项具有更强的效果 。
提示: uniform选项可以用来创建一个类似于pre-Nuke 10 results.(预模糊杜克鲁克10)的结果。
5、将快门偏移设置为0。(快门在当前帧是处于打开状态的)
6、使用下拉列表选择:blur type(模糊类型)。
7、调整模糊量。通过VectorBlur的滑块或者直接输入参数即可(一般输入1或者2)。
到此,我们就可以看到已经出现完美的运动模糊效果了:
原始素材 VectorBlur生成运动模糊 -
2019-05-14 - 13:46 #58325
使用MotionBlur2D为图像生成运动模糊
MotionBlur2D不会独立产生运动模糊。实际上它是将来自2D transform输入的UV运动信息(例如:变换节点)通过算法生成为运动矢量,然后将UV向量沿节点树输出到VectorBlur节点,VectorBlur节点基于这些向量产生运动模糊。
MotionBlur2D输入端口有两个:1. 2D 原始图像输出。(用于输入要做运动模糊的图像序列。) 2. UV变换信息。(例如:Transform或Tracker节点)
用法与流程:假设我们给一个图片做了动画,需要给这张图片加上运动模糊。
1、在图像上添加Transform节点,并Key关键帧,做好动画。
2、添加MotionBlur2D节点,将两个输入端都连接到Transform节点。(建议打点分离连接线,弯曲节点连接线的方法,方便查看)
3、在显示器中切换到Motion通道,查看是否已经生成Motion运动矢量。
4、添加VectorBlur节点,并设置模糊通道,调节模糊参数,运动模糊就生成了。
-
2019-05-14 - 17:25 #58341
要使用ScanlineRender或RayRender添加运动模糊:
1、将ScanlineRender节点的控制面板上,切换到MultiSample。
2、Sample(采样):在快门时间内采样图像的次数。值越高,结果越平滑,但渲染时间越长。
样本 设置为5。 样本 设置为15。
3、Shutter(快门):运动模糊时快门保持打开的帧数。例如:值0.5将对应于半帧。增加值会产生更多模糊。
快门 设置为20。 快门 设置为40。
4、快门偏移下拉菜单调整快门偏移:
• 居中 : 使快门围绕当前帧居中。将快门值设置为1,当前帧为30,则快门从第29.5帧到第30.5帧保持打开状态。• 开始 : 在当前帧打开快门。将快门值设置为1,且当前帧为30,则快门将从第30帧到第31帧保持打开状态。
• 结束:关闭当前帧的快门。将快门值设置为1,并且当前帧为30,则快门将从第29帧到第30帧保持打开状态。
• 自定义:在指定的时间打开快门。下拉菜单旁边的字段中,输入要添加到当前帧的值(以帧为单位)。要在当前帧之前打开快门,请输入负值。例如,:0.5的值 将在当前帧之前半帧打开快门。
5、调整随机时间:为采样分布添加随机性,就可以产生不规则间隔的图像,值越大,样本之间的时间差越大。
6、采样直径设置:为每个像素采样所在圆的直径以进行抗锯齿处理。值越大,抖动的像素越多。
7、焦距直径:使相机围绕其前方焦距处的一个点随机运行,可为每个样本生成多个样本的景深效果。
提示:若渲染变得非常慢,可以通过使用随机样本来近似多样本渲染并缩短渲染时间。随机样本数,较低的值会导致渲染速度更快,而较高的值会提高最终图像的质量。
随机抽样基于Robert L. Cook的 计算机图形随机抽样,可在 ACM Transactions on Graphics,Volume 6,Number 1。
随机样本设为0 随机样本设为5
好啦,今天小雨的更贴就到这里啦,如有疑问,可以跟帖留言,会尽快回复你的。点击Nuke影视合成版块并订阅可以查看更多精彩教程哦。
如果喜欢NewVFX社区的帖子,点击我的头像,加我为好友,就可以看到我得更新啦,也可给我发私信,点击帖子顶部得收藏放入收藏夹,方便将来再次查看~
本帖未经允许不得转载,转载请注明出处并保留在本站的完整链接,谢谢^_^
-
-
作者帖子
- 在下方一键注册,登录后就可以回复啦。