[發(fā)明專利]網(wǎng)絡(luò)游戲中的射線查詢方法和場景服務(wù)器有效
| 申請?zhí)枺?/td> | 201210150401.6 | 申請日: | 2012-05-15 |
| 公開(公告)號: | CN102810133A | 公開(公告)日: | 2012-12-05 |
| 發(fā)明(設(shè)計(jì))人: | 李利國 | 申請(專利權(quán))人: | 北京像素軟件科技股份有限公司 |
| 主分類號: | G06F19/00 | 分類號: | G06F19/00 |
| 代理公司: | 北京德琦知識產(chǎn)權(quán)代理有限公司 11018 | 代理人: | 楊春香;宋志強(qiáng) |
| 地址: | 100043 北京市石景山區(qū)八*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 網(wǎng)絡(luò)游戲 中的 射線 查詢 方法 場景 服務(wù)器 | ||
1.一種網(wǎng)絡(luò)游戲中的射線查詢方法,其特征在于,該方法包括:
場景服務(wù)器針對每一游戲幀執(zhí)行以下操作:
在每一游戲幀開始時(shí),將針對該游戲幀的所有射線查詢請求注冊到射線查詢管理器中;
依據(jù)注冊至該射線查詢管理器的射線查詢請求數(shù)量統(tǒng)計(jì)出當(dāng)前是由CPU還是由圖像處理器GPU執(zhí)行射線查詢;
如果統(tǒng)計(jì)出是由CPU執(zhí)行射線查詢,則由CPU執(zhí)行射線查詢;
如果統(tǒng)計(jì)出是由GPU執(zhí)行射線查詢,則調(diào)度GPU異步執(zhí)行射線查詢,而CPU在GPU執(zhí)行射線查詢期間執(zhí)行非射線查詢?nèi)蝿?wù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,依據(jù)注冊至射線查詢管理器的射線查詢請求數(shù)量統(tǒng)計(jì)出當(dāng)前是由CPU還是由GPU執(zhí)行射線查詢包括:
統(tǒng)計(jì)出注冊至所述射線查詢管理器的射線查詢請求數(shù)量之和;
如果該統(tǒng)計(jì)的射線查詢請求數(shù)量之和大于數(shù)值N,則確定由GPU執(zhí)行射線查詢,否則,確定由CPU執(zhí)行射線查詢;
其中,所述N用于保證所述CPU執(zhí)行射線查詢的時(shí)間等于或開始大于數(shù)據(jù)傳輸時(shí)間時(shí)的最小射線查詢請求數(shù)量,所述數(shù)據(jù)傳輸時(shí)間為GPU從內(nèi)存中獲取用于執(zhí)行射線查詢的查詢數(shù)據(jù),以及將射線查詢的結(jié)果復(fù)制到內(nèi)存需要的時(shí)間。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述N通過以下步驟確定:
所述場景服務(wù)器在啟動(dòng)時(shí)載入預(yù)先生成的查詢數(shù)據(jù);
所述場景服務(wù)器使用該生成的查詢數(shù)據(jù)測試CPU執(zhí)行射線查詢的時(shí)間和所述數(shù)據(jù)查詢時(shí)間,當(dāng)測試結(jié)果為:CPU執(zhí)行射線查詢時(shí)間等于或開始大于所述數(shù)據(jù)傳輸時(shí)間時(shí),確定當(dāng)前已使用的查詢數(shù)據(jù)的數(shù)量為所述N。
4.根據(jù)權(quán)利要求1至3任一所述的方法,其特征在于,所述GPU執(zhí)行射線查詢包括:
將查詢數(shù)據(jù)從內(nèi)存復(fù)制至顯存中;
將線程劃分為線程塊,生成并復(fù)制線程塊數(shù)據(jù)至顯存中;其中,每一線程塊包含至少一個(gè)線程、且每一線程塊的線程處理同一個(gè)游戲場景的射線查詢,每一線程塊數(shù)據(jù)至少包括:查詢數(shù)據(jù)、游戲場景索引、查詢數(shù)據(jù)起始地址、射線查詢結(jié)果地址;
針對每一線程塊執(zhí)行以下操作:
針對該線程塊的每一線程,
獲取該線程塊每一線程負(fù)責(zé)執(zhí)行射線查詢的查詢數(shù)據(jù)在該線程塊內(nèi)的索引;
在該線程塊的線程塊數(shù)據(jù)中找到查詢數(shù)據(jù)起始地址,在該查詢數(shù)據(jù)起始地址基礎(chǔ)上偏移該獲取的索引之后得到該線程負(fù)責(zé)的查詢數(shù)據(jù)地址,從該查詢數(shù)據(jù)地址上讀取對應(yīng)的查詢數(shù)據(jù);
由該線程利用所述查詢數(shù)據(jù)執(zhí)行射線查詢。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述方法執(zhí)行之前,進(jìn)一步包括:場景服務(wù)器在啟動(dòng)時(shí),生成各個(gè)游戲場景的碰撞模型相關(guān)聯(lián)的加速結(jié)構(gòu),將該加速結(jié)構(gòu)以及各個(gè)游戲場景的碰撞模型復(fù)制至顯存中,以及將各個(gè)游戲場景的包圍盒、加速結(jié)構(gòu)地址、以及碰撞模型地址復(fù)制至GPU的常量內(nèi)存中。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述查詢數(shù)據(jù)至少包含以下分量:射線原點(diǎn)的x坐標(biāo)、y坐標(biāo)和z坐標(biāo),以及射線方向的x坐標(biāo)、y坐標(biāo)和z坐標(biāo)、以及射線最遠(yuǎn)距離;
所述游戲場景的碰撞模型通過三角形網(wǎng)格表示;
所述線程利用查詢數(shù)據(jù)執(zhí)行射線查詢包括:
判斷該查詢數(shù)據(jù)對應(yīng)的射線是否與游戲場景的包圍盒相交,該游戲場景通過該查詢數(shù)據(jù)所處線程塊數(shù)據(jù)中的游戲場景索引確定,如果不相交,通過該線程寫入用于表示射線查詢結(jié)果為不相交的第一標(biāo)識至共享內(nèi)存中;
如果相交,則,
遍歷該游戲場景的加速結(jié)構(gòu),尋找該射線與該游戲場景的三角形網(wǎng)格最近的交點(diǎn),如果未尋找到所述交點(diǎn),則通過該線程寫入用于表示射線查詢結(jié)果為不相交的第一標(biāo)識至共享內(nèi)存中,
如果尋找到所述交點(diǎn),則通過該線程寫入用于表示射線查詢結(jié)果為相交的第二標(biāo)識至共享內(nèi)存中,并將所述交點(diǎn)與所述射線原點(diǎn)之間的距離寫入共享內(nèi)存中。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京像素軟件科技股份有限公司,未經(jīng)北京像素軟件科技股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210150401.6/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F19-00 專門適用于特定應(yīng)用的數(shù)字計(jì)算或數(shù)據(jù)處理的設(shè)備或方法
G06F19-10 .生物信息學(xué),即計(jì)算分子生物學(xué)中的遺傳或蛋白質(zhì)相關(guān)的數(shù)據(jù)處理方法或系統(tǒng)
G06F19-12 ..用于系統(tǒng)生物學(xué)的建模或仿真,例如:概率模型或動(dòng)態(tài)模型,遺傳基因管理網(wǎng)絡(luò),蛋白質(zhì)交互作用網(wǎng)絡(luò)或新陳代謝作用網(wǎng)絡(luò)
G06F19-14 ..用于發(fā)展或進(jìn)化的,例如:進(jìn)化的保存區(qū)域決定或進(jìn)化樹結(jié)構(gòu)
G06F19-16 ..用于分子結(jié)構(gòu)的,例如:結(jié)構(gòu)排序,結(jié)構(gòu)或功能關(guān)系,蛋白質(zhì)折疊,結(jié)構(gòu)域拓?fù)洌媒Y(jié)構(gòu)數(shù)據(jù)的藥靶,涉及二維或三維結(jié)構(gòu)的
G06F19-18 ..用于功能性基因組學(xué)或蛋白質(zhì)組學(xué)的,例如:基因型–表型關(guān)聯(lián),不均衡連接,種群遺傳學(xué),結(jié)合位置鑒定,變異發(fā)生,基因型或染色體組的注釋,蛋白質(zhì)相互作用或蛋白質(zhì)核酸的相互作用
- 網(wǎng)絡(luò)游戲方法
- 對網(wǎng)絡(luò)游戲用戶進(jìn)行時(shí)間限制的方法和系統(tǒng)
- 一種啟動(dòng)網(wǎng)絡(luò)游戲的方法及系統(tǒng)
- 一種同步網(wǎng)絡(luò)游戲時(shí)間的方法及裝置
- 一種網(wǎng)絡(luò)游戲資源獲取方法及裝置
- 網(wǎng)絡(luò)游戲的優(yōu)化器、優(yōu)化方法和優(yōu)化系統(tǒng)
- 網(wǎng)絡(luò)游戲中進(jìn)行分桌處理的方法及網(wǎng)絡(luò)游戲服務(wù)器
- 網(wǎng)絡(luò)游戲加速方法
- 一種確定網(wǎng)絡(luò)游戲中作弊用戶的方法及裝置
- 一種網(wǎng)絡(luò)游戲的優(yōu)化方法、裝置及系統(tǒng)
- 帶有前處理和后處理的數(shù)據(jù)庫復(fù)合查詢系統(tǒng)及方法
- 數(shù)據(jù)庫查詢的方法和系統(tǒng)
- 查詢系統(tǒng)、查詢終端以及查詢方法
- 交易信息查詢方法、查詢裝置及查詢系統(tǒng)
- 數(shù)據(jù)查詢與結(jié)果生成方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 在RDF數(shù)據(jù)集上進(jìn)行OPTIONAL查詢的方法及存儲(chǔ)介質(zhì)
- 一種多表關(guān)聯(lián)查詢方法、裝置及設(shè)備
- 一種基于Impala的查詢方法和裝置
- 從查詢生成子查詢
- 一種基于通用查詢語言的查詢方法及查詢系統(tǒng)





