Unity中关于刚体和碰撞器遇到的告警
告警信息:
Script error: OnCollisionEnter2D
This message parameter has to be of type: Collision2D
The message will be ignored.


解决:
经查验发现,由于该脚本是粘贴的类似功能脚本,而粘贴前使用的触发器,因此方法为 private void OnTriggerStay2D(Collider2D collision),而新脚本使用碰撞检测 OnCollisionEnter2D(Collision2D collision)。(注意标黑部分)
// 使用触发器获取碰撞物体 private void OnTriggerStay2D(Collider2D collision) { Kira kira = collision.GetComponent<Kira>(); if(kira != null) { ... } } // 使用碰撞器获取碰撞物体 private void OnCollisionEnter2D(Collision2D collision) { Kira kira = collision.gameObject.GetComponent<Kira>(); if (kira != null) { ... } }
浙公网安备 33010602011771号