统一 - 检测已经联系的游戏对象

soo*_*oon 4 eventtrigger collision unity-game-engine

想象一下,我有2个gameobjects,红色的盘子和苹果.当比赛开始时(这是至关重要的),苹果已经在红盘上(2 gameobjects已经接触过).所以如果我移动红板,那么苹果就会成为红板的"父母"并跟随变换.

我怎么能这样做Unity3D?我看代码TriggerCollision,他们都需要至少一个阶段是1移动gameobject碰撞其他的,我没有那个.

知道怎么处理这个吗?

soo*_*oon 6

我找到了解决方案: Bounds.Intersect

如:

var bounds1 = gameObject1.renderer.bounds;

var bounds2 = gameObject2.renderer.bounds;



if (bounds1.Intersects(bounds2))

{

    // do something

}
Run Code Online (Sandbox Code Playgroud)

所以有了这个,我的问题就解决了.

  • 非常感谢!:DI更喜欢gameObject1.collider.bounds,使其独立于图形(至少我认为是这样). (3认同)