实时虚拟场景中碰撞体之间碰撞探测的方法和装置的制造方法

文档序号:9728102阅读:232来源:国知局
实时虚拟场景中碰撞体之间碰撞探测的方法和装置的制造方法
【技术领域】
[0001] 本发明涉及计算机应用领域,特别是涉及一种实时虚拟场景中碰撞体之间碰撞探 测的方法和装置。
【背景技术】
[0002] 虚拟场景是指通过计算机模拟出来的场景,例如游戏场景、动漫场景等。以游戏场 景为例,当一个虚拟对象遇到一个障碍物,需要绕过该障碍物,即虚拟对象与障碍物之间的 碰撞,传统的处理方式是将虚拟对象和障碍物都简化处理为轴对齐包围盒的碰撞体,如图1 所示,虚拟对象简化成的碰撞体110要绕过墙角120,则按照图中所示的移动变化过程,需要 等碰撞体110在整个移出墙角后,才能继续沿着墙的下边沿前进。
[0003] 然而,这样的碰撞体110碰撞路过墙角时会让操作者操作不顺畅,需要控制碰撞体 移动整个身体才能越过墙角,移动效率低。

【发明内容】

[0004] 基于此,有必要针对传统的碰撞体之间碰撞操作不顺畅且移动效率低的问题,提 供一种实时虚拟场景中碰撞体之间碰撞探测的方法,能提高操作的流畅度,且能提高移动 效率。
[0005] 此外,还有必要提供一种实时虚拟场景中碰撞体之间碰撞探测的装置,能提高操 作的流畅度,且能提高移动效率。
[0006] -种实时虚拟场景中碰撞体之间碰撞探测的方法,包括以下步骤:
[0007] 获取虚拟场景中虚拟对象所对应的圆柱碰撞体到第一二叉空间分割碰撞体各个 平面的最短距离;
[0008] 根据所述最短距离扩展所述第一二叉空间分割碰撞体的各个平面形成第二二叉 空间分割碰撞体;
[0009] 将所述第一二叉空间分割碰撞体的轴对齐包围盒进行扩展生成扩展外边缘包围 盒;
[0010] 将所述生成的扩展外边缘包围盒与所述第二二叉空间分割碰撞体取交集;
[0011] 将所述圆柱碰撞体与所述扩展外边缘包围盒与所述第二二叉空间分割碰撞体取 交集得到的结果进行碰撞探测。
[0012] -种虚拟场景中碰撞体之间碰撞探测的装置,包括:
[0013] 距离获取模块,用于获取虚拟场景中虚拟对象所对应的圆柱碰撞体到第一二叉空 间分割碰撞体各个平面的最短距离;
[0014] 扩展模块,用于根据所述最短距离扩展所述第一二叉空间分割碰撞体的各个平面 形成第二二叉空间分割碰撞体;
[0015] 生成模块,用于将所述第一二叉空间分割碰撞体的轴对齐包围盒进行扩展生成扩 展外边缘包围盒;
[0016] 取值模块,用于将所述生成的扩展外边缘包围盒与所述第二二叉空间分割碰撞体 取交集;
[0017] 碰撞探测模块,用于将所述圆柱碰撞体与所述扩展外边缘包围盒与所述第二二叉 空间分割碰撞体取交集得到的结果进行碰撞探测。
[0018] 上述实时虚拟场景中碰撞体之间碰撞探测的方法和装置,通过将第一二叉空间分 割碰撞体的各个平面向外根据最短距离进行扩展得到第二二叉空间分割碰撞体,且以圆柱 碰撞体的中心点为基准对第一二叉空间分割碰撞体扩展得到扩展外边缘包围盒,将第二二 叉空间分割碰撞体和扩展外边缘包围盒取交集,通过圆柱碰撞体与交集进行碰撞,实现了 圆柱碰撞体与第一二叉空间分割碰撞体的碰撞,碰撞探测是为了避免碰撞体碰撞,采用圆 柱碰撞体与第一二叉空间分割碰撞体的轴对齐包围盒的碰撞探测,相比于传统的碰撞体以 两个轴对齐包围盒进行碰撞探测,不需像轴对齐包围盒一样控制虚拟对象移出整个身子才 能从第一二叉空间分割碰撞体的拐角越过,圆柱碰撞体在拐角处可以平滑的越过,即只需 移出较短的距离即可越过拐角,缩短了移出的距离,在移动速度相同的情况下,提高了移动 效率,且因是平滑的移动,使得操作更流畅。
【附图说明】
[0019] 图1为传统的实时虚拟场景中碰撞体之间碰撞探测的过程示意图;
[0020] 图2为一个实施例中实时虚拟场景中碰撞体之间碰撞探测的方法及装置的应用环 境不意图;
[0021] 图3A为一个实施例中终端的内部结构示意图;
[0022]图3B为一个实施例中服务器的内部结构示意图;
[0023]图4为一个实施例中实时虚拟场景中碰撞体之间碰撞探测的方法的流程图;
[0024]图5为三条线组成三角形的示意图;
[0025]图6为三维空间中三角锥划分形成的空间示意图;
[0026]图7为一个实施例中圆柱碰撞体的不意图;
[0027]图8为俯视情况下的圆柱碰撞体到BSP平面的最短距离示意图;
[0028]图9为圆柱碰撞体到BSP碰撞体的各个平面的距离与圆柱碰撞体到BSP碰撞体的实 际距离的差距示意图;
[0029]图10为BSP碰撞体的各个平面向外扩展的示意图;
[0030]图11为圆柱碰撞体在第二BSP碰撞体上移动情况的示意图;
[0031]图12为第二BSP碰撞体与扩展外边缘包围盒取交集的示意图;
[0032]图13为采用圆柱碰撞体碰撞探测的理论结果示意图;
[0033] 图14为一个实施例中扩展外边缘包围盒的四角添加斜面的示意图;
[0034] 图15为一个实施例中实时虚拟场景中碰撞体之间碰撞探测的装置的结构框图;
[0035] 图16为另一个实施例中实时虚拟场景中碰撞体之间碰撞探测的装置的结构框图;
[0036] 图17为另一个实施例中实时虚拟场景中碰撞体之间碰撞探测的装置的结构框图。
【具体实施方式】
[0037] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。
[0038]图2为一个实施例中实时虚拟场景中碰撞体之间碰撞探测的方法及装置的应用环 境示意图。如图2所示,该应用环境包括终端210和服务器220,终端210可为多个。多个终端 210与服务器220进行通信。实时虚拟场景中碰撞体之间碰撞探测的方法可运行于终端210 上,终端210从服务器220上获取虚拟场景数据,终端210获取虚拟场景中第一二叉空间分割 碰撞体和虚拟对象所对应的圆柱碰撞体,对第一二叉空间分割碰撞体和圆柱碰撞体进行碰 撞探测。实时虚拟场景可为实时游戏场景或实时动漫场景等,虚拟对象可为人物或物体。第 一二叉空间分割碰撞体可为人物或物体等。
[0039]图3A为一个实施例中终端210的内部结构示意图。如图3A所示,该终端210包括通 过系统总线连接的处理器、存储介质、内存和网络接口、声音采集装置、显示屏、扬声器和输 入装置。其中,终端的存储介质存储有操作系统,还包括一种实时虚拟场景中碰撞体之间碰 撞的装置,该实时虚拟场景中碰撞体之间碰撞探测的装置用于实现一种实时虚拟场景中碰 撞体之间碰撞探测的方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。终端 中的内存为存储介质中的实时虚拟场景中碰撞体之间碰撞探测的装置的运行提供环境,网 络接口用于与服务器进行网络通信,如发送数据请求至服务器,接收服务器返回的相应数 据等。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上 覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、 触控板或鼠标等。该终端可以是手机、台式计算机、平板电脑或者个人数字助理等。本领域 技术人员可以理解,图3A中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不 构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更 少的部件,或者组合某些部件,或者具有不同的部件布置。
[0040]图3B为一个实施例中服务器220的内部结构示意图。如图3B所示,该服务器包括通 过系统总线连接的处理器、存储介质、内存、网络接口、显示屏、输入装置。其中,该服务器的 存储介质存储有操作系统、数据库和实时虚拟场景中碰撞体之间碰撞的装置,数据库中存 储有虚拟场景数据等,该实时虚拟场景中碰撞体之间碰撞探测的装置用于实现适用于服务 器的一种实时虚拟场景中碰撞体之间碰撞探测的方法。该服务器的处理器用于提供计算和 控制能力,支撑整个服务器的运行。该服务器的内存为存储介质中的实时虚拟场景中碰撞 体之间碰撞探测的装置的运行提供环境。该服务器的显示屏可以是液晶显示屏或者电子墨 水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨 迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该服务器的网络接口用于据以与外 部的终端通过网络连接通信,比如接收终端发送的数据交互请求以及向终端返回数据等。 服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员 可以理解,图3B中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本 申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的 部件,或者组合某些部件,或者具有不同的部件布置。
[0041] 在其他应用环境中,可只包括终端210或服务器220,即实时虚拟场景中碰撞体之 间的碰撞探测的方法可只需运行于终端或服务器上,例如单机的实时游戏场景或实时动漫 场景中虚拟对象的移动等。用户在终端上运行下载的单机游戏或测试人员在服务器上测试 单机游戏等。
[0042] 为了便于探测碰
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1