重置对象冲突,以便OnCollisionEnter再次触发

时间:2017-09-24 13:33:15

标签: unity3d

我们有一个不寻常的用例。假设你有两个触摸的物体。这将触发OnCollisionEnter。现在我们改变其中一个的所有权(这是一个多人VR游戏)。现在我们还需要为所有触摸项目分配所有权,以使本地物理看起来更好。

天真的蛮力方式是使用OnCollisionStay并在每一帧进行所有权检查。但它的天真和增加的帧时间。

在获得所有权时,必须有一种“重置”对象碰撞的方法,因此OnCollisionEnter会再次触发所有涉及的项目吗?

1 个答案:

答案 0 :(得分:0)

可能会跟踪当前正在触摸列表中某个项目的所有项目。

OnCollisionEnter中添加新项目。

删除OnCollisionExit中的项目。

然后,您可以循环播放所有当前触摸的项目以更改所有者