[发明专利]实时虚拟场景中圆柱碰撞体与凸体碰撞探测的方法和系统在审
申请号: | 201510864339.0 | 申请日: | 2015-11-30 |
公开(公告)号: | CN105512377A | 公开(公告)日: | 2016-04-20 |
发明(设计)人: | 匡西尼 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 何平;邓云鹏 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实时 虚拟 场景 圆柱 碰撞 探测 方法 系统 | ||
技术领域
本发明涉及计算机应用领域,特别是涉及一种实时虚拟场景中圆柱碰撞体 与凸体之间碰撞探测的方法和装置。
背景技术
虚拟场景是指通过计算机模拟出来的场景,例如游戏场景、动漫场景等。 以游戏场景为例,当一个虚拟对象遇到一个障碍物,需要绕过该障碍物,即虚 拟对象与障碍物之间的碰撞,传统的处理方式是将虚拟对象和障碍物都简化处 理为轴对齐包围盒的碰撞体,如图1所示,虚拟对象简化成的碰撞体110要绕 过墙角120,则按照图中所示的移动变化过程,需要等碰撞体110在整个移出墙 角后,才能继续沿着墙的下边沿前进。
然而,这样的碰撞体110碰撞路过墙角时会让操作者操作不顺畅,需要控 制碰撞体移动整个身体才能越过墙角,移动效率低。
发明内容
基于此,有必要针对传统的碰撞体之间碰撞操作不顺畅且移动效率低的问 题,提供一种实时虚拟场景中圆柱碰撞体与凸体之间碰撞探测的方法,能提高 操作的流畅度,且能提高移动效率。
此外,还有必要提供一种实时虚拟场景中圆柱碰撞体与凸体之间碰撞探测 的装置,能提高操作的流畅度,且能提高移动效率。
一种实时虚拟场景中圆柱碰撞体与凸体之间碰撞探测的方法,包括以下步 骤:
将虚拟场景中虚拟对象所对应的圆柱碰撞体转化为与圆柱碰撞体同中心点 的预设多边形棱柱;
将所述预设多边形棱柱变换到凸体的局部坐标系,得到预设多边形棱柱在 凸体的局部坐标系下的位置;
根据所述预设多边形棱柱在凸体的局部坐标系下的位置获取预设多边形棱 柱各个面的法向、预设多边形的边方向和棱柱的棱的边方向;
获取所述凸体的各个面的法向和各个边方向;
将所述凸体的各个边方向与所述预设多边形的边方向和棱柱的棱的边方向 分别做向量积;
将所述预设多边形棱柱各个面的法向、凸体的各个面的法向及所述向量积 中一种或多种作为测试轴;
根据各测试轴及预设多边形棱柱在凸体的局部坐标系下的位置得到圆柱碰 撞体在测试轴上的投影长度及投影位置,并获取凸体在各测试轴上的投影;
若所述圆柱碰撞体和凸体在各测试轴上投影均相交,则判定圆柱碰撞体与 凸体之间有碰撞。
一种实时虚拟场景中圆柱碰撞体与凸体之间碰撞探测的装置,包括:
转化模块,用于将虚拟场景中虚拟对象所对应的圆柱碰撞体转化为与圆柱 碰撞体同中心点的预设多边形棱柱;
变换模块,用于将所述预设多边形棱柱变换到凸体的局部坐标系,得到预 设多边形棱柱在凸体的局部坐标系下的位置;
第一获取模块,用于根据所述预设多边形棱柱在凸体的局部坐标系下的位 置获取预设多边形棱柱各个面的法向、预设多边形的边方向和棱柱的棱的边方 向;
第二获取模块,用于获取所述凸体的各个面的法向和各个边方向;
向量积获取模块,用于将所述凸体的各个边方向与所述预设多边形的边方 向和棱柱的棱的边方向分别做向量积;
测试轴获取模块,用于将所述预设多边形棱柱各个面的法向、凸体的各个 面的法向及所述向量积一种或多种作为测试轴;
投影模块,用于根据各测试轴及预设多边形棱柱在凸体的局部坐标系下的 位置得到圆柱碰撞体在测试轴上的投影长度及投影位置,并获取凸体在各测试 轴上的投影;
判定模块,用于若所述圆柱碰撞体和凸体在各测试轴上投影均相交,则判 定圆柱碰撞体与凸体之间有碰撞。
上述实时虚拟场景中圆柱碰撞体与凸体之间碰撞探测的方法和装置,将虚 拟场景中的虚拟对象作为圆柱碰撞体与凸体进行碰撞,代替了原来的轴对齐包 围盒与凸体进行碰撞,缩短了移动距离,提高了移动效率,也提高了操作的流 畅度,将圆柱碰撞体转化为预设多边形棱柱,可得到圆柱碰撞体的面的法向和 边方向,便于选取测试轴,通过测试轴的合理选择,以及圆柱碰撞体和凸体在 测试轴上的投影相交情况判断圆柱碰撞体和凸体之间的碰撞情况,提高了判断 的准确性。
附图说明
图1为传统的实时虚拟场景中碰撞体之间碰撞的过程示意图;
图2为一个实施例中实时虚拟场景中圆柱碰撞体与凸体之间碰撞探测方法 及装置的应用环境示意图;
图3A为一个实施例中终端的内部结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510864339.0/2.html,转载请声明来源钻瓜专利网。