[發明專利]尋路方法和裝置有效
| 申請號: | 201711283043.5 | 申請日: | 2017-12-07 |
| 公開(公告)號: | CN108176050B | 公開(公告)日: | 2020-11-13 |
| 發明(設計)人: | 趙墨強 | 申請(專利權)人: | 北京像素軟件科技股份有限公司 |
| 主分類號: | A63F13/60 | 分類號: | A63F13/60;A63F13/52 |
| 代理公司: | 北京超凡志成知識產權代理事務所(普通合伙) 11371 | 代理人: | 史明罡 |
| 地址: | 102200 北京市昌平區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 方法 裝置 | ||
本發明實施例提供一種尋路方法和裝置,該方法包括檢測玩家當前位置信息作為第一位置點,以及檢測目標位置信息作為第二位置點;判斷所述第一位置點與所述第二位置點之間是否存在障礙物;若存在障礙物,則基于所述障礙物與所述第一位置點和第二位置點之間的相對位置關系尋找從所述第一位置點到所述第二位置點的中轉點;基于所述第一位置點、中轉點和第二位置點生成飛行路線以控制玩家從當前位置經所述中轉點飛向所述目標位置。本發明實施例能夠使得飛行線路更加圓滑,改善用戶游戲體驗。
技術領域
本發明涉及游戲開發技術領域,具體而言,涉及一種尋路方法和裝置。
背景技術
在現有的游戲過程中,玩家從當前位置飛向目的地時表現生硬,使得游戲不夠逼真,尤其是在當前位置與目的地之間存在障礙物時。但若像在地面尋路一樣使用網格系統進行飛行尋路來提高游戲的逼真度,則會大幅提高內存消耗,影響游戲性能,如游戲卡頓等。
發明內容
有鑒于此,本發明實施例的目的在于提供一種尋路方法和裝置,能夠有效改善上述問題。
本發明較佳實施例提供了一種尋路方法,所述方法包括:
檢測玩家當前位置信息作為第一位置點,以及檢測目標位置信息作為第二位置點;
判斷所述第一位置點與所述第二位置點之間是否存在障礙物;
若存在障礙物,則基于所述障礙物與所述第一位置點和第二位置點之間的相對位置關系尋找從所述第一位置點到所述第二位置點的中轉點;
基于所述第一位置點、中轉點和第二位置點生成飛行路線以控制玩家從當前位置經所述中轉點飛向所述目標位置。
進一步地,基于所述障礙物與所述第一位置點和第二位置點之間的相對位置關系尋找從所述第一位置點到所述第二位置點的中轉點的步驟包括:
以所述第一位置點為原點、預設距離為半徑檢測在該原點的預設方向是否存在與所述第二位置點之間沒有障礙物的位置點,若存在,則將該位置點作為中轉點。
進一步地,在該原點的預設方向不存在與所述第二位置點之間沒有障礙物的位置點時,所述方法還包括:
增大所述預設距離,并繼續以所述第一位置點為原點、以增大后的預設距離為半徑,執行檢測在該原點的預設方向是否存在與所述第二位置點之間沒有障礙物的位置點的步驟。
進一步地,基于所述障礙物與所述第一位置點和第二位置點之間的相對位置關系尋找從所述第一位置點到所述第二位置點的中轉點的步驟包括:
以所述第一位置點為起點,基于多次碰撞法朝向所述障礙物的方向選取滿足預設條件的位置點作為中轉點,其中,所述預設條件為玩家延所述第一位置點和所述位置點的連線方向運動時不會與所述障礙物發生碰撞。
進一步地,基于多次碰撞法朝向所述障礙物的方向選取滿足預設條件的位置點作為中轉點的步驟包括:
以所述第一位置點和第二位置點的連線為基準線,以所述基準線與所述障礙物靠近所述第一位置點的交點作為基準碰撞點;
基于所述基準碰撞點,延所述障礙物的預設碰撞方向依次檢測是否存在滿足預設條件的位置點,若存在,則將該位置點作為中轉點。
進一步地,基于多次碰撞法朝向所述障礙物的方向選取滿足預設條件的位置點作為中轉點的步驟包括:
檢測在所述第一位置點朝向所述障礙物的預設范圍內是否存在滿足預設條件的位置點;
若不存在,則控制玩家按照預設距離進行位移以到達新的第一位置點,并繼續執行檢測在所述第一位置點朝向所述障礙物的預設范圍內是否存在滿足預設條件的位置點的步驟,直到玩家當前所在的第一位置點朝向所述障礙物的預設范圍內存在滿足預設條件的位置點時,將該位置點作為中轉點。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京像素軟件科技股份有限公司,未經北京像素軟件科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711283043.5/2.html,轉載請聲明來源鉆瓜專利網。





