形成基于優化的多邊形的外殼網格的方法
【技術領域】
[0001]本發明大體上涉及計算機圖形學,并且更具體地,涉及用于形成三維圖形圖像的基于優化的多邊形的外殼網格(shell mesh)的計算機實現方法。本發明還涉及相應的圖像處理設備和計算機程序產品。
[0002]發明背景
[0003]人工計算機圖形學(CG)環境的創造和交互式可視化是計算機圖形學領域中的重要應用。許多應用(例如CAD、建筑漫游、仿真、醫學可視化和計算游戲)包括交互式導航,即,能夠以大于每秒10幀地圍繞計算機模型/場景移動。
[0004]交互式計算機圖形學領域內的總趨勢是CG數據集的不斷增加的量。大的CG數據集需要用于加快進程的專門的圖形系統。然而,即使運用現在的高端計算機硬件,現存的模型也不能以交互速度進行植染。由于CG數據的大小和輔助計算機(secondary computer)存儲器的大小以大于其相關硬件發展的速度在增長,因此計算機硬件的發展不大可能解決所描述的問題。
[0005]經常使用三角網格或甚至更普遍地使用多個多邊形來表示CG數據。這些網格通常不被優化用于顯示或仿真性能。在大部分應用中,初始網格通常可以被優化版所代替,其中優化版可以是具有少得多的面(face)的近似,或包含令其更適合例如上述的特定應用的其他特性。
[0006]為了避免計算速度的降低,經常使用以少量的三角形/多邊形提前構建三維CG數據的自動化技術。然而,即使使用了這些技術,對于現今的硬件來說仍然存在太多的多邊形需要去渲染。問題在于,例如在計算機游戲中的場景通常具有非常高深度的復雜性,即,在每個像素下有許多層幾何結構。
[0007]例如,包括計算機游戲的大場景的視覺圖像(比如,建筑物內部、城市、山等等)可能包含無數個需要繪制的多邊形。繪制如此大量的多邊形可能是超出許多當前的計算機硬件系統的能力的任務。這個問題的一個解決方案認識到通常這種場景中只有一小部分是實際上可見的。也就是說,包括場景的許多多邊形可能被其他多邊形隱藏或遮擋,或甚至是離視點太遠而無法完全辨認。
[0008]為了這個目的,并且尤其是對于復雜的多邊形結構,存在人工構建精簡結構的正常趨勢,其中精簡結構類似于復雜多邊形結構,但引入用于關于多邊形遮擋(常被稱為遮擋剔除(occlus1n culling))的確定過程的更低的計算成本。通過這個過程,可進一步改進場景的渲染。
[0009]然而,上述精簡結構的人工構建是繁瑣的過程,并且當例如制作計算機游戲等的時候將會降低速度且加大成本。另外,產生的精簡多邊形結構的質量受到構建多邊形結構的圖形藝術家技術的限制。因此,期望的是允許使得形成三維圖形圖像的基于優化的多邊形的外殼網格自動化,很可能在遮擋剔除過程中有用。
[0010]發明概述
[0011]根據本發明的第一方面,通過用于形成三維圖形圖像的基于優化的多邊形的外殼網格的計算機實現方法來至少在一定程度上減輕了上述問題,該方法包括:獲取三維圖形圖像,該三維圖形圖像用初始多邊形網格來表示;確定初始多邊形網格的三維輪廓;沿著初始多邊形網格的三維輪廓的法線將多邊形網格的尺寸調整預定量,經尺寸調整的多邊形網格具有大于或小于初始多邊形網格的三維輪廓的三維輪廓;如果經尺寸調整的多邊形網格的三維輪廓大于初始多邊形網格的三維輪廓,那么通過運用多邊形優化過程調整經尺寸調整的多邊形網格的三維輪廓來形成優化的外殼網格,其中優化的外殼網格圍住初始多邊形網格的三維輪廓的預定的大部分;或者如果經尺寸調整的多邊形網格的三維輪廓小于初始多邊形網格的三維輪廓,那么通過運用多邊形優化過程調整經尺寸調整的多邊形網格的三維輪廓來形成外殼網格,其中外殼網格的預定的大部分被初始多邊形網格的三維輪廓圍住。
[0012]通過本發明,能夠使得三維圖形圖像的基于多邊形的外殼網格的形成自動化。本發明的主要優勢在于,其能夠確保產生的外殼網格關于其初始三維輪廓具有預定的限制,SP,通常(至少在某些位置上)大于或小于初始三維圖形圖像的三維輪廓。
[0013]通過能夠確保這種結果在預定的范圍內(即,外殼網格的預定的大部分被初始多邊形網格圍住或圍住初始多邊形網格),產生的外殼網格可能在例如遮擋剔除過程中特別有用。
[0014]根據本發明,應理解的是,“沿著初始多邊形網格的三維輪廓的法線將多邊形網格的尺寸調整預定量”的表達本質上對應于:如果“向內”調整多邊形網格的尺寸,則“剝去”預定量的多邊形網格的外層。如果“向外”調整多邊形網格的尺寸,則執行相反的動作,即,在多邊形網格的外邊“加上”另外一層。由于多邊形優化過程被指定了其中可進行優化過程的“范圍”,因此該過程提供之后的多邊形優化過程以進一步提高其優化。而且,應廣義地詮釋“多邊形優化過程”的表達。也就是說,根據本發明,產生的外殼網格被布置成與初始三維圖形圖像的多邊形網格相比包括更少數量的多邊形。相應地,術語“優化的”可能取決于例如用于執行多邊形簡化過程的用戶約束集。
[0015]如上簡要討論的,遮擋剔除是當物體由于被其他物體遮蔽而當前無法從特定視點看見的時候使不能渲染這些物體的特征。根據本發明的方法,在遮擋剔除過程中,大于初始三維圖形圖像的三維輪廓的外殼網格被提供作為“被遮擋物”,而小于初始三維圖形圖像的三維輪廓的外殼網格被提供作為“遮擋物”。如所理解的,遮擋物被提供用于“隱藏”被遮擋物。
[0016]然而,應注意的是,產生的外殼網格還可能例如對于基于物理學的仿真和計算有用。
[0017]此外,憑借以高達預定程度確保外殼網格大于或小于初始三維圖形圖像的三維輪廓的可能性,有可能還確保了由根據本發明形成的被遮擋物表示的三維圖形圖像實際上將(根據上述“富余部分”(slack)以高達預定程度地)被隱藏在由同樣根據本發明形成的遮擋物表示的三維圖形圖像的后面。
[0018]如所理解的,本發明的方法關于產生的外殼網格通常相當保守。也就是說,產生的外殼網格大于或小于初始多邊形網格。因此,允許相對于產生的外殼網格有至少一些富余部分可以是恰當的。相應地,盡管產生的外殼網格的大部分大于或小于初始多邊形網格,但是產生的外殼網格的預定部分(可能5-15%)可能因此在初始三維圖形圖像的三維輪廓的“里面”或“外面”(取決于是大于還是小于初始三維圖形圖像的三維輪廓)。通過例如用戶控制用于執行本發明方法的計算機可動態地改變富余部分的量,即,確定應以多大“寬限(grace)”相對于初始多邊形網格確定產生的外殼網格。允許上面討論的富余部分可使得多邊形優化過程在減少產生的外殼網格中的多邊形數量的可能性方面進一步提高。
[0019]可選擇地,優化的外殼網格可被布置為圍住初始多邊形網格的整個三維輪廓。同樣地,外殼網格可被布置以被初始多邊形網格的三維輪廓完全圍住。
[0020]在本發明的上下文范圍中應理解的是,因為當被外面的觀察者觀看的時候,三維輪廓可被視為“視角無關的側影(view independent silhouette) ”,因此確定初始多邊形網格的三維輪廓通常可移除初始三維圖形圖像表面上的任何凹處。也即是,該三維輪廓將被詮釋為從初始三維圖形圖像所有側面看過去的側影。在形成被遮擋物時,可僅可選地進行側影減少。
[0021]此外,應注意,可在(整個)初始三維圖像上均勻地進行尺寸調整。然而,基于初始三維圖像的類型,可能有必要限制尺寸調整,從而不發生自交現象。尺寸調整還可是視點相關的,且也是物體相關的,從而不同類型的物體和/或從不同視點觀看到的可取決于所發生的預定量的尺寸調整。
[0022]在本發明的上下文范圍中,進行多邊形優化過程的概念通常包括形成“精簡的”外殼網格,其中多邊形的數量被充分減少(即,使用本領域已知的任何自動化的多邊形簡化處理),以便以如下的方式精簡外殼網格:在中間渲染/確定過程中使用產生的外殼網格,該方式與使用初始多邊形網格進行渲染/確定相比,從計算的角度看是有利的。而且,形成外殼網格的過程通常被執行以用于高分辨率的三維圖形圖像(例如,計算機游戲中的“資產”),但可有利地還關于多邊形有所減少的三維圖像(即,LOD)進行使用。
[0023]此外,還可優選地引入在其內部可以進行多邊形優化過程的“內邊界”。該內邊界可以例如用與以下方式相似的方式來確定:沿著初始多邊形網格的三維輪廓的法線(向內)將多邊形網格的尺寸調整預定量。可能地,該內邊界可被設置有從如關于經尺寸調整的多邊形網格的三維輪廓(進一步)向內的預定量。
[0024]根據本發明的另一個方面,提供了用于形成三維圖形圖像的基