中国韩国日本在线观看免费,A级尤物一区,日韩精品一二三区无码,欧美日韩少妇色

當前位置:主頁 > 科技論文 > 計算機論文 >

三維軟件渲染的相關(guān)局限與解決技術(shù)

發(fā)布時間:2015-02-13 08:17

摘 要:

摘 要:本文以MAYA軟件為例介紹分層處理渲染和加場渲染的局限于解決方案,無論什么情況,在大型三維動畫制作項目的管理上分層渲染和加場渲染都是必要的,盡管在操作上會稍顯麻煩些,但是會為成片的修繕和加工提供了更加靈活的機動性。

關(guān)鍵詞:

關(guān)鍵詞:渲染 Z通道 視頻制式

  在三維軟件中進行渲染可以使用很多方法,因而在渲染的管理上也會經(jīng)常遇到分層渲染的問題。對于渲染的分層處理無疑是一件很麻煩的事情。有些分層渲染的處理是為了在后期制作或者修改中更加節(jié)省時間,有些確實要求必須這樣去做。

  1 分層處理渲染

  本文論述以MAYA軟件為例,在MAYA中有很多粒子的渲染是硬件渲染類型,必須使用Window>Rendering Editor>Hardware Render Buffer截屏式渲染才能得到效果。如果要想讓這些被渲染出來的粒子存在于最終效果中就必須在Hardware Render Buffer中同時生成Alpha通道,然后在后期軟件制作中與軟件渲染出的圖片或動態(tài)素材進行合成。另外在MAYA中很多特殊效果最好也是采用分層渲染的方法進行處理。例如,PainterEffect、Optifx、Glow和Fur等。還有景深、運動模糊等也可以使用后期軟件分開處理。這種處理方法不是分層渲染但卻可以提高工作效率。以運動模糊為例,在后期軟件中的處理速度大概比渲染快100-300倍左右。但是這種方法同時也帶來了一些問題,在多物體存在的場景中,后期特效無法處理隱藏在物體后面的物體。就可以使用Z通道(Z-Depth Channel)圖像來分辨場景中物體的前后關(guān)系。

  Z通道雖然可以向我們提供表示遠近的深度數(shù)據(jù),但同時也有一定的缺憾。首先Z通道不支持透明,其次即使是由高質(zhì)量設(shè)置生成的Z通道圖像也會有明顯的鋸齒邊緣。解決的辦法是我們可以用雙倍的大小進行渲染,然后將渲染出來的圖像縮小一倍,這樣操作相當于用插值的算法進行了一次Anti-Aliasing的反走樣處理。因為無論是在Photoshop中還是像在例如AfterEffect這樣的后期軟件中,在圖像縮小時都是利用插值算法的反走樣處理技術(shù)來處理像素的。那么什么時候需要Z通道中的透明數(shù)據(jù)那?一般情況下,在后期軟件中想要模擬直射和反射特技時往往需要遮擋物體的透明數(shù)據(jù),既然Z通道不予提供,還可以使用另外的攝像機渲染對應(yīng)的場景作為反射貼圖來模仿反射效果。無論如何,在大型三維動畫制作項目的管理上分層渲染都是必要的,盡管在操作上會稍顯麻煩些,但是會為成片的修繕和加工提供了更加靈活的機動性?偠灾,其對于工作效率是很大的提高。

  2 加場渲染的問題

  為了適應(yīng)電視廣播及PAL制或NTSC制的視頻要求,需要在使用MAYA進行渲染時需要生成場。通常視頻系統(tǒng)分為兩個階段來顯示一幀圖像,第一階段掃描屏幕上一半的熒光體,即從第一行開始的奇數(shù)行;第二階段掃描屏幕上另一半的熒光體,即從第二行開始的偶數(shù)行;這兩個半幀(Half-Frames)成為場(Field),把他們穿插合并成一幅圖像的過程稱為隔行掃描(Interlacing)。

  由于視頻系統(tǒng)分兩個階段來顯示單獨的幀,因此如果在渲染時不生成場(即一次渲染一幀圖像的正常渲染),在播放具有快速運動的視頻素材時往往會顯示得不連貫,此時應(yīng)該進行加場渲染,如要生成的動畫是不包含快速運動對象的視頻素材,可以不加場渲染。生成場的方法有兩種:一種是在MAYA渲染時設(shè)置成加場渲染;另一種是將視頻素材調(diào)入后期軟件中加場。當在軟件中設(shè)置成加場渲染時,MAYA為生成的每一幀產(chǎn)生兩幅圖像,一幅對應(yīng)奇數(shù)場,另一場對應(yīng)偶數(shù)場,且它們是按照時間的步值數(shù)來分配的。

  盡管在MAYA中設(shè)置加場渲染如此簡單,但是在MAYA中的加場渲染并不是支持全部對象。在加場渲染的過程中涉及到PaintFX和Fur的圖像將不能正確的被生成,而如果使用硬件渲染時將不具備相應(yīng)的加場功能。要解決這些問題就要采用后期軟件加場的辦法。前面提到,奇數(shù)場的分配時遵循時間步值得原理,這就告訴我們要在MAYA渲染中做一些特殊的設(shè)置才能保證后期軟件加場的順利完成。需要Render Global Settings中將By Frame設(shè)置成0.5就可以了,這樣才能確保MAYA每隔0.5幀渲染一幅圖像,所產(chǎn)生的奇數(shù)幀作為暫時的奇數(shù)場,偶數(shù)幀作為偶數(shù)場,然后調(diào)入后期軟件中進行逐行掃描合并。

  在處理場渲染或運動模糊時 往往需要渲染比正常情況時多幾倍的幀數(shù),以便于我們?yōu)檫@些序列重新定義時間,從而省去了很多重新渲染的必要時間,提高效率。這樣的渲染任務(wù)中,往往是通過對By Frame的設(shè)置來添加中間幀。將By Frame設(shè)置成0.5,表示每0.5幀渲染一幅圖像,渲染2幀則生成4幅圖像,它們的序號應(yīng)是Name.001、Name.002、Name.003、Name.004。如果將By Frame設(shè)置成>1的數(shù),比如3.則表示每3幀渲染一幅圖像,那么渲染15幀則生成5幅圖像,,它們的序號應(yīng)是Name.001、Name.004、Name.007、Name.010、Name.013,這樣一來問題就出現(xiàn)了,由于這些序列幀的序號不是貫通的,在很多后期軟件中不能讀取這種斷開的編號。解決這類問題的方法有很多種,可以通過手工收縮場景中的動畫關(guān)鍵幀或者使用Trax Editor中的Create>Time Wrap來處理動畫的長度,這需要很精細地拾取場景中每一條動畫曲線,或者將已經(jīng)被賦予動畫關(guān)鍵幀的對象屬性一一挑選出來加入Character組成Clip,但是實踐證明,無論怎樣都很麻煩,在大型場景中甚至很容易出錯。

  解決這些問題的方法就是使用MAYA中的MEL腳本進行處理,frameWarpMake就是主程序,它采用一系列的手段分兩種情況查找場景中的動畫曲線節(jié)點。一種是查找場景中所有的動畫曲線,一種是查找被選擇物體的動畫曲線,并使用string what字符串變量作為導(dǎo)入函數(shù)來判斷和區(qū)分這兩種情況,而后再繼續(xù)創(chuàng)建一個FrameWrap節(jié)點來控制對應(yīng)的動畫曲線。

  FrameWrap是引導(dǎo)程序,從理論上講它是可有可無的,但在實際運用中,它使得程序運行的名稱和MEL文件的名稱統(tǒng)一起來,是一種規(guī)范的程序?qū)懛。FrameWrap引導(dǎo)程序的內(nèi)容只有一個,那就是運行FrameWrapMakeUI界面程序,界面程序又調(diào)入主程序,從而使整個程序得到統(tǒng)一。

 



本文編號:14534

資料下載
論文發(fā)表

本文鏈接:http://www.lk138.cn/kejilunwen/jisuanjikexuelunwen/14534.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶5fa83***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com