欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種虛擬動(dòng)態(tài)群體的可見性判斷方法

文檔序號(hào):6464171閱讀:207來源:國知局

專利名稱::一種虛擬動(dòng)態(tài)群體的可見性判斷方法
技術(shù)領(lǐng)域
:本發(fā)明涉及虛擬現(xiàn)實(shí)領(lǐng)域,特別涉及一種對虛擬動(dòng)態(tài)群體進(jìn)行繪制時(shí)的可見性判斷方法。
背景技術(shù)
:在利用虛擬現(xiàn)實(shí)技術(shù)對大規(guī)模復(fù)雜場景進(jìn)行三維可視化時(shí),涉及到針對復(fù)雜場景的實(shí)時(shí)繪制技術(shù),可見性判斷一直是實(shí)時(shí)繪制領(lǐng)域一個(gè)非常重要的研究課題。由于復(fù)雜場景中通常有很大一部分處于視域外、被遮擋等不可見的狀態(tài),避免對其進(jìn)行計(jì)算和繪制能節(jié)省相當(dāng)大的工作量,使實(shí)時(shí)繪制效率得到提高。然而,在許多實(shí)際應(yīng)用中,復(fù)雜場景不僅僅包括靜態(tài)的環(huán)境模型,還包括大規(guī)模的動(dòng)態(tài)群體,它們?yōu)閱我坏撵o態(tài)場景帶來了勃勃生氣。例如,在安全預(yù)演中,對安全預(yù)案的模擬需要大量虛擬人群作為主體;在虛擬城市中,展現(xiàn)出安居樂業(yè)的城市居民和興致勃勃的游客也能給城市增添活力;在游戲中,更是需要實(shí)時(shí)渲染大量游戲角色的群體運(yùn)動(dòng),等等。但為了滿足逼真性的要求,虛擬群體通常具有龐大的數(shù)量以及不斷變化的位置和動(dòng)作,使得整體場景的空間結(jié)構(gòu)不斷發(fā)生變化,可見性狀態(tài)也變得非常不穩(wěn)定,這為實(shí)時(shí)可見性判斷的處理帶來了困難。因此研究大規(guī)模動(dòng)態(tài)群體的可見判斷方法不僅具有廣泛的應(yīng)用領(lǐng)域和重要的實(shí)用價(jià)值,也具有重大的理論意義。目前,大規(guī)模場景實(shí)時(shí)繪制的可見性方法研究中,針對動(dòng)態(tài)群體,尤其是大規(guī)模動(dòng)態(tài)群體的研究還比較少。由于這些方法考慮的動(dòng)態(tài)群體比較少,因此通常采用實(shí)時(shí)更新場景數(shù)據(jù)結(jié)構(gòu)的方法,也就是在每幀繪制前更新場景中動(dòng)態(tài)物體的位置等信息,然后采用通常的靜態(tài)場景可見性計(jì)算方法進(jìn)行剔除。由于三維空間位置關(guān)系的復(fù)雜性和多樣性,這個(gè)過程需要的計(jì)算量往往非常大,尤其對于規(guī)模龐大的動(dòng)態(tài)群體,這種更新對實(shí)時(shí)計(jì)算帶來很大的困難。
發(fā)明內(nèi)容本發(fā)明的目的是克服現(xiàn)有的虛擬動(dòng)態(tài)群體的可見性判斷方法的計(jì)算量過大,不適合于規(guī)模龐大的虛擬動(dòng)態(tài)群體的缺陷,從而提供一種高效、快速的可見性判斷方法。為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種虛擬動(dòng)態(tài)群體的可見性判斷方法,根據(jù)群體仿真數(shù)據(jù)對虛擬動(dòng)態(tài)群體中的各個(gè)個(gè)體的可見性進(jìn)行判斷;其中,所述的群體仿真數(shù)據(jù)包括個(gè)體、所述個(gè)體在某一時(shí)刻的位置、所述個(gè)體在某一時(shí)刻所對應(yīng)的場景節(jié)點(diǎn)的ID;所述方法包括1)、對靜態(tài)場景進(jìn)行可見性剔除,將每一幀的可見性結(jié)果實(shí)時(shí)更新到節(jié)點(diǎn)可見性信息數(shù)組中;2)、將所述仿真數(shù)據(jù)中的所述個(gè)體與所述場景節(jié)點(diǎn)ID所對應(yīng)的場景節(jié)點(diǎn)相結(jié)合,然后根據(jù)所述節(jié)點(diǎn)可見性信息數(shù)組中場景節(jié)點(diǎn)的可見性,實(shí)現(xiàn)對所述個(gè)體的可見性剔除。上述技術(shù)方案中,所述的群體仿真數(shù)據(jù)通過對只包含有個(gè)體、所述個(gè)體在某一時(shí)刻的位置的現(xiàn)有數(shù)據(jù)進(jìn)行預(yù)處理,將所述個(gè)體與所述場景節(jié)點(diǎn)相關(guān)聯(lián),使得在現(xiàn)有數(shù)據(jù)中添加所述個(gè)體在某一時(shí)刻所對應(yīng)的場景節(jié)點(diǎn)的ID。上述技術(shù)方案中,其特征在于,所述的場景節(jié)點(diǎn)由對場景進(jìn)行軸向的空間分割得到。上述技術(shù)方案中,在所述的空間分割過程中,空間分割所得的最小空間的體積應(yīng)大于群體仿真數(shù)據(jù)中的個(gè)體的包圍盒的體積;所述空間分割的結(jié)果對應(yīng)相應(yīng)的場景節(jié)點(diǎn),為每個(gè)所述的場景節(jié)點(diǎn)標(biāo)記一個(gè)唯一的場景節(jié)點(diǎn)ID。上述技術(shù)方案中,所述的場景節(jié)點(diǎn)根據(jù)相互間的位置關(guān)系組織成層次化的場景樹。上述技術(shù)方案中,所述的場景樹包括場景二叉樹、場景四叉樹、場景八叉樹。上述技術(shù)方案中,根據(jù)所述的場景樹,采用場景樹遍歷的方式將所述個(gè)體與所述場景節(jié)點(diǎn)相關(guān)聯(lián)。上述技術(shù)方案中,所述的場景樹遍歷方式包括步驟a)、將場景樹的根節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn);步驟b)、根據(jù)所述群體仿真數(shù)據(jù)中個(gè)體的位置坐標(biāo)計(jì)算所述個(gè)體當(dāng)前的包圍盒,比較所述個(gè)體包圍盒與當(dāng)前節(jié)點(diǎn)包圍盒的空間關(guān)系按以下情況分別處理步驟b-l)、如果當(dāng)前節(jié)點(diǎn)為根節(jié)點(diǎn),且根節(jié)點(diǎn)不能完全包含個(gè)體包圍盒,則記錄該位置對應(yīng)的場景節(jié)點(diǎn)ID為空,同時(shí)結(jié)束查找該位置點(diǎn)的關(guān)聯(lián)節(jié)點(diǎn);否則以根節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟b)的操作;步驟b-2)、如果當(dāng)前節(jié)點(diǎn)是葉子節(jié)點(diǎn),且該葉子節(jié)點(diǎn)包含該個(gè)體包圍盒,則直接記錄此葉子節(jié)點(diǎn)的ID為該個(gè)體位置對應(yīng)的場景節(jié)點(diǎn)ID,同時(shí)結(jié)束查找該位置的關(guān)聯(lián)節(jié)點(diǎn);否則記錄其父節(jié)點(diǎn)ID為該位置對應(yīng)的場景節(jié)點(diǎn)ID,同時(shí)結(jié)束查找;步驟b-3)、如果當(dāng)前節(jié)點(diǎn)既不是根節(jié)點(diǎn)也不是葉子節(jié)點(diǎn),且當(dāng)前節(jié)點(diǎn)不能完全包含個(gè)體,則以當(dāng)前節(jié)點(diǎn)的兄弟節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟b)的操作;否則以當(dāng)前節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟b)的操作;步驟b-4):當(dāng)某層所有兄弟節(jié)點(diǎn)都不能包含該個(gè)體包圍盒時(shí),返回上層,記錄其父節(jié)點(diǎn)ID為該位置對應(yīng)的場景節(jié)點(diǎn)ID,并結(jié)束查找該位置的關(guān)聯(lián)節(jié)點(diǎn);步驟c):對其它位置點(diǎn)重復(fù)步驟b)的操作直到所有位置點(diǎn)全部處理*t匕幾午。上述技術(shù)方案中,在所述的步驟1)中,采用靜態(tài)場景可見性判斷方法對靜態(tài)場景進(jìn)行可見性剔除。上述技術(shù)方案中,所述的步驟2)包括步驟2-1)、根據(jù)所述預(yù)處理步驟所得到的記錄有場景節(jié)點(diǎn)ID的群體仿真數(shù)據(jù),提取各個(gè)個(gè)體在各個(gè)時(shí)刻的場景節(jié)點(diǎn)ID;步驟2-2)、在虛擬過程中的某一時(shí)刻,將所述個(gè)體與所述場景節(jié)點(diǎn)ID所指的場景節(jié)點(diǎn)對應(yīng)起來;步驟2-3)、根據(jù)所述的場景節(jié)點(diǎn)ID從所述的節(jié)點(diǎn)可見性信息數(shù)組中讀取所述場景節(jié)點(diǎn)的可見性,并用所述可見性指導(dǎo)與所述場景節(jié)點(diǎn)所對應(yīng)的所述個(gè)體的可見性剔除。本發(fā)明的優(yōu)點(diǎn)在于1、本發(fā)明的方法將群體中的個(gè)體作為其相應(yīng)場景節(jié)點(diǎn)的一份子,直接將場景的可見性賦予到個(gè)體身上,避免了單獨(dú)對數(shù)量巨大的個(gè)體進(jìn)行可見性判斷,大大減少了空間數(shù)據(jù)結(jié)構(gòu)更新和個(gè)體遮擋查詢帶來的消耗。2、本發(fā)明的方法采用了離線的思想,將節(jié)點(diǎn)綁定等工作放在預(yù)處理階段完成,運(yùn)行時(shí)只需讀取屬性進(jìn)行判斷即可,在有效剔除個(gè)體的同時(shí)也為實(shí)時(shí)繪制節(jié)省了大量的計(jì)算時(shí)間,可以有效提高系統(tǒng)的繪制速度。3、本發(fā)明的方法可以運(yùn)用到不同類型的動(dòng)態(tài)物體上,有較強(qiáng)的適應(yīng)性。以下,結(jié)合附圖來詳細(xì)說明本發(fā)明的實(shí)施例,其中圖1為采用本發(fā)明的方法進(jìn)行虛擬人可見性判斷的一個(gè)實(shí)例;圖2為本發(fā)明的方法中對空間進(jìn)行分割進(jìn)而得到場景二叉樹的示意圖3為本發(fā)明的方法的流程圖。具體實(shí)施例方式本發(fā)明的虛擬動(dòng)態(tài)群體的可見性判斷方法是要在仿真過程中將個(gè)體與場景節(jié)點(diǎn)相結(jié)合,然后通過對場景節(jié)點(diǎn)的可見性判斷,從而實(shí)現(xiàn)對個(gè)體的可見性判斷。在下面的實(shí)施例中,以虛擬人為例,結(jié)合圖3對如何實(shí)現(xiàn)虛擬人群的可見性判斷的實(shí)現(xiàn)過程進(jìn)行詳細(xì)說明。虛擬人群運(yùn)動(dòng)的實(shí)現(xiàn)過程都是在群體仿真數(shù)據(jù)的基礎(chǔ)上實(shí)現(xiàn)的。群體空間位置的數(shù)據(jù)。在下面的表1中給出了現(xiàn)有的群體仿真數(shù)據(jù)的一個(gè)示例,該例子給出了個(gè)體m在不同時(shí)刻所處的空間位置以及屬性,所述的屬性包括停留時(shí)間、運(yùn)動(dòng)狀態(tài)等信息。表1<table>tableseeoriginaldocumentpage8</column></row><table>從前面的描述中可以知道,本發(fā)明的方法需要將個(gè)體與場景節(jié)點(diǎn)相結(jié)合,而在上述的現(xiàn)有群體仿真數(shù)據(jù)中,并沒有包含與場景節(jié)點(diǎn)相關(guān)的數(shù)據(jù),因此,需要對現(xiàn)有的群體仿真數(shù)據(jù)進(jìn)行改進(jìn),在數(shù)據(jù)中添加與場景節(jié)點(diǎn)相關(guān)的內(nèi)容,從而為可見性判斷提供良好的基礎(chǔ)。在表2中給出了添加有場景節(jié)點(diǎn)信息的群體仿真數(shù)據(jù)的一個(gè)實(shí)例。表2<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage8</column></row><table>如表2所述的改進(jìn)后的群體仿真數(shù)據(jù)可以通過不同的途徑獲得,為了方便理解,下面對其中的一種獲取方式進(jìn)行說明。步驟ll)、為仿真數(shù)據(jù)中每個(gè)位置點(diǎn)預(yù)設(shè)一個(gè)空間屬性,用以記錄其關(guān)聯(lián)的場景節(jié)點(diǎn)ID;步驟12)、對場景進(jìn)行軸向的二叉空間分割,組織成層次化的場景二叉樹,并且使得位于場景二叉樹層次最底端的節(jié)點(diǎn)(即葉子節(jié)點(diǎn))的包圍盒能夠容納個(gè)體的包圍盒。對于場景二叉樹中的每個(gè)節(jié)點(diǎn),計(jì)算其軸向包圍盒,并且賦予唯一的一個(gè)數(shù)字作為該節(jié)點(diǎn)的ID,對其進(jìn)行標(biāo)識(shí)。在圖2中以二叉分割為例,給出了一個(gè)對場景進(jìn)行空間分割的示意性實(shí)例,從圖中可以看出,對于一個(gè)場景空間進(jìn)行二叉空間分割的過程中,按照空間體積的多少從大到小進(jìn)行分割,并根據(jù)分割后的最終結(jié)果為每個(gè)場景分配相應(yīng)的節(jié)點(diǎn)ID,并通過場景二叉樹反映場景間相互關(guān)系。對于場景如何進(jìn)行軸向的空間分割屬于成熟的現(xiàn)有技術(shù),對于具體的實(shí)現(xiàn)細(xì)節(jié),在此不再重復(fù)說明。步驟13)、將個(gè)體按照空間位置與場景節(jié)點(diǎn)相關(guān)聯(lián),具體的說,對于每個(gè)位置上的個(gè)體,需要在場景樹中找到一個(gè)包圍盒最小的節(jié)點(diǎn),使得個(gè)體的包圍盒在該節(jié)點(diǎn)的包圍盒內(nèi)部,從而將個(gè)體的可見性與對應(yīng)場景的可見性統(tǒng)一起來。在上述的步驟13)中,要實(shí)現(xiàn)個(gè)體與場景節(jié)點(diǎn)間的關(guān)聯(lián)是通過對場景二叉樹進(jìn)行遍歷得到的,這一遍歷過程具體包括步驟131)、把場景二叉樹的根節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn);步驟132)、根據(jù)個(gè)體的位置坐標(biāo)計(jì)算其當(dāng)前的包圍盒,比較該個(gè)體包圍盒(簡稱個(gè)體)與當(dāng)前節(jié)點(diǎn)包圍盒(簡稱節(jié)點(diǎn))的空間關(guān)系,按以下情況分別處理a)、如果當(dāng)前節(jié)點(diǎn)為根節(jié)點(diǎn),且根節(jié)點(diǎn)不能完全包含個(gè)體包圍盒,則記錄該位置對應(yīng)的場景節(jié)點(diǎn)ID為空,同時(shí)結(jié)束查找該位置點(diǎn)的關(guān)聯(lián)節(jié)點(diǎn);否則以根節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟132)的操作;b)、如果當(dāng)前節(jié)點(diǎn)是葉子節(jié)點(diǎn),且該葉子節(jié)點(diǎn)包含該個(gè)體包圍盒,則直接記錄此葉子節(jié)點(diǎn)的ID為該個(gè)體位置對應(yīng)的場景節(jié)點(diǎn)ID,同時(shí)結(jié)束查找該位置的關(guān)聯(lián)節(jié)點(diǎn);否則記錄其父節(jié)點(diǎn)ID為該位置對應(yīng)的場景節(jié)點(diǎn)ID,同時(shí)結(jié)束查找;c)、如果當(dāng)前節(jié)點(diǎn)既不是根節(jié)點(diǎn)也不是葉子節(jié)點(diǎn),且當(dāng)前節(jié)點(diǎn)不能完全包含個(gè)體,則以當(dāng)前節(jié)點(diǎn)的兄弟節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟132)的操作;否則以當(dāng)前節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟132)的操作;d):當(dāng)某層所有兄弟節(jié)點(diǎn)都不能包含該個(gè)體包圍盒時(shí),返回上層,記錄其父節(jié)點(diǎn)ID為該位置對應(yīng)的場景節(jié)點(diǎn)ID,并結(jié)束查找該位置的關(guān)聯(lián)節(jié)點(diǎn);步驟133):對其它位置點(diǎn)重復(fù)步驟132)的操作直到所有位置點(diǎn)全部處理完畢。上述步驟對如何得到改進(jìn)后的群體仿真數(shù)據(jù)進(jìn)行了說明,但如前所述,這只是其中的一種獲取方式,在實(shí)際應(yīng)用中還存在其他的實(shí)現(xiàn)方式,例如,在空間分割和場景樹的獲取過程中不僅僅包括上述步驟中的二叉空間分割和場景二叉樹,還可以采用其它類型的空間分割方法,從而得到場景四叉樹或場景八叉樹等。上述說明中所提到的對群體仿真數(shù)據(jù)進(jìn)行改進(jìn),從而將個(gè)體與場景節(jié)點(diǎn)相結(jié)合的方法可以在對個(gè)體的可見性進(jìn)行實(shí)時(shí)判斷前實(shí)現(xiàn),即可以通過一個(gè)預(yù)處理操作完成對群體仿真數(shù)據(jù)的改進(jìn),這樣做有利于節(jié)省虛擬動(dòng)態(tài)群體所需要耗費(fèi)的總體時(shí)間。得到改進(jìn)的群體仿真數(shù)據(jù)后,對個(gè)體的可見性進(jìn)行實(shí)時(shí)判斷,包括以下步驟步驟21)、使用傳統(tǒng)的靜態(tài)場景可見性判斷方法對靜態(tài)場景進(jìn)行可見性剔除,并將每一幀的可見性結(jié)果實(shí)時(shí)更新到節(jié)點(diǎn)可見性信息數(shù)組中。步驟22)、根據(jù)預(yù)處理步驟所得到的更新后的群體仿真數(shù)據(jù),得到各個(gè)個(gè)體在各個(gè)時(shí)刻的場景節(jié)點(diǎn)ID;步驟23)、當(dāng)虛擬過程中的時(shí)間運(yùn)行到某時(shí)刻時(shí),從群體仿真數(shù)據(jù)中分別讀出各個(gè)個(gè)體和其對應(yīng)的場景節(jié)點(diǎn)ID,并將個(gè)體與ID所指的場景節(jié)點(diǎn)只十應(yīng)起來;步驟24)、根據(jù)ID從節(jié)點(diǎn)可見性信息數(shù)組中讀取各個(gè)場景節(jié)點(diǎn)的可見性,若不可見,則不對其對應(yīng)的個(gè)體做任何的計(jì)算和繪制處理,若可見,則進(jìn)行后續(xù)的計(jì)算和繪制。以圖1為例,假設(shè)預(yù)處理時(shí),個(gè)體m在某時(shí)刻被綁定到ID為k的節(jié)點(diǎn)上,則當(dāng)虛擬過程運(yùn)行到這一時(shí)刻時(shí),從仿真數(shù)據(jù)中讀取個(gè)體m并綁定到節(jié)點(diǎn)k上;由于在節(jié)點(diǎn)可見性信息數(shù)組中所讀取的第k項(xiàng)的可見性狀態(tài)是0,即不可見;因此返回不可見信息,該幀不再對該個(gè)體作任何計(jì)算和繪制處理。在上述實(shí)施例中,將虛擬人作為所要虛擬的動(dòng)態(tài)群體,對其可見性判斷過程進(jìn)行了說明,但本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)了解,本發(fā)明的方法并不局限于對虛擬人,對于其他的動(dòng)態(tài)群體同樣也可以使用。最后所應(yīng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制。盡管參照實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,都不脫離本發(fā)明技術(shù)方案的精神和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。權(quán)利要求1、一種虛擬動(dòng)態(tài)群體的可見性判斷方法,根據(jù)群體仿真數(shù)據(jù)對虛擬動(dòng)態(tài)群體中的各個(gè)個(gè)體的可見性進(jìn)行判斷;其中,所述的群體仿真數(shù)據(jù)包括個(gè)體、所述個(gè)體在某一時(shí)刻的位置、所述個(gè)體在某一時(shí)刻所對應(yīng)的場景節(jié)點(diǎn)的ID;所述方法包括1)、對靜態(tài)場景進(jìn)行可見性剔除,將每一幀的可見性結(jié)果實(shí)時(shí)更新到節(jié)點(diǎn)可見性信息數(shù)組中;2)、將所述仿真數(shù)據(jù)中的所述個(gè)體與所述場景節(jié)點(diǎn)ID所對應(yīng)的場景節(jié)點(diǎn)相結(jié)合,然后根據(jù)所述節(jié)點(diǎn)可見性信息數(shù)組中場景節(jié)點(diǎn)的可見性,實(shí)現(xiàn)對所述個(gè)體的可見性剔除。2、根據(jù)權(quán)利要求1所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,所述的群體仿真數(shù)據(jù)通過對只包含有個(gè)體、所述個(gè)體在某一時(shí)刻的位置的現(xiàn)有數(shù)據(jù)進(jìn)行預(yù)處理,將所述個(gè)體與所述場景節(jié)點(diǎn)相關(guān)聯(lián),使得在現(xiàn)有數(shù)據(jù)中添加所述個(gè)體在某一時(shí)刻所對應(yīng)的場景節(jié)點(diǎn)的ID。3、根據(jù)權(quán)利要求1所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,所述的場景節(jié)點(diǎn)由對場景進(jìn)行軸向的空間分割得到。4、根據(jù)權(quán)利要求2所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,在所述的空間分割過程中,空間分割所得的最小空間的體積應(yīng)大于群體仿真數(shù)據(jù)中的個(gè)體的包圍盒的體積;所述空間分割的結(jié)果對應(yīng)相應(yīng)的場景節(jié)點(diǎn),為每個(gè)所述的場景節(jié)點(diǎn)標(biāo)記一個(gè)唯一的場景節(jié)點(diǎn)ID。5、根據(jù)權(quán)利要求4所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,所述的場景節(jié)點(diǎn)根據(jù)相互間的位置關(guān)系組織成層次化的場景樹。6、根據(jù)權(quán)利要求5所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,所述的場景樹包括場景二叉樹、場景四叉樹、場景八叉樹。7、根據(jù)權(quán)利要求5所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,根據(jù)所述的場景樹,采用場景樹遍歷的方式將所述個(gè)體與所述場景節(jié)點(diǎn)相關(guān)聯(lián)。8、根據(jù)權(quán)利要求7所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,所述的場景樹遍歷方式包括步驟a)、將場景樹的根節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn);步驟b)、根據(jù)所述群體仿真數(shù)據(jù)中個(gè)體的位置坐標(biāo)計(jì)算所述個(gè)體當(dāng)前的包圍盒,比較所述個(gè)體包圍盒與當(dāng)前節(jié)點(diǎn)包圍盒的空間關(guān)系按以下情況分別處理步驟b-l)、如果當(dāng)前節(jié)點(diǎn)為根節(jié)點(diǎn),且根節(jié)點(diǎn)不能完全包含個(gè)體包圍盒,則記錄該位置對應(yīng)的場景節(jié)點(diǎn)ID為空,同時(shí)結(jié)束查找該位置點(diǎn)的關(guān)聯(lián)節(jié)點(diǎn);否則以根節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟b)的操作;步驟b-2)、如果當(dāng)前節(jié)點(diǎn)是葉子節(jié)點(diǎn),且該葉子節(jié)點(diǎn)包含該個(gè)體包圍盒,則直接記錄此葉子節(jié)點(diǎn)的ID為該個(gè)體位置對應(yīng)的場景節(jié)點(diǎn)ID,同時(shí)結(jié)束查找該位置的關(guān)聯(lián)節(jié)點(diǎn);否則記錄其父節(jié)點(diǎn)ID為該位置對應(yīng)的場景節(jié)點(diǎn)ID,同時(shí)結(jié)束查找;步驟b-3)、如果當(dāng)前節(jié)點(diǎn)既不是根節(jié)點(diǎn)也不是葉子節(jié)點(diǎn),且當(dāng)前節(jié)點(diǎn)不能完全包含個(gè)體,則以當(dāng)前節(jié)點(diǎn)的兄弟節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟b)的操作;否則以當(dāng)前節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟b)的操作;步驟b-4):當(dāng)某層所有兄弟節(jié)點(diǎn)都不能包含該個(gè)體包圍盒時(shí),返回上層,記錄其父節(jié)點(diǎn)ID為該位置對應(yīng)的場景節(jié)點(diǎn)ID,并結(jié)束查找該位置的關(guān)聯(lián)節(jié)點(diǎn);步驟c):對其它位置點(diǎn)重復(fù)步驟b)的操作直到所有位置點(diǎn)全部處理完畢。9、根據(jù)權(quán)利要求1所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,在所述的步驟1)中,釆用靜態(tài)場景可見性判斷方法對靜態(tài)場景進(jìn)行可見性剔除。10、根據(jù)權(quán)利要求1所述的虛擬動(dòng)態(tài)群體的可見性判斷方法,其特征在于,所述的步驟2)包括步驟2-1)、根據(jù)所述預(yù)處理步驟所得到的記錄有場景節(jié)點(diǎn)ID的群體仿真數(shù)據(jù),提取各個(gè)個(gè)體在各個(gè)時(shí)刻的場景節(jié)點(diǎn)ID;步驟2-2)、在虛擬過程中的某一時(shí)刻,將所述個(gè)體與所述場景節(jié)點(diǎn)ID所指的場景節(jié)點(diǎn)對應(yīng)起來;步驟2-3)、根據(jù)所述的場景節(jié)點(diǎn)ID從所述的節(jié)點(diǎn)可見性信息數(shù)組中讀取所述場景節(jié)點(diǎn)的可見性,并用所述可見性指導(dǎo)與所述場景節(jié)點(diǎn)所對應(yīng)的所述個(gè)體的可見性剔除。全文摘要本發(fā)明提供一種虛擬動(dòng)態(tài)群體的可見性判斷方法,用于在群體仿真數(shù)據(jù)的基礎(chǔ)上對虛擬動(dòng)態(tài)群體中的各個(gè)個(gè)體的可見性進(jìn)行判斷;其中,的群體仿真數(shù)據(jù)包括個(gè)體、個(gè)體在某一時(shí)刻的位置、個(gè)體在某一時(shí)刻所對應(yīng)的場景節(jié)點(diǎn)的ID;方法包括對靜態(tài)場景進(jìn)行可見性剔除,將每一幀的可見性結(jié)果實(shí)時(shí)更新到節(jié)點(diǎn)可見性信息數(shù)組中;將仿真數(shù)據(jù)中的個(gè)體與場景節(jié)點(diǎn)ID所對應(yīng)的場景節(jié)點(diǎn)相結(jié)合,然后根據(jù)節(jié)點(diǎn)可見性信息數(shù)組中場景節(jié)點(diǎn)的可見性,實(shí)現(xiàn)對個(gè)體的可見性剔除。本發(fā)明的方法將群體中的個(gè)體作為其相應(yīng)場景節(jié)點(diǎn)的一份子,直接將場景的可見性賦予到個(gè)體身上,避免了單獨(dú)對數(shù)量巨大的個(gè)體進(jìn)行可見性判斷,大大減少了空間數(shù)據(jù)結(jié)構(gòu)更新和個(gè)體遮擋查詢帶來的消耗。文檔編號(hào)G06T15/00GK101339667SQ20081011306公開日2009年1月7日申請日期2008年5月27日優(yōu)先權(quán)日2008年5月27日發(fā)明者徐文彬,搏束,竹王,王兆其申請人:中國科學(xué)院計(jì)算技術(shù)研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
兴宁市| 安阳县| 都安| 安化县| 新河县| 张掖市| 古蔺县| 大石桥市| 高淳县| 甘肃省| 当雄县| 麻江县| 大余县| 鹤山市| 河北区| 始兴县| 榕江县| 汉沽区| 宁乡县| 兴安县| 浏阳市| 南召县| 双桥区| 康乐县| 仁寿县| 青浦区| 电白县| 商城县| 同江市| 福安市| 利津县| 莱西市| 杨浦区| 吉木萨尔县| 三原县| 临高县| 五峰| 周至县| 大化| 文水县| 丹巴县|