游戲角色的尋路方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)信息技術(shù)領(lǐng)域,特別是涉及一種游戲角色的尋路方法。
【背景技術(shù)】
[0002]游戲用戶玩游戲時(shí),需要操縱游戲角色執(zhí)行各種動(dòng)作,包括移動(dòng)、戰(zhàn)斗等。而移動(dòng)又是游戲的基本動(dòng)作。為了使游戲用戶不必花費(fèi)時(shí)間和精力去尋找游戲中的目標(biāo),自動(dòng)尋路應(yīng)運(yùn)而生,自動(dòng)尋路可以使游戲角色自動(dòng)移動(dòng)到游戲用戶指定的目標(biāo)位置。
[0003]傳統(tǒng)的自動(dòng)尋路方法都是將游戲地圖劃分為網(wǎng)格狀的尋路點(diǎn),游戲用戶選定目標(biāo)點(diǎn)后,從起始點(diǎn)向目標(biāo)點(diǎn)開始搜索最短可達(dá)路徑。這種方式在目標(biāo)點(diǎn)距起始點(diǎn)比較短時(shí)可以很快找到最短路徑,但是當(dāng)目標(biāo)點(diǎn)距離起始點(diǎn)較大時(shí),則需要花費(fèi)大量的時(shí)間去搜索,從而增加了尋路的搜索時(shí)間。
【發(fā)明內(nèi)容】
[0004]本發(fā)明主要解決的技術(shù)問題是提供一種游戲角色的尋路方法,能夠減少尋路的搜索時(shí)間。
[0005]為解決上述技術(shù)問題,本發(fā)明采用的一個(gè)技術(shù)方案是:提供一種游戲角色的尋路方法,所述尋路方法包括:si,接收尋路指令,尋路指令包括起始點(diǎn)和目標(biāo)點(diǎn);S2,根據(jù)尋路指令在當(dāng)前地圖中從起始點(diǎn)向目標(biāo)點(diǎn)搜索第一直達(dá)路徑,同時(shí)從目標(biāo)點(diǎn)向起始點(diǎn)搜索第二直達(dá)路徑,當(dāng)前地圖劃分為網(wǎng)格化的尋路點(diǎn),起始點(diǎn)和目標(biāo)點(diǎn)屬于尋路點(diǎn);S3,當(dāng)?shù)谝恢边_(dá)路徑和第二直達(dá)路徑出現(xiàn)重疊的尋路點(diǎn)時(shí)停止搜索;S4,判斷第一直達(dá)路徑和第二直達(dá)路徑中尋路點(diǎn)是否存在障礙物點(diǎn);S5,如果是,對(duì)第一直達(dá)路徑和第二直達(dá)路徑進(jìn)行優(yōu)化,以去除障礙物點(diǎn);S6,將第一直達(dá)路徑和第二直達(dá)路徑相連接作為最短尋路路徑。
[0006]優(yōu)選地,在步驟SI之前,尋路方法還包括:當(dāng)游戲用戶在當(dāng)前地圖上選定目標(biāo)點(diǎn)時(shí)生成尋路指令,起始點(diǎn)為游戲用戶操縱的游戲角色當(dāng)前所處的尋路點(diǎn)。
[0007]本發(fā)明的有益效果是:區(qū)別于現(xiàn)有技術(shù)的情況,本發(fā)明的游戲角色的尋路方法通過(guò)從起始點(diǎn)和目標(biāo)點(diǎn)同時(shí)向?qū)Ψ剿阉髦边_(dá)路徑,搜索數(shù)據(jù)量顯著減少,從而能夠減少尋路的搜索時(shí)間。
【附圖說(shuō)明】
[0008]圖1是本發(fā)明游戲角色的尋路方法實(shí)施例的示意圖。
【具體實(shí)施方式】
[0009]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0010]參見圖1,是本發(fā)明游戲角色的尋路方法實(shí)施例的示意圖。本發(fā)明實(shí)施例的尋路方法包括以下步驟:
[0011]S1:接收尋路指令,尋路指令包括起始點(diǎn)和目標(biāo)點(diǎn)。
[0012]其中,尋路指令由游戲用戶觸發(fā)。具體而言,在本實(shí)施例中,在步驟SI之前,尋路方法還包括:當(dāng)游戲用戶在當(dāng)前地圖上選定目標(biāo)點(diǎn)時(shí)生成尋路指令,起始點(diǎn)為游戲用戶操縱的游戲角色當(dāng)前所處的尋路點(diǎn)。
[0013]S2:根據(jù)尋路指令在當(dāng)前地圖中從起始點(diǎn)向目標(biāo)點(diǎn)搜索第一直達(dá)路徑,同時(shí)從目標(biāo)點(diǎn)向起始點(diǎn)搜索第二直達(dá)路徑,當(dāng)前地圖劃分為網(wǎng)格化的尋路點(diǎn),起始點(diǎn)和目標(biāo)點(diǎn)屬于尋路點(diǎn)。
[0014]其中,地圖劃分為網(wǎng)格化的尋路點(diǎn),一個(gè)尋路點(diǎn)為一個(gè)網(wǎng)格,所有地圖場(chǎng)景包括地面、森林等填充在尋路點(diǎn)中。
[0015]搜索直達(dá)路徑的方式可以是通過(guò)A星算法實(shí)現(xiàn),A星算法屬于本領(lǐng)域普通技術(shù)人員的公知常識(shí),此處不再贅述。在搜索第一直達(dá)路徑和第二直達(dá)路徑過(guò)程中,所遍歷的尋路點(diǎn)是從起始點(diǎn)向目標(biāo)點(diǎn)單向搜索所遍歷的尋路點(diǎn)的一半或以下,從而能夠顯著減少搜索的數(shù)據(jù)量。
[0016]S3:當(dāng)?shù)谝恢边_(dá)路徑和第二直達(dá)路徑出現(xiàn)重合的尋路點(diǎn)時(shí)停止搜索。
[0017]其中,第一直達(dá)路徑和第二直達(dá)路徑出現(xiàn)重合的尋路點(diǎn)表明第一直達(dá)路徑和第二直達(dá)路徑相互銜接,從而構(gòu)成一條完整的路徑。
[0018]S4:判斷第一直達(dá)路徑和第二直達(dá)路徑中尋路點(diǎn)是否存在障礙物點(diǎn)。
[0019]其中,障礙物點(diǎn)可以為具有特殊標(biāo)記的尋路點(diǎn),通過(guò)查詢第一直達(dá)路徑和第二直達(dá)路徑中是否包含特殊標(biāo)記實(shí)現(xiàn)障礙物點(diǎn)的判斷。
[0020]S5:如果是,對(duì)第一直達(dá)路徑和第二直達(dá)路徑進(jìn)行優(yōu)化,以去除障礙物點(diǎn)。
[0021]其中,優(yōu)化的方式可以是選擇障礙物點(diǎn)鄰接的非障礙物點(diǎn)作為第一直達(dá)路徑的新的尋路點(diǎn)和第二直達(dá)路徑的新的尋路點(diǎn)。
[0022]S6:將第一直達(dá)路徑和第二直達(dá)路徑相連接作為最短尋路路徑。
[0023]其中,最短尋路路徑確定后,游戲角色將依照最短尋路路徑開始移動(dòng),直到到達(dá)目標(biāo)點(diǎn)。
[0024]通過(guò)上述方式,本發(fā)明的游戲角色的尋路方法同時(shí)在起始點(diǎn)和目標(biāo)點(diǎn)進(jìn)行雙向搜索,搜索過(guò)程中所遍歷的尋路點(diǎn)顯著減少,從而能夠減少尋路的搜索時(shí)間,并通過(guò)對(duì)兩條直達(dá)路徑進(jìn)行優(yōu)化,實(shí)現(xiàn)最優(yōu)的路徑。
[0025]以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說(shuō)明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種游戲角色的尋路方法,其特征在于,所述尋路方法包括: SI,接收尋路指令,所述尋路指令包括起始點(diǎn)和目標(biāo)點(diǎn); S2,根據(jù)所述尋路指令在當(dāng)前地圖中從所述起始點(diǎn)向所述目標(biāo)點(diǎn)搜索第一直達(dá)路徑,同時(shí)從所述目標(biāo)點(diǎn)向所述起始點(diǎn)搜索第二直達(dá)路徑,所述當(dāng)前地圖劃分為網(wǎng)格化的尋路點(diǎn),所述起始點(diǎn)和所述目標(biāo)點(diǎn)屬于所述尋路點(diǎn); S3,當(dāng)所述第一直達(dá)路徑和所述第二直達(dá)路徑出現(xiàn)重合的尋路點(diǎn)時(shí)停止搜索; S4,判斷所述第一直達(dá)路徑和所述第二直達(dá)路徑中尋路點(diǎn)是否存在障礙物點(diǎn); S5,如果是,對(duì)所述第一直達(dá)路徑和所述第二直達(dá)路徑進(jìn)行優(yōu)化,以去除障礙物點(diǎn); S6,將所述第一直達(dá)路徑和所述第二直達(dá)路徑相連接作為最短尋路路徑。
2.根據(jù)權(quán)利要求1所述的尋路方法,其特征在于,在所述步驟SI之前,所述尋路方法還包括: 當(dāng)游戲用戶在所述當(dāng)前地圖上選定所述目標(biāo)點(diǎn)時(shí)生成尋路指令,所述起始點(diǎn)為所述游戲用戶操縱的游戲角色當(dāng)前所處的尋路點(diǎn)。
【專利摘要】本發(fā)明提供了一種游戲角色的尋路方法。尋路方法包括:S1,接收尋路指令,尋路指令包括起始點(diǎn)和目標(biāo)點(diǎn);S2,根據(jù)尋路指令在當(dāng)前地圖中從起始點(diǎn)向目標(biāo)點(diǎn)搜索第一直達(dá)路徑,同時(shí)從目標(biāo)點(diǎn)向起始點(diǎn)搜索第二直達(dá)路徑,當(dāng)前地圖劃分為網(wǎng)格化的尋路點(diǎn),起始點(diǎn)和目標(biāo)點(diǎn)屬于尋路點(diǎn);S3,當(dāng)?shù)谝恢边_(dá)路徑和第二直達(dá)路徑出現(xiàn)重合的尋路點(diǎn)時(shí)停止搜索;S4,判斷第一直達(dá)路徑和第二直達(dá)路徑中尋路點(diǎn)是否存在障礙物點(diǎn);S5,如果是,對(duì)第一直達(dá)路徑和第二直達(dá)路徑進(jìn)行優(yōu)化,以去除障礙物點(diǎn);S6,將第一直達(dá)路徑和第二直達(dá)路徑相連接作為最短尋路路徑。本發(fā)明能夠減少尋路的搜索時(shí)間。
【IPC分類】A63F13-56
【公開號(hào)】CN104784932
【申請(qǐng)?zhí)枴緾N201510170909
【發(fā)明人】劉自明, 何嘯威
【申請(qǐng)人】四川天上友嘉網(wǎng)絡(luò)科技有限公司
【公開日】2015年7月22日
【申請(qǐng)日】2015年4月13日