在方法 OnCollisonEnter2D 中未检测到碰撞
Posted
技术标签:
【中文标题】在方法 OnCollisonEnter2D 中未检测到碰撞【英文标题】:Collision not detected in method OnCollisonEnter2D 【发布时间】:2020-11-21 14:32:12 【问题描述】:我正在尝试检测碰撞,但它们没有被触发:
public class cs_bullet : MonoBehaviour
void OnCollisonEnter2D(Collision2D coll)
Debug.Log("collision");
if (coll.gameObject.tag == "target")
Debug.Log("hit_target");
Destroy(coll.gameObject);
Destroy(gameObject);
子弹预制件
目标预制件
【问题讨论】:
您是如何移动对象的?您是否尝试过将Rigidbody2D
也放在您的目标对象上?尝试使用Continues
而不是Discrete
来检测刚体的碰撞
仅供参考,建议使用coll.gameObject.TagCompare('tag')
而不是coll.gameObject.tag == 'tag'
- answers.unity.com/questions/200820/…
【参考方案1】:
这可能是因为您需要将方法键入为“OnCollisionEnter2D”而不是“OnCollisonEnter2D”(您错过了名称中的“i”)。
【讨论】:
以上是关于在方法 OnCollisonEnter2D 中未检测到碰撞的主要内容,如果未能解决你的问题,请参考以下文章
在 UITextView 委托方法中未执行 if/else 语句
Swift 3 中未调用 UIPanGestureRecognizer 操作方法
在 iOS5 中未调用 UIViewController 设备旋转委托方法