Unity 多个对撞机在同一个物体上
Unity multiple collider on same object
我在同一个游戏对象上使用多个盒子碰撞器,问题是,是否可以使用
分别引用每个碰撞器
gameObject.getComponent().enabled = false;
请记住,我的碰撞器很少,我希望其中一些保持启用状态,而其他碰撞器将被禁用。
我所做的是创建空 child GameObjects [每个对撞机一个 GameObject] 并为它们分配对撞机,然后我会为这些 children 分配标签 [在你的情况下他们可以是 'AlwaysActive' 和 'SwitchingActive' 或任何你能想到的更好的名字。
然后在 parent 中我将使用 GetComponentsinChildren<Collider>
查找所有碰撞器,并检查 GameObject(相应碰撞器)的标签是否符合我的要求。如果是,我将完成我要求的任务,否则跳过它。
注意:
child 游戏对象上的碰撞体不会在 parent 脚本中调用 OnTriggerEnter
或 OnCollisionEnter
。我使用委托策略从 child 游戏 object 中获得碰撞到我的 parent 游戏 object.
我在同一个游戏对象上使用多个盒子碰撞器,问题是,是否可以使用
分别引用每个碰撞器
gameObject.getComponent().enabled = false;
请记住,我的碰撞器很少,我希望其中一些保持启用状态,而其他碰撞器将被禁用。
我所做的是创建空 child GameObjects [每个对撞机一个 GameObject] 并为它们分配对撞机,然后我会为这些 children 分配标签 [在你的情况下他们可以是 'AlwaysActive' 和 'SwitchingActive' 或任何你能想到的更好的名字。
然后在 parent 中我将使用 GetComponentsinChildren<Collider>
查找所有碰撞器,并检查 GameObject(相应碰撞器)的标签是否符合我的要求。如果是,我将完成我要求的任务,否则跳过它。
注意:
child 游戏对象上的碰撞体不会在 parent 脚本中调用 OnTriggerEnter
或 OnCollisionEnter
。我使用委托策略从 child 游戏 object 中获得碰撞到我的 parent 游戏 object.