Unity3D:UGUI Button不规则图片点击事件过滤器

Unity UGUI按钮点击的时候,由于有些时候会有透明部分,当点击按钮式总会出现透明部分挡住其他按钮的时候,为了避免这种情况,就有了今天的这个组件。

基本原理就是,获取图片点击位置的像素点颜色,判断是否透明,然后重写IsRaycastLocationValid接口,一开始我用鼠标点击位置,去获取像素点,但是好像没有效果,后来查了资料才知道,图片像素点坐标和鼠标图片上点击的位置,坐标系是不一样的,而且图片的像素坐标还会根据image的大小有变化。文章源自大腿Plus-https://www.zhaoshijun.com/archives/1256

上面就是代码,只要将这个代码放到Button上就可以了,其中那个alpahThreshold是判断是否可以点击的透明度,0是全透明的时候不能点击,0.5是半透明的时候不能点击。文章源自大腿Plus-https://www.zhaoshijun.com/archives/1256

最重要的一点就是图片要设置成可读写文章源自大腿Plus-https://www.zhaoshijun.com/archives/1256

Unity3D:UGUI Button不规则图片点击事件过滤器文章源自大腿Plus-https://www.zhaoshijun.com/archives/1256 文章源自大腿Plus-https://www.zhaoshijun.com/archives/1256

我的微信
微信扫一扫
weinxin
shijun_z
我的QQ
QQ扫一扫
weinxin
846207670
 最后更新:2023-10-24
大腿Plus
  • 本文由 大腿Plus 发表于 2019年9月2日 12:32:32
  • 转载请务必保留本文链接:https://www.zhaoshijun.com/archives/1256

发表评论