[發(fā)明專利]一種應用中的場景更新控制方法、裝置及存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 201911236522.0 | 申請日: | 2019-12-05 |
| 公開(公告)號: | CN111068313B | 公開(公告)日: | 2021-02-19 |
| 發(fā)明(設(shè)計)人: | 嚴潤發(fā);王杰 | 申請(專利權(quán))人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | A63F13/52 | 分類號: | A63F13/52;G06F3/06 |
| 代理公司: | 北京同達信恒知識產(chǎn)權(quán)代理有限公司 11291 | 代理人: | 李娟 |
| 地址: | 518044 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 應用 中的 場景 更新 控制 方法 裝置 存儲 介質(zhì) | ||
1.一種應用中的場景更新控制方法,其特征在于,該方法包括:
在場景更新過程中,從磁盤讀取場景的各個體素文件并保存到內(nèi)存中,其中,所述場景被劃分為多個區(qū)域塊,每個區(qū)域塊上的體素組成一個體素文件,所述各個體素文件在磁盤中的存儲順序是根據(jù)所述多個區(qū)域塊在場景中的更新順序確定的;
根據(jù)所述場景中待更新的區(qū)域塊,確定所述待更新的區(qū)域塊對應的目標體素文件;
從內(nèi)存中獲取所述目標體素文件中的各個體素,并根據(jù)獲取的體素對所述場景進行更新;
其中,所述從內(nèi)存中獲取所述目標體素文件中的各個體素,并根據(jù)獲取的體素對所述場景進行更新,包括:
針對所述目標體素文件對應的區(qū)域塊上的每個位置坐標,確定所述位置坐標對應的索引下標,及所述位置坐標的體素個數(shù);
在所述目標體素文件對應的索引文件中,根據(jù)所述索引下標確定位置坐標對應有體素的索引,并根據(jù)所述索引在所述目標體素文件中確定所述位置坐標上的起始體素;
根據(jù)所述起始體素和所述體素個數(shù),從內(nèi)存中獲取各個位置坐標上的體素,并根據(jù)獲取的體素對場景進行更新。
2.如權(quán)利要求1所述的方法,其特征在于,從磁盤讀取場景的各個體素文件并保存到內(nèi)存中,包括:
從磁盤中讀取各個體素文件以及所述體素文件對應的索引文件,并將讀取到的所述體素文件和所述索引文件保存到內(nèi)存中,其中每個區(qū)域塊中包含有多個位置坐標,一個索引文件包括一個區(qū)域塊上的位置坐標對應的索引,有體素的位置坐標對應的索引是位置坐標上所有體素中的起始體素對應的索引,所述索引文件在磁盤中的存儲順序與所述體素文件在磁盤中的存儲順序相同。
3.如權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述場景中待更新的區(qū)域塊,確定所述待更新的區(qū)域塊對應的目標體素文件,具體包括:
根據(jù)所述場景中目標對象的當前位置坐標,確定以所述當前位置坐標所在的區(qū)域塊為中心的周邊設(shè)定個數(shù)的區(qū)域塊為待更新的區(qū)域塊;
將所述設(shè)定個數(shù)的區(qū)域塊對應的各個體素文件作為目標體素文件。
4.如權(quán)利要求3所述的方法,其特征在于,所述周邊設(shè)定個數(shù)的區(qū)域塊包括:所述當前位置坐標所在區(qū)域塊的前N個區(qū)域塊,以及所述當前位置坐標所在區(qū)域塊的后M個區(qū)域塊,其中M和N為整數(shù)。
5.如權(quán)利要求1所述的方法,其特征在于,從磁盤讀取場景的各個體素文件并保存到內(nèi)存中,包括:
當內(nèi)存壓力指標低于設(shè)定的上限閾值,且發(fā)生缺頁中斷時,從磁盤讀取體素文件和所述體素文件對應的索引文件,并保存到內(nèi)存的用戶空間中;或
當內(nèi)存壓力指標等于或高于設(shè)定的上限閾值,且從緩存中未命中所述目標體素文件中的各個體素時,從磁盤中讀取體素文件和所述體素文件對應的索引文件,并保存在內(nèi)存的緩存空間中。
6.如權(quán)利要求5所述的方法,其特征在于,所述從磁盤讀取場景的各個體素文件并保存到內(nèi)存中,具體包括:
當內(nèi)存壓力指標低于設(shè)定的上限閾值,且發(fā)生缺頁中斷時,調(diào)用操作系統(tǒng)的mmap,并根據(jù)操作系統(tǒng)中每頁大小,從磁盤中讀取以當前位置坐標所在區(qū)域塊為中心且與所述當前位置坐標所在區(qū)域塊相鄰的整數(shù)個區(qū)域塊對應的體素文件和所述體素文件對應的索引文件,并保存到內(nèi)存的用戶空間中;或
當內(nèi)存壓力指標等于或高于設(shè)定的上限閾值,且從緩存中未命中所述目標體素文件中的各個體素時,從磁盤中讀取以所述當前位置坐標所在的區(qū)域塊為中心的連續(xù)三個區(qū)域塊的體素文件和所述體素文件對應的索引文件,并保存在內(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/201911236522.0/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





