[發(fā)明專利]游戲地圖內(nèi)區(qū)域生成方法、系統(tǒng)及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202011308380.7 | 申請(qǐng)日: | 2020-11-20 |
| 公開(kāi)(公告)號(hào): | CN112396697B | 公開(kāi)(公告)日: | 2022-12-06 |
| 發(fā)明(設(shè)計(jì))人: | 朱志成 | 申請(qǐng)(專利權(quán))人: | 上海莉莉絲網(wǎng)絡(luò)科技有限公司 |
| 主分類號(hào): | G06T17/05 | 分類號(hào): | G06T17/05;G06T17/20;G06T7/11;G06T7/62;G06T5/30;A63F13/5378 |
| 代理公司: | 上海雍灝知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 31368 | 代理人: | 沈汶波 |
| 地址: | 201802 上海市嘉定*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 游戲 地圖 區(qū)域 生成 方法 系統(tǒng) 計(jì)算機(jī) 可讀 存儲(chǔ) 介質(zhì) | ||
1.一種游戲地圖內(nèi)區(qū)域生成方法,其特征在于,包括以下步驟:
選定一長(zhǎng)為W,寬為H的游戲地圖及半徑為R的區(qū)域圓;
將所述游戲地圖分割為至少兩個(gè)地圖單元,于每一所述地圖單元內(nèi)隨機(jī)選定地圖像素為所述區(qū)域圓的圓心,并以每一所述圓心、半徑R生成一個(gè)所述區(qū)域圓;
移動(dòng)每一地圖單元內(nèi)生成的所述區(qū)域圓中與其余一個(gè)或多個(gè)重疊的區(qū)域圓,以將所有區(qū)域圓獨(dú)立分配在所述地圖單元內(nèi);
于所述游戲地圖內(nèi)生成阻擋區(qū)域信息,所述阻擋區(qū)域信息包括至少一個(gè)阻擋區(qū)域及阻擋區(qū)域所覆蓋的位置,所述阻擋區(qū)域?yàn)橛螒虻貓D內(nèi)游戲?qū)ο鬅o(wú)法穿透或觸碰的區(qū)域;
獲取所述區(qū)域圓的圓心,并判斷所述圓心是否位于任意所述阻擋區(qū)域內(nèi);
當(dāng)所述圓心位于任意所述阻擋區(qū)域內(nèi)時(shí),移動(dòng)所述圓心至阻擋區(qū)域外;
以每一所述圓心為原點(diǎn),基于一膨脹速度逐層向外膨脹形成膨脹區(qū)域,直至所述膨脹區(qū)域的邊界與相鄰膨脹區(qū)域或阻擋區(qū)域接觸;
以所述膨脹區(qū)域?yàn)榛A(chǔ)形成地圖區(qū)域。
2.如權(quán)利要求1所述的區(qū)域生成方法,其特征在于,
將所述游戲地圖分割為至少兩個(gè)地圖單元,于每一所述地圖單元內(nèi)隨機(jī)選定地圖像素為所述區(qū)域圓的圓心,并以所述圓心、半徑R生成所述區(qū)域圓的步驟包括:
將所述游戲地圖分割為n個(gè)地圖單元;
于每一地圖單元內(nèi)隨機(jī)選定地圖像素為區(qū)域圓的圓心,并以圓心、半徑R生成個(gè)區(qū)域圓;
移動(dòng)每一地圖單元內(nèi)生成的所述區(qū)域圓中與其余一個(gè)或多個(gè)重疊的區(qū)域圓,以將所有區(qū)域圓獨(dú)立分配在所述地圖單元內(nèi)的步驟包括:
計(jì)算每一與其余一個(gè)或多個(gè)區(qū)域圓重疊的區(qū)域圓與所重疊的區(qū)域圓間的作用力,其中所述作用力為區(qū)域圓間相互作用而產(chǎn)生的擠壓力;
根據(jù)所述作用力的大小及方向,將所述區(qū)域圓移動(dòng)至一調(diào)整位置,于所述調(diào)整位置處,所述區(qū)域圓與任意其余區(qū)域圓分隔。
3.如權(quán)利要求1所述的區(qū)域生成方法,其特征在于,于所述游戲地圖內(nèi)生成阻擋區(qū)域信息,所述阻擋區(qū)域信息包括至少一個(gè)阻擋區(qū)域的步驟后還包括:
將每一所述區(qū)域圓中阻擋區(qū)域與區(qū)域圓面積的比例與一比例閾值比較,當(dāng)所述比例大于或等于所述比例閾值時(shí),去除所述區(qū)域圓;
當(dāng)所述比例小于所述比例閾值時(shí),保留所述區(qū)域圓并保持所述區(qū)域圓的圓心。
4.如權(quán)利要求1所述的區(qū)域生成方法,其特征在于,當(dāng)所述圓心位于任意所述阻擋區(qū)域內(nèi)時(shí),移動(dòng)所述圓心至阻擋區(qū)域外的步驟包括:
當(dāng)所述圓心位于任意所述阻擋區(qū)域內(nèi)時(shí),遍歷所述阻擋區(qū)域內(nèi)像素點(diǎn),并采集任意像素點(diǎn)與所述圓心的距離;
提取與所述圓心距離最小r的像素點(diǎn),并獲取所述像素點(diǎn)與所述圓心連線所在的標(biāo)準(zhǔn)邊界;
以所述標(biāo)準(zhǔn)邊界的法線方向?yàn)橐苿?dòng)方向,移動(dòng)所述圓心r’個(gè)單位,使得所述圓心位于所述阻擋區(qū)域外,其中r’=r+Δr,Δr為0或大于0的任意單位。
5.如權(quán)利要求1所述的區(qū)域生成方法,其特征在于,以每一所述圓心為原點(diǎn),基于一膨脹速度逐層向外膨脹形成膨脹區(qū)域,直至所述膨脹區(qū)域的邊界與相鄰膨脹區(qū)域或阻擋區(qū)域接觸的步驟包括:
添加每一圓心至膨脹列表;
遍歷所述膨脹列表,并遍歷所述膨脹列表內(nèi)作為每一端點(diǎn)的圓心的相鄰像素;
判斷所述相鄰像素是否被標(biāo)記為屬于膨脹區(qū)域內(nèi)的像素,當(dāng)所述相鄰像素未被標(biāo)記為屬于膨脹區(qū)域內(nèi)的像素時(shí),標(biāo)記所述像素屬于與所述端點(diǎn)相同的膨脹區(qū)域,并添加至所屬膨脹列表內(nèi)作為新的端點(diǎn);
反復(fù)執(zhí)行上述步驟,以將游戲地圖內(nèi)除阻擋區(qū)域外的所有像素標(biāo)記有膨脹區(qū)域的歸屬。
6.如權(quán)利要求5所述的區(qū)域生成方法,其特征在于,以每一所述圓心為原點(diǎn),基于一膨脹速度逐層向外膨脹形成膨脹區(qū)域,直至所述膨脹區(qū)域的邊界與相鄰膨脹區(qū)域或阻擋區(qū)域接觸的步驟還包括:
識(shí)別所述阻擋區(qū)域的所有邊界像素所相鄰的像素是否屬于同一膨脹區(qū)域;
當(dāng)所述阻擋區(qū)域的邊界像素所相鄰的像素屬于同一膨脹區(qū)域時(shí),將所述阻擋區(qū)域內(nèi)的所有像素標(biāo)記為與邊界像素所相鄰的像素所歸屬的相同的膨脹區(qū)域。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海莉莉絲網(wǎng)絡(luò)科技有限公司,未經(jīng)上海莉莉絲網(wǎng)絡(luò)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011308380.7/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。





