[发明专利]碰撞检测方法、装置、存储介质及电子装置有效
申请号: | 201910350716.7 | 申请日: | 2019-04-28 |
公开(公告)号: | CN110180182B | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 郑贵荣 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | A63F13/52 | 分类号: | A63F13/52;A63F13/56;A63F13/822 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 周婷婷 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 碰撞 检测 方法 装置 存储 介质 电子 | ||
本发明公开了一种碰撞检测方法、装置、存储介质及电子装置。其中,该方法包括:在虚拟地图中获取虚拟角色所对应的位置的目标中心点,其中,虚拟地图上还显示有静态障碍区域,静态障碍区域为被设置为不允许虚拟角色出现的区域;在预先确定的有号距离集合中确定出目标中心点的目标有号距离,其中,有号距离集合中的每个有号距离表示虚拟地图上的点到静态障碍区域的边界的最短距离;在目标有号距离小于虚拟角色的半径的情况下,确定出虚拟角色与静态障碍区域发生了碰撞。本发明解决了相关技术中碰撞检测的检测效率较低的技术问题。
技术领域
本发明涉及计算机领域,具体而言,涉及一种碰撞检测方法、装置、存储介质及电子装置。
背景技术
在目前很多类型的游戏中,都会对游戏中的虚拟角色进行移动,游戏中也存在有很多的障碍物,这就需要虚拟角色不能出现在障碍物所在的区域中,因此需要对虚拟角色和障碍物进行碰撞检测以及确定发生碰撞后虚拟角色如何移动,目前的检测方法大致有物理碰撞的方式和NevMesh的方式等等,但是这些方式的碰撞检测过程都较为复杂,并且时间复杂度也较高,检测的准确度较低。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种碰撞检测方法、装置、存储介质及电子装置,以至少解决相关技术中碰撞检测的检测效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种碰撞检测方法,包括:
在虚拟地图中获取虚拟角色所对应的位置的目标中心点,其中,所述虚拟地图上还显示有静态障碍区域,所述静态障碍区域为被设置为不允许所述虚拟角色出现的区域;
在预先确定的有号距离集合中确定出所述目标中心点的目标有号距离,其中,所述有号距离集合中的每个有号距离表示所述虚拟地图上的点到所述静态障碍区域的边界的最短距离;
在所述目标有号距离小于所述虚拟角色的半径的情况下,确定出所述虚拟角色与所述静态障碍区域发生了碰撞。
根据本发明实施例的另一方面,还提供了一种碰撞检测装置,包括:
第一获取模块,用于在虚拟地图中获取虚拟角色所对应的位置的目标中心点,其中,所述虚拟地图上还显示有静态障碍区域,所述静态障碍区域为被设置为不允许所述虚拟角色出现的区域;
第一确定模块,用于在预先确定的有号距离集合中确定出所述目标中心点的目标有号距离,其中,所述有号距离集合中的每个有号距离表示所述虚拟地图上的点到所述静态障碍区域的边界的最短距离;
第二确定模块,用于在所述目标有号距离小于所述虚拟角色的半径的情况下,确定出所述虚拟角色与所述静态障碍区域发生了碰撞。
可选地,所述装置还包括:
处理模块,用于对所述虚拟地图进行栅格化处理,得到多个栅格;
第二获取模块,用于获取所述多个栅格中每个栅格的顶点所对应的有号距离;
第三确定模块,用于将包括所述多个栅格中每个栅格的顶点所对应的有号距离的集合确定为所述预先确定的有号距离集合。
可选地,第一确定模块包括:
第一确定单元,用于从所述多个栅格中确定所述目标中心点所在的目标栅格;
获取单元,用于从所述预先确定的有号距离集合中获取所述目标栅格的四个目标顶点所对应的有号距离;
第二确定单元,用于根据所述四个目标顶点所对应的有号距离确定所述目标中心点的所述目标有号距离。
可选地,第一获取模块包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910350716.7/2.html,转载请声明来源钻瓜专利网。