[发明专利]一种基于Unity的物体避免碰撞的方法及终端有效
申请号: | 201910067544.2 | 申请日: | 2019-01-24 |
公开(公告)号: | CN109933319B | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 刘德建;陈宇翔;林琛 | 申请(专利权)人: | 福建天晴数码有限公司 |
主分类号: | G06F8/36 | 分类号: | G06F8/36 |
代理公司: | 福州市博深专利事务所(普通合伙) 35214 | 代理人: | 林志峥 |
地址: | 350000 福建省福州市开发区君竹路8*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 unity 物体 避免 碰撞 方法 终端 | ||
本发明公开了一种基于Unity的物体避免碰撞的方法及终端,根据待移动物体所有的有效碰撞器计算所述待移动物体的碰撞盒信息,根据所述待移动物体的碰撞盒信息、投射中心及投射向量确定所述待移动物体在移动过程中的待爬升物体,根据所述待爬升物体和所述碰撞盒信息计算所述待移动物体下一帧的位置向量从而移动所述待移动物体,可以在不关注待移动物体的具体形状和结构特殊性的情况下实现待移动物体在移动过程中的自动爬升,从而避免碰撞,提高实现物体移动时自动爬升的代码的复用性,提高代码编辑的效率。
技术领域
本发明涉及Unity技术领域,尤其是涉及一种基于Unity的物体避免碰撞的方法及终端。
背景技术
在Unity中,物体在移动过程中与其他物体碰撞,会出现停顿、不跟随主控等问题,导致用户操作体验欠佳,也可能在移动过程中与其他物体重叠导致穿模穿帮,目前的解决方法是在物体移动过程中采用物体自动爬升的方式来避免与其他物体的碰撞,但仍然存在一些问题。
由于每个物体具有差异性,在Unity中针对某个物体编写的自动爬升方法存在特殊性,难以将该物体的自动爬升方法进行复用,这时若要实现其他物体移动时的自动爬升,只能通过重写自动爬升的方法或是改写自动爬升代码进行重用,代码复用性差,效率低下。
发明内容
本发明所要解决的技术问题是:提供一种基于Unity的物体避免碰撞的方法及终端,可以提高实现物体移动时自动爬升的代码的复用性,提高效率。
为了解决上述技术问题,本发明采用的一种技术方案为:
一种基于Unity的物体避免碰撞的方法,包括步骤:
S1、根据待移动物体所有的有效碰撞器计算所述待移动物体的碰撞盒信息,所述碰撞盒信息包括碰撞盒中心及碰撞盒范围,并确定所述待移动物体的投射中心及投射向量;
S2、根据所述待移动物体的碰撞盒信息、投射中心及投射向量确定所述待移动物体在移动过程中的待爬升物体;
S3、根据所述待爬升物体和所述碰撞盒信息计算所述待移动物体下一帧的位置向量,根据所述下一帧的位置向量移动所述待移动物体。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种基于Unity的物体避免碰撞的终端,包括存储器、处理器及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、根据待移动物体所有的有效碰撞器计算所述待移动物体的碰撞盒信息,所述碰撞盒信息包括碰撞盒中心及碰撞盒范围,并确定所述待移动物体的投射中心及投射向量;
S2、根据所述待移动物体的碰撞盒信息、投射中心及投射向量确定所述待移动物体在移动过程中的待爬升物体;
S3、根据所述待爬升物体和所述碰撞盒信息计算所述待移动物体下一帧的位置向量,根据所述下一帧的位置向量移动所述待移动物体。
本发明的有益效果在于:根据待移动物体所有的有效碰撞器计算所述待移动物体的碰撞盒信息,根据所述待移动物体的碰撞盒信息、投射中心及投射向量确定所述待移动物体在移动过程中的待爬升物体,根据所述待爬升物体和所述碰撞盒信息计算所述待移动物体下一帧的位置向量从而移动所述待移动物体,可以在不关注待移动物体的具体形状和结构特殊性的情况下实现待移动物体在移动过程中的自动爬升,从而避免碰撞,提高实现物体移动时自动爬升的代码的复用性,提高代码编辑的效率。
附图说明
图1为本发明实施例的一种基于Unity的物体避免碰撞的方法的步骤流程图;
图2为本发明实施例的一种基于Unity的物体避免碰撞的终端的结构示意图;
图3为本发明实施例相机视角中待移动物体的投射中心及投射向量示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天晴数码有限公司,未经福建天晴数码有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910067544.2/2.html,转载请声明来源钻瓜专利网。