摘 要:渲染是三維動畫制作過程中重要的一個步驟,不僅需要大量的計算機計算資源,還會耗費不少的時間。本文對云計算在三維動畫渲染系統的應用進行了研究,分析了云計算渲染的優勢與關鍵技術,并為三維動畫渲染的云計算提出了一些思路,希望能為動畫渲染工作提供助力。
關鍵詞:三維動畫;渲染;云計算
動畫產業在我國的發展非常迅速,其中三維動畫占有很大的份額,不僅數量上在不斷地增加,質量也向著更高的方向發展。許多的三維動畫的清晰度已經向高清甚至4k超高清和3D等方向發展,而且場景和畫面也越來越復雜。這些都對動畫渲染的效率和性能提出了更高的要求,而云計算正是滿足這種高效率、高質量需求的有效方法。
0 概述
第一,云計算。云計算是通過網絡提供客戶計算機所需要的計算資源,并實現可用而便捷的訪問。云計算包括了許多內容,目前主要包含分布式計算、網絡計算、虛擬化技術以及并行計算等技術手段。其特點如下:
一是云計算的規模龐大。云計算用“云”來形容計算的規模就從一個側面反映了其規模的龐大。一般的企業私有云至少擁有成百上千的服務器,大型的如亞馬遜、谷歌、微軟的“云”服務器規模都超過百萬。
二是服務的虛擬化,提供了便捷的使用方式。云計算可以通過各種各樣的終端來使用云服務,對用戶來說,所有的資源都可以從云得到,而不用固定在某處。
三是可靠性高。由于“云”采用分布式存儲和容錯等設計,眾多的節點可以通過各種措施提供非常高的容錯性,可靠性遠超本地計算機。
四是拓展性良好。事實上,高度的可拓展性是云計算的重要特點之一,可以非常方便地擴大云的規模,提供更加強大的計算和存儲服務。
五是價格相對低廉。由于云的規模性和很高的容錯性,可以產生強大的規模效應,使構建云和使用云服務的單位成本都大大降低。
第二,動畫渲染。渲染技術是動畫設計中的重要組成部分,三維動畫的渲染需要通過大量的計算來實現動畫的最終視覺效果,也才能實現動畫設計師的創作和構想,因而對計算性能有著非常高的需求。具體來說,三維動畫通過設計軟件制作合成后,需要通過渲染成最終動畫。高水平的動畫需要非常細致地展示出動畫中各個部分的效果。比如動畫內物品精細的材質紋理或是光影效果,以及逼真的3D效果和生動的人物以及真實感等等。而要實現這些,就需要在精細動畫建模的基礎上加入大量的光影效果和場景。這就需要應用到數量非常龐大的幾何模型數量,精確的參數設施和復雜的動畫動作。通過渲染計算,將這些內容和相應的材質、陰影以及燈光等效果按照設計進行三維的融合,成為最終的動畫。
渲染需要滿足的要求很多。首先,需要占用大量的計算資源,也就是CPU計算力;其次,在渲染的過程中需要大量的內存;最后,渲染會產生大量的I/O請求,對輸入輸出以及存儲性能也有較高的需求。
1 云計算下的三維動畫渲染系統
1.1 云渲染技術簡介
由于云計算在可拓展性以及便捷性等方面的優勢,非常符合三維渲染系統的要求。因此,許多三維動畫在考慮到渲染系統的時候越來越傾向于使用云計算完成構建。通過云計算的高度拓展性,高性能等方面的優勢,可以在短時間內很方便快捷地完成需要單機數天甚至數十天才能完成的渲染任務。
雖然云渲染技術看起來十分復雜,云系統構建和運行都需要較高的技術和各方面的支持,但是在實際的使用中,給予云計算的三維動畫渲染系統卻是比較容易甚至可以說是比較簡單的,只需要具備簡單的操作知識就能夠完成,任何一個用計算機進行三維動畫設計的人都能夠上手。具體來說大致的流程如下:
首先,通過網頁瀏覽器或是客戶端,將本地設計好的三維動畫建模文件上傳到云計算系統。具體是使用網頁瀏覽器還是專門的客戶端,由提供云渲染服務的系統來決定。
其次,設置好渲染的各項參數。這些參數包括需要得到的渲染結果的文件格式,渲染的畫面長寬分辨率等信息。
第三,開始渲染并等待渲染結束。等待渲染的過程所需的時間長度與渲染的復雜性、尺寸、動畫的時長,以及所選擇云計算渲染服務的等級都有著直接的關系。在等待的過程中可以看到需要的時間以及渲染狀態等等信息。
第四,渲染完畢后下載得到的渲染結果。
1.2 云計算下的三維渲染系統設計架構
云計算下的三維渲染系統又可以稱為云渲染。云渲染系統結構是建立在網絡的基礎之上,包括云渲染計算系統,文件服務功能,渲染管理以及網絡連接和交換設備等。目前,常用的云渲染主要有兩種類型,一種為自建云,另一種是云渲染平臺,具體分別如下:
第一,自建云平臺完成渲染工作。自建云平臺可以更加方便地根據需求進行設計和搭建平臺,但是其投資與技術要求都比較高,一般適用于長期的項目或是對外提供云渲染服務時采用。
第二,使用云渲染平臺。隨著云技術的迅速發展,云渲染平臺也在國內外大量出現。比如Respower、Renderbus等等。可以供使用者通過網絡進行靈活的使用。
1.3 云渲染系統的關鍵組成部分
無論是自主建設云平臺進行動畫渲染還是采用商業化的云渲染平臺系統,都離不開如下幾個部分:
第一,云計算的渲染節點。渲染節點是云渲染系統中的硬件核心,云計算環境下的渲染節點要針對3D渲染的需要進行專門的設計和優化。由于不同的渲染任務可能包括的渲染節點不同,可能是幾個渲染節點,也可能需要幾百個渲染節點,云計算可以為這種動態的需求提供非常好的支撐,而不用像傳統動畫渲染一樣采用大量的服務器進行渲染節點的構建。整個“云”就像一臺超級計算機,提供所需要的渲染節點,極大地提升了渲染節點的效率。
第二,云計算的文件存儲系統。由于渲染系統在進行渲染的時候要從存儲設備上讀取相關的素材和信息等,在云計算的三維動畫渲染系統中,必須有強大的文件存儲和傳輸系統提供支撐。而且渲染的規模和渲染節點的數量越大,對文件服務的需要就越高。所以,云渲染系統的設計中一定要充分考慮到文件和存儲服務的需要,以更好地為渲染工作服務,提高整個云渲染系統的效率和穩定性。
第三,渲染調度和管理服務器群。由于渲染是一項復雜而又計算任務繁重的工作,合理地安排渲染任務也有著重要的地位。而渲染管理和調度服務器就是負責這一任務的關鍵。渲染調度和管理能夠極大地提升云渲染的效率。其實現的功能包括兩個部分:首先,由于渲染調度和管理是渲染管理的核心,要實現渲染任務能夠根據需要分配到相應的渲染節點當中,并根據需要將渲染任務在不同節點之間進行動態的調度和轉換。其次,對渲染服務器進行管理,方便進行渲染服務器的資源調度和使用以及動態擴展與縮減,更加靈活地實現海量渲染資源的管理和優化使用。
第四,做好其他的配套設計。其他配套設計包括很多內容,如云渲染的硬件系統所使用的機架和機柜;專門的電力線路來提供穩定的電力;配備好后備電源和穩壓系統預防供電故障或是電壓波動的情況對云系統產生的災難性影響;還要配套好存放云系統硬件的機房照明,空調和供暖換氣系統,使硬件系統運行在一個合適的溫濕度環境,確保云渲染能夠在生產環境中長期、穩定地運行。
第五,云渲染的調度與分解策略。云計算下的三維動畫渲染,可以同時進行多項渲染任務。因此,在工作的時候可以根據任務的情況分配任務。并通過任務分割和調度集中不同的渲染系統進行渲染,從而更好地提升云計算的計算機利用效率,縮短三維動畫渲染的時間。
第六,采用先進的分布式計算模型進行云計算系統的軟件設計。由于云渲染的目標是進行海量動畫數據的計算,要根據三維動畫的特點和渲染的需求,通過軟件將任務分解成若干粒度較小的渲染單元,提供給渲染節點進行高效率的分布式處理進行渲染,最后將結果整合輸出,完成渲染的目標。
2 結語
云計算是解決三維動畫渲染速度慢、效率低的有效方法。但是在實際應用中,還需要不斷根據三維動畫渲染的特色對云計算進行專門的優化和設計,如此才能更好地利用云計算的優勢與特點完成渲染工作。而且云渲染可以應用的領域也會更加廣泛,如可以在建筑三維建模等方面發揮更大的作用。
參考文獻:
[1] 田雅嵐,鄭志翔.基于云計算的渲染解決方案在三維動畫教學中的運用[J].大眾文藝,2016(12).
[2] 田紅,韓曉紅.云計算技術在高校動漫專業渲染階段的應用[J].自動化與儀器儀表,2014(12).
作者簡介:張晟(1985—),男,遼寧沈陽人,碩士,動畫專業,教師,研究方向:三維動畫。