摘 要:通過對三維游戲場景模型進行分類研究,提出對地形模型采用區域LOD法優化,對景觀模型采用改進的平面貼圖法優化,在保證游戲視覺效果的同時,有效地降低了模型復雜度。
關鍵詞:三維游戲;場景;模型優化
0 引言
游戲產業因其產業鏈長、高附加產值,并且符合當代消費文化的特性,正在成為文化產業發展的新動力。三維游戲由于其具有真實的空間感、全視角的角色外觀等特點,符合玩家對游戲的真實性越來越高的要求,已經成為目前數字游戲的主流。游戲通常是由故事、角色和場景三個部分構成。場景是游戲故事展開的基礎,是角色的生存環境。富有強烈視覺沖擊力的游戲場景,可以有效地提高玩家的沉浸感,增強玩家的游戲體驗。
1 游戲場景模型分類
三維游戲場景制作主要涉及模型制作與材質設定兩方面。由于玩家對游戲畫質的要求日益提高,為了增強場景的真實感,在三維游戲中不得不采用大量高精度模型和復雜的材質設定。三維游戲的開發基本都是基于游戲引擎進行的,三維游戲需要對場景進行實時渲染,這對游戲引擎的渲染器和計算機硬件性能都有極高要求。目前雖然GPU(圖形處理器)和CPU(中央處理器)的硬件性能不斷提高,游戲引擎的渲染器也在不斷優化,但是仍舊無法跟上三維游戲發展要求。
為了使三維游戲既擁有良好的交互體驗與沉浸感,又能夠適應主流游戲硬件平臺。進行游戲場景模型優化研究是非常有必要的。
游戲場景模型通常可分為地形模型和景觀模型。地形模型主要是指地表形態模型, 如山丘、峽谷、河流等。景觀模型主要是指附于地表之上的景物, 如建筑、樹木、裝飾物、交通工具等。地形模型與景觀模型在模型精度、建模方法、視覺表現方面都有不同要求,需要進行分類優化研究。
2 游戲場景模型優化方法
三維游戲為了營造游戲環境的真實感,主要使用多邊形建模方法。由于模型較為復雜,邊面數較多,所以不宜再采用腳本建模方式,通常使用如3DSMAX, Maya等專業三維軟件構建模型。從理論上講,模型的邊面數越少,模型的復雜程度也就越低。減少模型邊面數是提高渲染響應時間的最簡單方法。但是一味降低模型精度,會使場景的表現力降低,無法滿足角色視野對場景細節的觀察需求。
2.1 地形模型的區域LOD優化法
地形模型的構建通常是基于M×N個等間距頂點的網格模型。網格間距直接影響地形渲染的實時性和真實感。過小的網格間距會增加渲染器的計算負荷,影響游戲渲染的實時性;反之,過大的間距將降低地形的精度,影響游戲的真實感。
LOD(層次細節)技術是模型優化技術中常用的方法之一,主要是通過移除被繪制物體中的不必要細節,即減少模型的三角面數量來精簡模型,提高渲染速度。在三維游戲中使用此方法,優化過程與游戲角色視點緊密相關。通常把視點到對象的距離稱為該對象的視距,根據對象的視距由遠極近的變化,實時地減少該對象模型的三角面片數量, 反之則增加, 實現對象的動態優化。根據LOD技術原理,結合游戲角色在場景中經常大范圍實時移動的情況,為減少動態優化時可能出現的由于模型面片數大幅減少而導致的模型異常,改變一個場景地形由一個網格模型構成的構建方法,研究應用區域LOD優化法。
根據游戲視覺要求將整個地形均分為若干個正方形區域,每個區域構建精模和簡模兩套模型。假設正方形的邊長為a,若干個正方形的中心點依次為m1、m2、……mn,游戲角色的視點為s(s為角色模型相對于地面的垂直點),當角色進入該場景時(默認首先進入m1所在區域),分別實時計算s與m1相鄰三個正方形區域中心點的距離,當s與三者距離都大于a22(正方形對角線長度的二分之一),表示角色未進入三者所在區域,相鄰三個正方形區域顯示簡模;當與一個中心點的距離小于等于a22,表示角色進入該區域,此中心點所在區域顯示精模,其他區域顯示簡模。當游戲角色離開m1區域,進入下一個區域,即深入場景內部后,還需提取所在區域周圍正方形區域的中心點進行以上運算,根據以上算法距離的比較值,進行區域模型精度切換。
區域LOD優化方法,按照視距的遠近進行區域模型優化調用,即保障了玩家對游戲視覺效果的要求,又可以有效地降低地形模型的復雜度,提高實時渲染效率。
2.2 景觀模型的優化方法
景觀模型主要以靜態裝飾物為主,在場景中起美化裝飾作用。景觀模型通常數量較多,且具有很高的重復性,一般不使用精度較高的模型,以免加載過多模型影響實時渲染效果。對景觀模型優化的優化研究,首先按照游戲場景設計需要按模型內容進行分類,然后根據每種模型需要表現的精細程度進行分組。如果同一類模型精細程度要求一致,則進行批量制作,即以一個模型為基礎,采用關聯復制的方法制作其他多個物體模型,這樣制作的模型導入到游戲引擎中,在一個場景中只需調用一次模型,即可完成大量重復模型的設置,可以有效地減少了模型數據的加載量。如果同一類模型精細程度要求不一致,在分別制作不同精度要求的模型之后,再使用關聯復制的方法完成其他模型的制作。
通過對景觀模型進行分類分組,可以在模型制作之前就適當地減少場景的復雜度,以及游戲引擎調入模型數據時間。在模型的具體構建方法上,根據景觀模型的裝飾性特點,采用平面貼圖法可以大幅降低模型復雜度。
以精度要求較低的裝飾性樹木模型構建為例,首先使用圖像處理軟件制作一張帶有Alpha通道的樹木貼圖,貼圖非樹結構區域進行透明處理,然后建立一個與樹木高度和寬度基本吻合的平面,將貼圖賦予平面。用此方法構建的模型可以實現較為逼真的視覺效果。但是由于該方法構建的模型只是一個平面,沒有縱深,當視角變化時,需要不斷調整平面的角度以保證該平面正對視點。當大量模型需要調整時,會給游戲引擎帶來較多負載。
通過研究,對平面貼圖法進行一定改進,將原來的一個平面模型調整為兩個大小一致、中心對齊、交叉垂直的平面,兩個平面使用同一張具有 Alpha 通道的貼圖。這樣構建的模型邊面數沒有明顯增加,但是可以有效解決隨著視點位置的變化需要不斷調整平面的角度的問題,除俯視以外的其他角度都可以獲得良好的視覺效果。
3 結束語
模型是三維游戲的靈魂,游戲視覺元素中,場景、角色、道具模型占主體地位。模型的精細程度對游戲的真實感體驗有著巨大影響。在滿足游戲視覺效果的同時,研究模型優化方法,降低模型復雜度,可以較好的降低游戲引擎實時渲染的響應時間,保障游戲流暢運行,為玩家營造更好的游戲沉浸體驗。
參考文獻:
[1]付志勇,高鳴.三維游戲設計[M].北京:清華大學出版社,2008:60.
[2]王綱,季振洲,張澤旭.大范圍動態海浪實時渲染[J].哈爾濱工業大學學報,2012(3):5963.
[3]黃石.數字游戲策劃[M].北京:清華大學出版社,2008:4647.
[4]黃銳,譚佳佳.基于X3D的虛擬場景建模方法[J].內蒙古大學學報:自然科學版,2009(6):738741.
作者簡介:黃銳(1978—),男,河南開封人,研究生,桂林航天工業學院信息工程系副教授,研究方向:虛擬現實。創意產業