Mental ray Motion Blur 試解決方案和 mip_motionblur mip_motion_vector shader
基于Mental ray渲染Motion blur現(xiàn)在有幾種解決方案:
純3D Motion Blur 渲染的圖片最真實(shí),反射,折射,GI等都不會(huì)有問(wèn)題。但是缺點(diǎn)是速度慢,為了提高動(dòng)態(tài)模糊的渲染質(zhì)量需要不斷的提高sample 和 temporal sample 的值,占用大量的渲染時(shí)間。渲染速度和質(zhì)量(sample)是成一種linear的關(guān)系。 Rasterizer 優(yōu) 點(diǎn)是速度快,比raytrace motion blur要快很多,能夠很快的實(shí)現(xiàn)高質(zhì)量的motion blur。它將shading和sample分開(kāi)進(jìn)行,極大的提高渲染速度。因?yàn)檫@種特點(diǎn)渲染速度和質(zhì)量(sample)不是一種linear關(guān)系。另外 他的sample方式也與raytrace不同。但是由于這種方式的特點(diǎn)不適合對(duì)反射和折射要求較高的場(chǎng)景應(yīng)用。渲染頭發(fā)是應(yīng)用這種渲染方式加 detailed shadow map。另外不適合應(yīng)用fg,gi caustics,auto volumn, raytraced shadow, ray bending lens shader, reflect refract. 2d,后期的motion blur是 基于二維平面的動(dòng)態(tài)模糊。優(yōu)點(diǎn)是節(jié)省渲染時(shí)間,三維渲染不需要渲染motion blur。調(diào)整快,可以說(shuō)是實(shí)時(shí)的。在后期調(diào)整時(shí)非常靈活如果是渲染的motion blur如果有問(wèn)題就需要到三維里重新渲染,在后期里調(diào)整就不需要。在后期里可以得到實(shí)時(shí)的反饋根據(jù)需要任意調(diào)整動(dòng)態(tài)模糊的幅度。缺點(diǎn)是不準(zhǔn)確不能模糊反 射折射的情況,不能有multisegment motion blur,動(dòng)態(tài)模糊都是直線的不會(huì)有弧線的,另外后期軟件對(duì)其支持也不禁相同還有很多限制。2d的motion blur主要是通過(guò)三維軟件渲染motion vector通過(guò)后期軟件調(diào)整。除了這種方式,Mental ray提供了一個(gè)output shader:mip_motionblur shader. 這個(gè)shader 通過(guò)利用motion vector 和 depth frame buffer對(duì)渲染出來(lái)圖片進(jìn)行處理。由于是集成于渲染器它的優(yōu)點(diǎn)是擁有一些后期軟件沒(méi)有的功能。而motion vector shader主要是用于輸出針對(duì)不同后期軟件處理動(dòng)態(tài)模糊需要不同motion vector圖像而寫(xiě)的shader。 對(duì)于3D motion blur,最重要的渲染速度而這主要是取決于整體的sample和temporal sample在maya內(nèi)由time contrast 控制。這個(gè)參數(shù)是主要影響動(dòng)態(tài)模糊速度的。 mip_motionblur, mip_motion_vector具體應(yīng)用方法。 應(yīng) 用這兩個(gè)shader都需要將motion blur選項(xiàng)開(kāi)啟,但是要保證shutter interval 為零??淳唧w情況考慮,為了后期考慮有時(shí)應(yīng)將物體停在shutter interval的中間這樣方便向前后兩個(gè)方向動(dòng)態(tài)模糊。比如shutter open 是0 shutter close是1,在啟用這個(gè)shader的時(shí)候要兩個(gè)值都為0.5。即 shutter open 0.5 shutter close 0.5。這樣會(huì)關(guān)閉motion blur但是會(huì)計(jì)算motion vector。同時(shí)將time contrast改為1,避免mental ray 作不必要的計(jì)算。 ![]() 這兩個(gè)shader都是output shader 但是連到maya 2009 camera 的output shader里并不可用,只可以使用以前的鏈接方式。默認(rèn)情況下此界面在camera attribut editor里是被隱藏的。方法倒很簡(jiǎn)單將output shader拖動(dòng)到相機(jī)上選擇 default 就可以了或者使用connectio editor 同時(shí)要啟用 motion vectors, depth framebuffer。 ![]() ![]() 關(guān)于兩個(gè)shader的具體參數(shù),可以直接參看官方的production shader documents. 這里需要強(qiáng)調(diào)一下的是如果在nuke中作motion blur,首先需要將mip_motion_vector中floating point format 改為1, pixel threshold 最小要寫(xiě)0.001否則會(huì)有artifacts(圖像某些不動(dòng)的部分會(huì)有值)這個(gè)值是告訴mentalray多小的像素移動(dòng)可以忽略不記。這樣nuke的 vector blur節(jié)點(diǎn)才能正確讀取mental ray 輸出的motion vector信息。其他插件和軟件對(duì)motion vector要求不一樣,要看具體要求輸出。 ![]() 使用 nuke 自己的 vector blur shader 還是不能很好的模糊需要?jiǎng)討B(tài)模糊的部分和其它背景同在一個(gè)rgb通道內(nèi)的圖像,如果需要?jiǎng)討B(tài)模糊的部分外邊沒(méi)有rgb信息可以很好的模糊圖像,如果有,效 果沒(méi)有reelsmart motion blur效果好,但是RSMB一樣有些問(wèn)題。暫時(shí)還不知道是不是我的設(shè)置有問(wèn)題。 5.1v2 的vector blur結(jié)點(diǎn)壞了,foundry已經(jīng)確認(rèn),下個(gè)版本修正...不用試了。 |
|