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

一種快速載入虛擬場景的方法

文檔序號:6471153閱讀:167來源:國知局
專利名稱:一種快速載入虛擬場景的方法
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬場景技術(shù)領(lǐng)域,具體涉及一種快速載入虛擬場景的方法。
背景技術(shù)
OpenSceneGr即h(簡寫為0SG)是業(yè)內(nèi)領(lǐng)先的開放源代碼場景圖技術(shù),用于開發(fā)和 改進(jìn)的三維圖形性能。很多虛擬場景模擬軟件,如scanerDT采用的是OSG內(nèi)核,如OSG 1.2 內(nèi)核。 OSG 1.2內(nèi)核在設(shè)計時,設(shè)計成一次只能載入一個場景文件。例如,在汽車模擬 駕駛場景中,除了道路場景數(shù)據(jù)外,還會載入大量的其它車輛、行人以及路旁景觀等外部數(shù) 據(jù),這些數(shù)據(jù)也是在虛擬場景存在的,所以在場景載入的時候,還會將這些外部數(shù)據(jù)進(jìn)行編 譯,然后合并在道路文件中,再進(jìn)行載入。這種載入方法,在載入原來的場景文件(如道路 文件)的時間的基礎(chǔ)上又加入了編譯外部數(shù)據(jù)和合并載入的時間,從而增加了虛擬場景的 載入時間。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種快速載入虛擬場景的方法,用以快速地載 入虛擬場景。 為解決上述技術(shù)問題,本發(fā)明提供方案如下 —種快速載入虛擬場景的方法,所述虛擬場景用于向用戶控制的虛擬角色提供虛 擬的活動空間,所述方法包括以下步驟 A,將描述所述虛擬場景的虛擬場景數(shù)據(jù)劃分為不可動態(tài)載入的第一場景數(shù)據(jù)和 可以動態(tài)載入的第二場景數(shù)據(jù); B,計算所述第二場景數(shù)據(jù)對應(yīng)的第二場景在所述第一場景數(shù)據(jù)對應(yīng)的第一場景 中的第一位置,并設(shè)置所述第二場景數(shù)據(jù)的載入距離; C,計算載入所述第二場景數(shù)據(jù)時虛擬角色在所述第一場景中的第二位置,其中所 述第二位置與所述第一位置之間的距離為所述載入距離;根據(jù)所述第二位置以及所述第一 場景數(shù)據(jù),編譯生成包括所述第一場景和動態(tài)載入信息的場景文件,其中所述動態(tài)載入信 息攜帶有虛擬角色在所述第一場景中的當(dāng)前位置與當(dāng)前需要載入的第二場景數(shù)據(jù)之間的 對應(yīng)關(guān)系; D,當(dāng)載入虛擬場景時,首先載入所述場景文件,并根據(jù)虛擬角色在所述第一場景 中的當(dāng)前位置以及所述動態(tài)載入信息,確定當(dāng)前需要載入的第二場景數(shù)據(jù)并載入。
優(yōu)選地,上述方法中,所述虛擬場景數(shù)據(jù)中包括至少一份所述第二場景數(shù)據(jù)。
優(yōu)選地,上述方法中,以散列形式保存所述虛擬場景數(shù)據(jù)中的第一場景數(shù)據(jù)和第 二場景數(shù)據(jù)。 優(yōu)選地,上述方法中,所述步驟C還包括 選擇出所述第一位置與所述初始位置之間的距離小于所述載入距離的第二場景
3數(shù)據(jù),設(shè)置載入該第二場景數(shù)據(jù)時所述虛擬角色在所述第一場景中的第二位置為所述初始 位置。 優(yōu)選地,上述方法中,所述虛擬角色是用戶駕駛控制的虛擬汽車。 優(yōu)選地,上述方法中,所述步驟A具體包括將描述道路的場景數(shù)據(jù)作為第一場景
數(shù)據(jù),將描述道路兩旁物體的場景數(shù)據(jù)作為第二場景數(shù)據(jù)。 從以上所述可以看出,本發(fā)明提供的快速載入虛擬場景的方法,根據(jù)場景數(shù)據(jù)是 否可以動態(tài)載入,將場景數(shù)據(jù)分成兩類;對于可動態(tài)載入的場景數(shù)據(jù),根據(jù)該場景數(shù)據(jù)對應(yīng) 的場景與用戶控制的虛擬角色之間的距離來決定何時載入該場景數(shù)據(jù),從而實(shí)現(xiàn)了距離近 的物體先載入,距離遠(yuǎn)的物體不載入或后載入,每次只載入距虛擬角色一定范圍內(nèi)的物體, 通過減小虛擬場景最初載入的數(shù)據(jù)量,以縮短虛擬場景載入的時間,達(dá)到快速載入虛擬場 景的目的。


圖1為本發(fā)明實(shí)施例所述快速載入虛擬場景的方法的流程圖。
具體實(shí)施例方式
在虛擬場景環(huán)境中,通常都會通過一個由用戶控制的虛擬角色在虛擬場景所提供 的活動空間中運(yùn)動,來向用戶顯示該虛擬場景。本發(fā)明中,根據(jù)虛擬場景中的物體與虛擬角 色的距離來決定各物體數(shù)據(jù)的載入順序和載入時間,即,距離近的物體先載入,距離遠(yuǎn)的物 體不載入或后載入,每次只載入距虛擬角色一定范圍內(nèi)的物體,通過減小虛擬場景最初載 入的數(shù)據(jù)量,以減小虛擬場景載入的時間,達(dá)到快速載入虛擬場景的目的。以下結(jié)合附圖通 過具體實(shí)施例對本發(fā)明作進(jìn)一步說明。 本實(shí)施例以汽車模擬駕駛的虛擬場景為例進(jìn)行說明。用戶可以控制一個虛擬汽車 (即虛擬角色)在該虛擬場景中行使,以虛擬現(xiàn)實(shí)中的駕駛控制。該虛擬場景包括多種虛擬 場景數(shù)據(jù),具體有描述汽車所行使的道路的場景數(shù)據(jù)、描述道路上的物體(如行人或汽車) 的場景數(shù)據(jù)、以及描述道路旁的物體(如路燈、樹木、山體等)的場景數(shù)據(jù)。請參照圖l,本 發(fā)明實(shí)施例所述載入虛擬場景的方法,包括步驟 步驟ll,將描述虛擬場景的虛擬場景數(shù)據(jù)劃分為不可動態(tài)載入的第一場景數(shù)據(jù)和 可以動態(tài)載入的第二場景數(shù)據(jù)。 本步驟實(shí)現(xiàn)了對虛擬場景數(shù)據(jù)的分類整理。在虛擬場景中,有些虛擬場景數(shù)據(jù)是 可以動態(tài)載入的,而有些虛擬場景數(shù)據(jù)是必須始終存在于虛擬場景中的、不可動態(tài)載入的。 例如,對于模擬汽車駕駛的虛擬場景,道路數(shù)據(jù)就是不可動態(tài)載入的數(shù)據(jù),它是虛擬場景中 行車駕駛的基礎(chǔ)。所以,動態(tài)載入對于道路來說是不實(shí)用的,即本實(shí)施例中將描述道路的數(shù) 據(jù)劃分為第一場景數(shù)據(jù)??梢詣討B(tài)載入的數(shù)據(jù),如道路上的行人和上述其他車輛、道路旁的 物體(如建筑、樹木、路燈等)不會和用戶控制的虛擬汽車的駕駛有直接關(guān)系,因此,描述這 些物體的場景數(shù)據(jù)是可以根據(jù)距離和顯示順序進(jìn)行動態(tài)載入的,即為第二場景數(shù)據(jù)。本實(shí) 施例中,所述虛擬場景數(shù)據(jù)中包括至少一份所述第二場景數(shù)據(jù),例如可以包括多份描述道 路旁路燈的場景數(shù)據(jù),還可以包括多份描述道路上的行人的場景數(shù)據(jù)。本步驟中,以散列形 式保存所述虛擬場景數(shù)據(jù)中的第一場景數(shù)據(jù)和第二場景數(shù)據(jù)。
步驟12,計算所述第二場景數(shù)據(jù)對應(yīng)的第二場景在所述第一場景數(shù)據(jù)對應(yīng)的第一 場景中的第一位置,并設(shè)置所述第二場景數(shù)據(jù)的載入距離。 本實(shí)施例中對于何時載入第二場景數(shù)據(jù),是根據(jù)該場景數(shù)據(jù)對應(yīng)的第二場景與虛 擬角色之間的距離來決定的。而虛擬角色在第一場景中的位置是可以移動的,例如,虛擬汽 車可以在用戶的控制下在道路上行使,其位置可以變化,因此,首先要根據(jù)第二場景數(shù)據(jù)的 位置坐標(biāo),計算并確定第二場景(如樹木、建筑、路燈等物體)在道路上的具體位置(即第 一位置)。在本步驟中,還需要為各個第二場景數(shù)據(jù)設(shè)置對應(yīng)的載入距離,每種第二場景數(shù) 據(jù)的載入距離可以相同也可以不同,可以根據(jù)具體的模擬環(huán)境來選擇載入距離。例如一棵 樹,當(dāng)虛擬角色離它有500米的距離時,虛擬角色就可以看到它;更遠(yuǎn)的距離虛擬角色就看 不清或根本看不到它。此時,就可以設(shè)定該樹的載入距離為500米。又例如,如果道路遠(yuǎn)端 有一座山,當(dāng)虛擬角色離它有5000米的距離時就可以看的它,因此,可以設(shè)置該山的載入 距離為5000米。 步驟13,計算載入所述第二場景數(shù)據(jù)時虛擬角色在所述第一場景中的第二位置, 其中所述第二位置與所述第一位置之間的距離為所述載入距離;根據(jù)所述第二位置以及所 述第一場景數(shù)據(jù),編譯生成包括所述第一場景和動態(tài)載入信息的場景文件,其中所述動態(tài) 載入信息攜帶有虛擬角色在所述第一場景中的當(dāng)前位置與當(dāng)前需要載入的第二場景數(shù)據(jù) 之間的對應(yīng)關(guān)系。 當(dāng)載入距離和第二場景在第一場景中的位置確定以后,當(dāng)虛擬角色與第二場景的 距離等于(該距離通常是由大到小)所述載入距離時,此刻需要通過載入第二場景數(shù)據(jù)以 向用戶顯示該第二場景。例如,當(dāng)用戶控制虛擬汽車在道路上行使了一段距離后,該虛擬汽 車距離前方的某個樹木(此時該樹木尚未載入到虛擬場景)的距離剛好等于載入距離,此 時則應(yīng)當(dāng)載入描述該樹木的場景數(shù)據(jù)。因此,本步驟中,通過計算所述第二位置,確定了虛 擬角色當(dāng)前位置與載入的第二場景數(shù)據(jù)之間的對應(yīng)關(guān)系,并且,通過編譯生成包含有該對 應(yīng)關(guān)系的場景文件,以便于后期的動態(tài)載入。 虛擬角色在虛擬場景中通常有一個初始位置,如果某個第二場景與該初始位置的
距離小于該第二場景的載入距離,那么應(yīng)該在最開始載入虛擬場景時,同時載入該第二場
景。例如,當(dāng)一棵樹的載入距離為500米時,該樹與虛擬角色初始位置的距離僅200米,即
表明虛擬角色一開始就應(yīng)當(dāng)能夠看到該樹,因此需要在載入道路數(shù)據(jù)的同時載入該樹的場
景數(shù)據(jù)。據(jù)此,在步驟13中,還可以進(jìn)一步選擇出所述第一位置與所述初始位置之間的距
離小于所述載入距離的第二場景數(shù)據(jù),設(shè)置載入該第二場景數(shù)據(jù)時所述虛擬角色在所述第
一場景中的第二位置為所述初始位置,并根據(jù)該第二位置進(jìn)行所述編譯。 這里,具體可以根據(jù)虛擬角色的位置動態(tài)矩陣以及第二場景位置矩陣,計算第二
場景與虛擬角色之間的距離;可以利用0SG的數(shù)據(jù)編譯功能,來生成具有動態(tài)載入功能的數(shù)據(jù)。 步驟14,當(dāng)載入虛擬場景時,首先載入所述場景文件,并根據(jù)虛擬角色在所述第一 場景中的當(dāng)前位置以及所述動態(tài)載入信息,確定當(dāng)前需要載入的第二場景數(shù)據(jù)并載入。
通過步驟13生成得到所述場景文件后,在需要載入虛擬場景時,即可首先載入該 場景文件,顯示該場景文件中描述的第一場景,并根據(jù)虛擬角色當(dāng)前所處位置以及動態(tài)載 入信息,查找到當(dāng)前應(yīng)當(dāng)載入的第二場景數(shù)據(jù)并進(jìn)行載入,從而將第二場景顯示給用戶。
5
從以上所述可以看出,本實(shí)施例中將虛擬場景數(shù)據(jù)進(jìn)行拆分,所有的數(shù)據(jù)成散列 形式進(jìn)行存放,再將各種數(shù)據(jù)進(jìn)行"金子塔"式的結(jié)構(gòu)組織,根據(jù)載入距離動態(tài)載入第二場 景數(shù)據(jù),達(dá)到了加快場景載入速度的目的,縮短了場景載入時間。 以上所述僅是本發(fā)明的實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來 說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為 本發(fā)明的保護(hù)范圍。
權(quán)利要求
一種快速載入虛擬場景的方法,所述虛擬場景用于向用戶控制的虛擬角色提供虛擬的活動空間,其特征在于,所述方法包括以下步驟A,將描述所述虛擬場景的虛擬場景數(shù)據(jù)劃分為不可動態(tài)載入的第一場景數(shù)據(jù)和可以動態(tài)載入的第二場景數(shù)據(jù);B,計算所述第二場景數(shù)據(jù)對應(yīng)的第二場景在所述第一場景數(shù)據(jù)對應(yīng)的第一場景中的第一位置,并設(shè)置所述第二場景數(shù)據(jù)的載入距離;C,計算載入所述第二場景數(shù)據(jù)時虛擬角色在所述第一場景中的第二位置,其中所述第二位置與所述第一位置之間的距離為所述載入距離;根據(jù)所述第二位置以及所述第一場景數(shù)據(jù),編譯生成包括所述第一場景和動態(tài)載入信息的場景文件,其中所述動態(tài)載入信息攜帶有虛擬角色在所述第一場景中的當(dāng)前位置與當(dāng)前需要載入的第二場景數(shù)據(jù)之間的對應(yīng)關(guān)系;D,當(dāng)載入虛擬場景時,首先載入所述場景文件,并根據(jù)虛擬角色在所述第一場景中的當(dāng)前位置以及所述動態(tài)載入信息,確定當(dāng)前需要載入的第二場景數(shù)據(jù)并載入。
2. 如權(quán)利要求1所述的方法,其特征在于,所述虛擬場景數(shù)據(jù)中包括至少一份所述第 二場景數(shù)據(jù)。
3. 如權(quán)利要求2所述的方法,其特征在于,以散列形式保存所述虛擬場景數(shù)據(jù)中的第 一場景數(shù)據(jù)和第二場景數(shù)據(jù)。
4. 如權(quán)利要求2所述的方法,其特征在于,所述步驟C還包括選擇出所述第一位置與所述初始位置之間的距離小于所述載入距離的第二場景數(shù)據(jù), 設(shè)置載入該第二場景數(shù)據(jù)時所述虛擬角色在所述第一場景中的第二位置為所述初始位置。
5. 如權(quán)利要求1所述的方法,其特征在于,所述虛擬角色是用戶虛擬駕駛控制的虛擬汽車。
6. 如權(quán)利要求5所述的方法,其特征在于,所述步驟A具體包括將描述道路的場景數(shù) 據(jù)作為第一場景數(shù)據(jù),將描述道路兩旁物體的場景數(shù)據(jù)作為第二場景數(shù)據(jù)。
全文摘要
本發(fā)明提供了一種快速載入虛擬場景的方法。所述方法根據(jù)虛擬場景中的物體與用戶控制的虛擬角色的距離來決定各場景數(shù)據(jù)的載入順序和載入時間,即,距離近的物體先載入,距離遠(yuǎn)的物體后載入,每次只載入距虛擬角色一定范圍內(nèi)的物體,通過減小虛擬場景最初載入的數(shù)據(jù)量,以縮短虛擬場景載入的時間,達(dá)到快速載入虛擬場景的目的。
文檔編號G06T1/00GK101763624SQ20081022661
公開日2010年6月30日 申請日期2008年11月17日 優(yōu)先權(quán)日2008年11月17日
發(fā)明者于曉輝 申請人:北京宣愛智能模擬技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
罗甸县| 株洲县| 澜沧| 拜泉县| 神池县| 松溪县| 泊头市| 桑日县| 虹口区| 大英县| 古浪县| 务川| 酒泉市| 自治县| 会同县| 通辽市| 盘山县| 祁连县| 长岛县| 白玉县| 南川市| 博白县| 泽库县| 吉木乃县| 西充县| 阿图什市| 科技| 凌云县| 江阴市| 漳州市| 南通市| 浦北县| 墨脱县| 土默特左旗| 武功县| 丰原市| 定安县| 新河县| 科尔| 龙州县| 辰溪县|