摘要:隨著電腦動漫產業化的不斷升級,在中職學校中普遍開設電腦動漫專業。本文從三維動畫制作過程的角度出發,介紹在計算機圖形學和三維動畫制作軟件的教學實踐中體會到的計算機圖形技術在三維動畫制作中的應用。
關鍵詞:計算機圖形學;三維動畫;造型;變換;真實感
1前言
計算機圖形學是一門研究計算機圖形的原理、方法和技術的學科。隨著計算機軟件和硬件技術的飛速發展,計算機圖形學作為計算機技術與圖學的交叉學科所適應的范圍也更加廣泛,圖形技術也越來越朝著實用化發展。現實生活、工作中只要人們手工能做到的,甚至只要人們能夠想象得到的圖形、圖像、視覺產品,利用計算機圖形技術,理論上基本都能實現。這樣就可以把人們從繁重性勞動中解放出來,使人們的大腦從事更高級的勞動——想象和創意。
三維動畫是在傳統動畫的基礎上發展而成的,是將一系列相互間略有差異的靜止的三維畫面以一定頻率連續播發而產生的視覺產品。三維動畫的制作過程大致如下:
a,創建基本實體造型,在三維空間中建立角色、實物和景物的三維數據。
b,利用變換技術讓實體在三維空間里運動起來,并產生新的實體造型。
c,對所有實體造型進行貼圖和光線控制,形成真實感的圖形。
d,最后在兩幅關鍵幀間生成中間畫,通過連續播發,即可看見由計算機產生的三維動畫作品。
在上面三維動畫的制作過程中,每一步都涉及到計算機圖形技術,為了使用上的方便,許多三維動畫制作軟件都將其過程中所要用到的功能進行分類,并以菜單形式提供操作功能。下面根據筆者從計算機圖形學和三維動畫制作軟件的教學實踐中得到的體會,淺述有關計算機圖形技術在三維動畫制作中的應用。
2 在三維動畫制作中有關計算機圖形技術的介紹
2.1 造型技術
造型技術涉及如何描述和構造一個三維物體模型。模型是一種廣義的概念,并不反映形體在計算機內部,或對最終用戶而言所用的具體表示方式。從用戶角度看,形體表示以特征表示和構造的實體幾何表示(CSG)較為方便,從計算機角度看,以邊界表示(BRep)最為實用。為了適合某些特定的應用要求,形體還有一些輔助表示方式,如單元分解表示和掃描表示。
2.1.1特征表示法
特征表示是從應用層來定義形體,因而可以較好地表達設計者的意圖,為制造和檢驗產品和形體提供技術依據和管理信息,從功能上看可以分為形狀、精度、材料和技術特征。例如在3ds max中,創建基本實體(立方體、球體等)。
2.1.2構造的實體幾何表示法(CSG)
CSG的含義是任何復雜的形體都可用簡單形體(體素)的組合來表示。通常用正則集合運算(如并、交、差運算)來實現這種組合,其中可配合執行有關的幾何變換。例如在3ds max中,利用布爾運算(差、交、并運算)創建復雜實體。
2.1.3邊界表示法(BRep]
邊界表示詳細記錄了構成形體的所有幾何元素(點、邊、面、環、體)的幾何信息及其相互連接關系——拓撲信息,以便直接存取構成形體的各個面、面的邊界、以及各個頂點的定義參數,有利于以面、邊、點為基礎的各種幾何運算和操作。邊界表示法是實體構造中最常見、應用得最廣泛的一種造型技術。例如在3dsmax中,創建NURBS曲面。
對于一個幾何造型系統一般根據應用的要求和計算機條件采用幾種表示的混合方式。而為了擴大造型系統的覆蓋域,常需要在不同的表示形式之間進行轉換,比如用CSG可以精確地表示形體,將CSG轉換成BRep表示時可以有精確表示和近似表示兩種形式。
2.2變換技術
圖形變換一般是指對圖形的幾何信息經過幾何變換后產生新的圖形。通過圖形變換可由簡單圖形生成復雜圖形,可用二維圖形表示三維圖形,甚至可對靜態圖形經過快速變換而獲得圖形的動態顯示效果。圖形變換技術主要有平移、旋轉、錯切、比例、投影等。
平移可用來描述三維物體的移動,以產生人們對景物的“湊近看”、“離遠看”、“低頭看”、“抬頭看”、“邊走邊看”的效果畫面。
旋轉可用來呈現三維物體的轉動、彈跳、拋擲效果。
錯切和變比可用來刻畫人物和動物面部的夸張表情。
投影是把三維物體變為二維圖形表示的過程,一般有正射投影和透視投影兩種。
在計算機圖形學中,所有的圖形變換都是通過變換矩陣來實現,變換矩陣元索取不同的值時反映了圖形的不同變換。例如在3ds max中,對象修改命令面板中的移動、縮放、旋轉、彎曲、拉伸等修改器和各種空間扭曲工具。
2.3真實感圖形技術
用計算機生成三維形體的真實圖形是計算機圖形學研究的重要內容之一,真實圖形在仿真模擬、幾何造型、廣告影視、指揮控制、科學計算的可視化、虛擬現實環境等許多領域都有廣泛的應用。
2.3.1消隱技術
通常,我們看—個3D物體,是不能一眼看到其全部表面的。從一個視點去觀察一個3D物體,必然只能看到該物體表面上的部分點、線、面,而其余部分則被這些可見部分遮擋住。如果觀察的是多個3D物體,則物體之間還可能彼此遮擋而部分不可見。因此,如果想有真實感地顯示3D物體,必須在視點確定后,將對象表面上不可見的點、線、面消去。執行這一功能的算法,稱為消隱算法。
圖形軟件通常將三維物體表達為多面體。消隱算法則將物體的表面分解為一組空間多邊形,研究多邊形之間的遮擋關系。按操作對象的不同,可分為兩大類:對象空間方法和圖象空間方法。對象空間(3D)方法是通過分析對象的三維特性之間的關系來確定其是否可見。圖象空間是對象投影后所在的二維空間。圖象空間方法是將對象投影后分解為像素,按一定的規律,比較像素之間的x值,從而確定其是否可見。例如在3dsmax中,利用對象顯示消隱命令實現。
2.3.2紋理貼圖
對物體圖像的可見表面進行著色之后,圖像表面過于光滑和單調,看起來不真實。現實中的物體表面有各種紋理,即表面細節。紋理有兩類:顏色紋理和凹凸紋理。通過顏色色彩或明暗度的變化體現出來的表面細節稱為顏色紋理,如墻紙、刨光的木材表面上的木紋等。這種紋理可以用紋理映射方法(即將二維的紋理映射到三維的物體表面)給圖像表面加上紋理。由于不規則的細小凹凸不平形成的表面細節稱為凹凸紋理,如人的皮膚、桔子的表皮等。這種紋理通過對表面法向量進行擾動來產生凹凸不平的視覺效果。在生成紋理的過程中產生失真現象要進行反走樣處理。例如在3dsmax中,利用材質,貼圖瀏覽器中的二維貼圖、三維貼圖、反射貼圖、折射貼圖、漫反射貼圖等實現各種紋理貼圖。
2.3.3光線控制
當光照射到物體表面時,可能被吸收、反射或透射。從物體表面反射或透射出來的光的強度取決于光源的位置與光強、物體表面的位置與朝向、物體表面的性質以及視點的位置。從視覺上可以感覺有的點明、有的點暗,為了真實反映物體表面的亮度信息,要對物體表面進行明暗處理。圖形學中物體表面明暗處理的算法有Gourand算法、Phorong算法等。由于明暗處理算法是基于插值的,不能用來表示物體表面的細節以及不易模擬光的反射、折射、陰影等。為了生成更真實的圖像,正確顯示反射、折射、陰影和表面細節等,須運用基于幾何光學原理的光線跟蹤算法和基于物理學的能量平衡原理的幅射度方法。光線跟蹤算法處理非常光滑的反射表面效果比較理想。而對于比較粗糙的反射表面,由于物體表面之間的漫反射以及由漫反射所產生的顏色滲透現象,采用幅射度方法來模擬這種現象。例如在3dsmax中,通過燈光、攝像機、渲染器的參數設定生成真實圖象,它的渲染器是—個使用掃描線、光線跟蹤和光能傳遞相結合的混合渲染器。
2.4中間畫的生成
計算機圖形學中中間畫的生成是計算機動畫制作的重要技術之一。計算機動畫就是運動著和變化著的圖形,是由許多幅單個畫面組成。在計算機動畫制作中,先利用圖形輸入設備或建模造型技術構造一幀畫面(關鍵幀),然后在兩幅關鍵幀之間應用插補技術生成一系列中間畫面。圖形學里常用的插補算法有:線性插值、骨架法、運動路徑和P曲線、移動點限制插值法、矢量線性插值法等。例如在3ds max中,通過軌跡視圖、運動命令面板、層次面板、動畫鎖定、時間配置等工具進行動畫控制。
3 結束語
計算機圖形學是一門有待開發、在各應用領域的特殊需求推動下不斷發展的學科,它在仿真模擬、輔助設計與制造、廣告影視、指揮控制、科學計算的可視化、虛擬現實環境等眾多領域有著廣泛的應用。三維動畫是計算機圖形學的應用領域之一,隨著電腦動漫產業化不斷升級,本人作為一名中職學校的教師,對計算機圖形學和計算機三維動畫制作的教學實踐做了以上的總結與大家一起交流。
參考文獻:
[1]孫家廣,揚長貴,計算機圖形學(新版)[M],北京:清華大學出版社。1995.
[2]魏明濤,計算機圖形學[M],北京:屯子工業出版社,2001.
[3]劉真,實用計算機圖形與動畫技術[M],北京:電子工業出版社。1998.
[4]李芳3ds max標準教材[M],北京:中國電力出版社,2004.