陳衡
【摘要】 在科學技術不斷創新和廣泛應用的影響下,三維地形場景并行渲染技術不僅能夠對地形數據進行有效分析,而且能夠保證并行數據調度機制的合理運行,本文對三維地形場景并行渲染技術進行分析,并且對其當前應用過程中存在的問題進行研究。
【關鍵詞】 三維地形場景 并行渲染技術 研究
當前在我國科學技術不斷快速發展以及更新的影響下,現代測繪以及遙感技術的發展空間越來越大,空間數據的獲取數量相比之前有了一定程度的增長,而我國已經逐漸向數字化社會時代發展。從目前的整體形勢來看,我國當前已經從數字城市逐漸到數字中國,甚至到數字地球,地形數據都在保持不斷增長的狀態,而現如今,如何切實有效的實現大規模的三維地形場景高性能渲染技術是非常重要的問題之一,實現三維地形場景并行渲染技術不僅能夠建立虛擬現實的系統,而且能夠建立有關三維地理信息的系統等等,這些技術性的問題都是當前非常重要的內容。雖然已經有很多學者對高檔圖形工作站的三角形進行實時的繪制,但是由于地形的數據數量相當的龐大,其自身的內存管理以及實時繪制能夠都不能夠滿足地形數據的需求,所以地形場景高性能渲染技術的研究需要更加的深入。
一、地形場景高性能渲染技術
地形場景高性能渲染技術在實際的應用過程中,主要是根據兩個方面來進行,首先,地形場景高性能渲染技術需要通過對地形場景的實際數據進行合理的組織以及調度,在保證瀏覽效果的同時,能夠切實有效的控制參與渲染的數據量,從根本上對其形成嚴格的控制;另外地形場景的高性能渲染技術是采用加速渲染的手段來進行,這樣有效的增加單位時間內三維地形的整體場景數據處理量,從而保證數據的處理效率和處理質量。
地形場景高性能渲染技術在簡化地形場景數據量的方面,一主要是利用LOD的方式來進行,LOD方式可以說是當前大規模條件下三維地形場景渲染的重點研究項目之一,而在實際的應用過程中,加速渲染主要是利用軟硬件的加速來實現其自身的加速,比如GPU加速技術、儲存訪問優化技術等等,其中還包括并行渲染技術,而在各種各樣的技術當中,并行渲染技術可以說是軟件加速方法當中最重要的組成部分之一,也是不可缺少的一項技術[1]。
二、并行渲染的分類和實現平臺
2.1并行渲染的分類體系
2.1.1基于數據調度和功能實現方式的分類分析
在計算機圖形學當中的并行渲染技術主要是為了能夠給三維地形提供渲染理論和技術基礎,而在實際的應用過程中,并行渲染的數據算法主要分為兩種,一種是數據并行算法,而另外一種則是功能并行算法。并行渲染的數據并行算法主要是在實際的計算過程中,將模型數據劃分成為多個數據流,之后給每一個數據流都分配相對應的圖形處理單元,這樣保證每一個數據流都能夠執行繪制任務,保證多個繪制過程共同執行的效果,在多個繪制過程共同實現的過程中,不僅包括對象并行,而且還包括圖形并行,這樣能夠有效的提高繪制效率,并且能夠保證繪制質量。而并行渲染的另外一個算法是功能并行算法,這種算法主要是將繪制流水線進行有效的分解,并且分解成不同的執行模塊,在實際的操作過程中,各個模塊可以順序性的處理各種各樣不同的數據,而模塊之間能夠形成并行執行的狀態,所以功能并行在一定程度上也可以稱之為流水線并行[2]。在三維地形場景當中,上述兩種并行方式可以相互配合混合使用,另外,在動畫影視領域當中經常會使用到時間的并行算法,時間并行算法主要是指對于不同的圖象處理單元需要負責不同幀的圖象生成,如圖1即為數據并行、功能并行以及集成并行的示意圖,其中P代表渲染點、G則是代表幾何的整個處理階段、而R則是代表著像素的整體處理階段。
2.2實現平臺
1、高性能計算機。為了能夠充分的保證高性能圖形工作站以及并行計算機的合理應用,能夠有效實現兩者的平臺就是高性能的計算機,而高性能的圖形工作站不僅具有多個CPU,而且還具備高性能的GPU,并且能夠將在日常當中使用的并行渲染技術集成到硬件的使用過程當中。而并行計算機不僅具備高通信寬待的能力,而且在一定程度上可以實現并行計算,所以其自身在并行計算機領域當中被廣泛應用的同時,在圖形并行渲染方面也被大力的宣傳和應用。而在高性能圖形工作站以及并行計算及的并行繪制系統的實際應用過程中,兩者主要是為了能夠針對一些比較高端的圖形應用來進行,其中還包括一些平臺設計、或者是一些具有特殊特點的應用,這種系統的可拓展性相對來說比較差,并且其自身的設備比較的昂貴,導致需要投入的資金金額比較大,所以在當前的市場上很難做到普及[3]。
2、計算機集群。計算機集群是建立在高速網絡平臺上的工作站或者是PC集群,其自身具有并行機的優勢和特點,并且具有多CPU的特征,是能夠保證三維圖形構建的有效措施之一,并且能夠構建并行繪制系統。計算機集群的靈活性能相對來說比較高,并且其自身的拓展性也比較良好,不僅有利于構建混合系統,而且能夠保證工作效率和質量的整體提高,計算機集群并行繪制系統的自身特點相對來說比較多,其中包括其自身的性價比比較高、可擴展性能比較良好,如今如此,計算機集群的并行繪制系統的升級相對來說比較的方便,并且能夠其自身的適用性比較的廣泛,但是在實際的使用過程中,仍然受到網絡寬待的限制,所以這也間接的導致數據通信成為渲染性能的阻礙影響。
3、多核微機。高性能計算機以及計算機集群這兩種并行渲染實現平臺,由于其自身的設備比較的昂貴,并且規模相對來說比較的龐大,所以對于個人使用來說,并不是很合適,而當前個人用戶對于三維圖形逼真度的要求也在不斷的提高,在這種形勢下,微機平臺上的并行渲染逐漸成為人們廣泛關注的熱點之一,但是當前多核微機并行渲染系統仍然處于探究、研發的階段。
三、地形場景數據并行調度
在實際的操作過程中,因為三維地形場景的數據規模相對來說比較的龐大,所以在實際的系統繪制過程中,并不可能一次性的將所有的數據都加載到內存當中進行妥善的處理,所以在這種形勢下,就需要對地形數據進行分頁或者是分塊的處理方式,并且能夠建立相對應的地形空間索引的方法,這樣能夠切實有效的保證地形數據的動態裝載,從而實現地形場景數據的并行調度。而在實際的操作過程中,利用地形數據的分頁或者是分塊方式不僅能夠有效的保證數據的并行調度有序展開,而且對于紋理的處理以及并行繪制方面來說都提供了一定的便利條件。其中數據分頁的方法主要是指將地形數據劃分成為多個數據頁,并且將每一個數據頁都作為地形場景當中的一個節點;而數據分塊則是指地形數據在被劃分成為數據頁之后,對其進行多個數據塊的劃分,并且將這些數據塊作為數據調度的最小單位,這樣能夠保證數據頁和數據塊的相互配合和作用[4]。但是在實際的操作過程中,由于地形的分塊粒度會受到各種各樣因素的限制,而分塊的粒度大小都會直接對系統的效率產生影響,所以當前并沒有實質性的標準來規定分塊的大小。
在實際地形場景數據調度的過程中,普遍情況下都會利用緩存技術,緩存技術主要是根據渲染的需求,將即將進行渲染的地形數據塊從外存妥善的調入到緩存當中,并且在實際的繪制過程中,將需要渲染的地形數據塊有緩存再調入到內存當中,在兩者準備完成之后,可以同時釋放掉內存當中并不需要的地形數據塊,這樣能夠保證不占內存。在數據的實際調度過程中,一般情況下都會采用多線程技術來對內存以及緩存當中的數據塊進行維護,從而有效的解決在緩沖區以及內存當中數據的整體更新問題,而在實際的地形數據渲染過程中,由于數據的調度線程以及數據的繪制線程是處于并行處理的狀態,所以能夠從根本上有效的提高地形渲染的整體性能[5]。
四、地形場景的并行渲染架構
4.1分布式渲染
在當前網絡技術的不斷發展、分布式計算機技術以及三維可視化技術的快速更新發展的影響下,在一定程度上為分布式的三維GIS技術能夠了一定的契機,在實際的操作過程中,為了能夠切實有效的針對大規模真實感的三維地形渲染所帶來的性能負擔,現如今已經有越來越多的三維瀏覽系統利用分布式的方式來對三維地形進行渲染,這不僅是當前的研究熱點之一,同時也是研究難點。
4.1.1客戶端、服務器模式
在分布式的渲染方式中,主要包括服務器和客戶端兩個方面,其中服務器主要是為了能夠針對客戶端所發送的一系列請求進行接受和處理,并且對三維模型數據進行分辨率、數據壓縮以及編碼等一系列的處理工作,服務器在三維渲染系統當中可以說是起到一個數據建模以及傳輸的作用;而客戶端主要是為了能夠保證模型數據的渲染,并且對其自身相對應的解壓縮以及重建工作,而在實際的應用過程中,客戶端和服務器為了能夠保證三維渲染系統的有效實現,利用的是數據處理與渲染過程分離的方式來進行并行渲染。
4.1.2微機集群模式
在微機集群模式不斷開發和利用的影響下,現如今大規模的三維地形也逐漸開始利用微機集群的模式來進行并行渲染,微機集群模式主要是利用主從結構來進行,也就是利用主控節點來對整個顯示系統進行宏觀的調控,比如網絡通信以及任務的分配等等,利用各個子節點來將場景拼接成為一個完整的顯示圖象,但是微機集群模式是需要依賴網絡傳輸寬待才能夠進行工作,其自身的性能完全的受制于網絡[6]。但是最近幾年,隨著科學技術的不斷發展和更新,P2P技術的出現,將微機集群模式的主控節點分配到可以直接處理模型數據以及客戶端的請求方面,并且在數據的實際傳輸過程中,模型數據可以利用多個客戶端之間相互分發所需要的數據的方式,利用這種方式不僅能夠有效的解決之前主控節點負擔過重的問題,而且能夠從根本上降低微機集群模式對于網絡的依賴性。
五、并行渲染技術現存的問題分析
1、根據上述內容不難看出,分布式特別是微機集群模式的并行渲染技術,在實際的渲染系統運行過程中,圖形的渲染過程需要大量的數據傳輸,而當前的網絡寬待很難滿足這種大數據量的數據傳輸,所以分布式以及微機集群模式的并行渲染技術,在當前仍然受到網絡款待的嚴重限制,并行渲染系統的功能性并不能夠切實有效的發揮出來。
2、而利用微機平臺實現三維地形場景并行渲染技術,主要是在操作系統提供多線程機制的條件下才能夠切實有效的展開,但是其自身并不能夠針對多核CPU或者是GPU的特點來形成專門的技術體系,導致其自身在應用的過程中,也受到一定的局限。
3、當前針對三維地形場景并行化的研究主要是渲染的管線部分實現并行,但是對于渲染管線的整體并行方面的研究力度仍然不足,缺少一定的理論支持以及技術討論[7]。
六、三維地形場景并行渲染的未來發展趨勢分析
1、計算機集群由于其自身的性價比以及可拓展性都比較好,并且升級方便、適用性也比較的廣泛,所以在未來并行渲染技術發展的過程中,計算機集群可以逐漸成為大規模三維地形場景并行渲染的主要展現方式之一,對其進行的研究也就不斷的重視起來,而對于網絡寬待的問題研究也將持續進行,這樣才能夠有效的緩解當前計算機集群在三維地形場景并行渲染應用過程中的一系列問題[8]。
2、多核微機平臺在其自身的未來發展趨勢中將會成為能夠實現三維地形并行渲染大規模三維場景的一個重要研究方向以及發展方向,由于多核微機和高性能圖形工作站以及并行計算及的體系結構方面存在著一定的差異性,由于高性能計算機的并行渲染算法不能夠直接應用到多核微機當中,所以針對多核微機的并行渲染平臺需要根據其自身的實際情況、組織調度以及相對應的方式方法來推行符合其自身的新型并行渲染算法。
結束語:當前,在大規模三維地形場景高性能渲染系統的開發以及應用過程中,主要是利用分布式的機制來切實有效的實現并行渲染,從根本上提高渲染性能,并且將并行渲染的作用力充分的發揮出來,而微機平臺可以說是三維地形場景當中使用最多的客戶端平臺,而在當前CPU以及高性能GPU自身儲存量的不斷提高,在微機上實行并行渲染也已經具備了一定的實現條件。
參 考 文 獻
[1]卓亞芳,趙友兵,石教英.實時地形繪制算法綜述[J].計算機仿真.2011(03)
[2]朱慶,龔俊,杜志強等.三維城市模型的多細節層次描述方法[J].武漢大學學報.信息科學版.2010(11)
[3]左志權,陳媛.TB級地形數據實時漫游核心算法研究[J].中國圖像圖形學報.2010(09)
[4]冷志光,湯曉安,郝建新等.大規模地形動態快速繪制技術研究[J].系統仿真學報.2011(10)
[5]潘少明,喻占武,王浩.基于節點分組的P2P海量地形數據共享機制[J].武漢大學學報.信息科學版.2011(06)
[6]劉揚,宮阿都,李京.基于數據分層分塊的海量三維地形四叉樹簡化模型[J].測繪學報.2010(04)
[7]段光明,李思昆,曾亮等.一種高效的大規模三維地形遙感影像紋理映射方法[J].系統仿真學報.2011(02)
[8]朱慶.3維地理信息系統技術綜述[J].地理信息世界.2010(03)