用户名 密    码

原理教程:影视动画渲染中的运动模糊(6)

来源:互联网 作者:未知 发布时间:2011-06-08 10:31:54 网友评论 0


\

图27

3.后期运动模糊计算非常快,几乎是实时生成,在三维软件中渲染矢量信息序列速度也相当快,而三维运动模糊相当慢,需要消耗大量的渲染时间。

4.后期运动模糊不能处理运动物体的阴影,不能处理运动物体的折射反射,而三维运动模糊均可以渲染出运动模糊物体折反射及阴影的真实效果。

5.三维运动模糊的分层(通道)渲染及合成相对更麻烦一些,因为每一层(通道)都得带有运动模糊效果,且运动模糊图像的透明边缘在合成校色时容易变黑或变白。
 

总结为如下表格。(图28)

\

图28

根据以上的分析我们可以得出如下结论:在综合物理真实性方面考虑,三维运动模糊要优于后期运动模糊,因此追求极端质量的项目(如电影《变形金刚》系列、《阿凡达》、《Wall-E》)往往会花费大量的时间和硬件成本去渲染三维运动模糊;在速度上后期运动模糊要远胜于三维运动模糊。

因此在大多数的情况下,可以采用后期运动模糊+三维运动模糊结合使用的方案,常规镜头用后期运动模糊解决,部分特写及大动态的镜头用三维渲染运动模糊来搞定。

有一点需要特别指出的是:本文所指的“后期运动模糊”特指的是在三维中渲染矢量通道再到后期软件中根据矢量通道进行模糊处理的情况,而在实际生产中有一种类型的“后期运动模糊”指的是后期软件中使用图像跟踪分析方法,根据前后帧的像素信息自动计算出运动趋势再进行模糊处理的情况(例如:Nuke中的Oflow、F_motionblur这两个节点实现的功能),这种生成运动模糊的方法完全不依赖三维软件,但是对于复杂运动的分析能力有限,因此在缓慢或简单运动的场合效果不错,在复杂像素运动情况下会出现运动模糊失真的情况。这种类型的“后期运动模糊”本文不再赘述。
 

一套完整的后期运动模糊工作流程
该流程的操作思路是使用三维软件Maya中的Mental Ray渲染器输出运动矢量,然后在后期软件Nuke中通过VectorBlur节点将原始图片序列与运动矢量序列进行合成产生接近真实的运动模糊的效果。

准备工作
需要机器上安装有Maya 7.0及以上版本(自带Mental Ray渲染器),Maya相对应版本的shaders_p(Mental Ray节点功能扩展包)以及Nuke 4.7及以上版本。

Shaders_p是由俄罗斯人Puppet开发的免费的Mental Ray节点包,里面包含一系列能扩展Mental Ray功能、提升Mental Ray效率的shaders,shaders_p能够很好的工作在Mental Ray独立版以及主流三维软件Maya、Max、Xsi里,并且shaders_p支持以下若干操作系统平台:Win32、Win64、Linux32、Linux64以及macOSX,因此通用性很高。Shaders_p的各个版本可以在http://www.puppet.tfdv.com/download/index_e.shtml下载。

在本文中我们将使用Maya2009,配合shaders_p中的p_motion_to_rgb这个shader来生成运动矢量信息,其他三维软件的操作方法类似,最后通过nuke5.1v5进行合成。

Shaders_p在Maya中的安装方法:
1.关闭Maya;
2.将shaders_p.dll(linux或者mac下是shaders_p.so)拷贝到“maya安装目录”/mentalray/lib目录下(例如:D:\Program Files\Autodesk\Maya2009\lib);
3.将shaders_p.mi拷贝到“maya安装目录”/mentalray/include目录下;
4.将所有的*.xpm文件拷贝到“maya安装目录”/icons目录下;
5.将AE目录下所有的的*.mel文件拷贝拷贝到“maya安装目录”/scripts/AETemplates目录下。安装完成。

如果在渲染的时候出现类似如下错误:
“LINK 0.0 error 191007: cannot load C:\Program Files\Alias\Maya7.0\mentalray\lib/shaders_p.dll, This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.”

请安装“Microsoft Visual C++ 2005 SP1 Redistributable Package”。下载链接:
Microsoft Visual C++ 2005 SP1 Redistributable Package (x86)
Microsoft Visual C++ 2005 SP1 Redistributable Package (x64) 

Maya输出运动矢量信息
1.确认安装好shaders_p以后,打开Maya的Hypershade,创建p_motion_to_rgb节点(安装好shaders_p就会多出这个节点),将新创建的p_motion_to_rgb赋给运动物体,更改p_motion_to_rgb的Mode属性为Raster Space。(图29)

\

图29

搜索栏目