Unity OnMouseDrag()无法触发

脚本中的OnMouseXX()方法无法正常触发,请问如何解决?
已添加boxcollider2d且不是触发器,已设置无关图层为ignore raycast,已挂载脚本。

img

img

在Unity中,OnMouseDrag()方法是需要被挂载的对象具备Collider组件才能触发的。你已经添加了BoxCollider2D组件,说明Collider组件已经被对象拥有了,但是如果没有在编辑器中开启“可交互”(Interactable)属性,则鼠标事件将不会与组件交互。如果开启了Interactable属性还是无法触发事件,有可能是触发器被其他UI或Collider阻挡了,或者Collider2D的isTrigger属性被误设置为true了,你可以考虑修改碰撞框尺寸,检查Layer层级是否正确,或者排除其他原因,尝试在脚本中添加Debug语句,打印OnMouseXX()方法是否被正常触发。如果找到问题,及时调整,就能够解决不触发问题,实现OnMouseDrag方法的被调用。