赞
踩
unity内置的OnMouseOver等方法,原理是利用射线检测。
前提条件一是要有collider,二是摄像机要能够进行射线检测。
在做的项目中,有个UGUI的2d物体无法使用OnMouseOver,猜测是因为摄像机实际上不是对着UI的。
OnMouseOver这类方法,不适合对UI的拖拽进行处理,适合对3d物体的拖拽进行处理。
EventTrigger的使用方法有很多,一是手动添加EventTrigger组件,然后对事件函数进行拖拽。二是可以重写接口。
重写接口时,要注意,IBeginDrawHandler和IEndDrawHandler一定要有IDrawHandler才能实现。
在鼠标拖拽时,UI物体与鼠标相差太远,原因可能是因为Canvas的Scale数值不是1,这时候要么就全调成1,要么就在脚本中除以相应的画布尺寸大小系数。
学习时看的视频链接:【【盘点】Unity常用的三种拖拽方法(内置方法 + 接口 + Event Trigger组件)】 【盘点】Unity常用的三种拖拽方法(内置方法 + 接口 + Event Trigger组件)_哔哩哔哩_bilibili
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。