Unity Sprite Renderer 精灵点击事件添加

背景故事:今天在工作中突然需要用到Sprite Renderer 精灵的点击 (我是菜鸡)我心里想难道要自己写一套射线检测吗! 然后我突然想到主程也用到了这个功能,我看他是怎么写的 嗯,然后我就去翻主程的代码,发现他用得是组件(来自菜鸡的震惊)竟然用得是组件 那我正好抄过来。

首先我们要在我们的摄像机上添加一个组件
Unity Sprite Renderer 精灵点击事件添加_第1张图片

接着我们创建一个精灵
Unity Sprite Renderer 精灵点击事件添加_第2张图片

然后我们为它添加BoxCollider 2D 碰撞器
然后再添加一个Event Trigger 组件 然后点击 Add New Event Type (添加新的事件类型)
我这里添加的PointerClick
Unity Sprite Renderer 精灵点击事件添加_第3张图片

然后我们写一个自己的脚本 然后写一个我们自定义的函数 例如:
Unity Sprite Renderer 精灵点击事件添加_第4张图片

然后我们在event Trigger上绑定我们的函数
Unity Sprite Renderer 精灵点击事件添加_第5张图片

这样我们就可以实现像UGUI的按钮一样添加点击事件绑定了
注: 因为所有的事件都依赖于事件系统所以 EventSystem是必不可少的东西
Unity Sprite Renderer 精灵点击事件添加_第6张图片

我的理解是当我们给摄像机添加Physics 2D Raycaster 后 当我们的鼠标在屏幕上时会发射一条射线 而射线会与碰撞器碰撞 而Event Trigger 组件相当于是接入了事件系统 当我们选定事件类型后就相当于给精灵绑定了事件 就类似于UGUI中的Button一样

你可能感兴趣的:(Unity,Sprite点击事件,unity3d)