UGUI鼠标点击扩散UI效果

UGUI鼠标点击扩散UI效果_第1张图片
canvas上挂载Diffuse脚本
unity的奇妙之处就是对底层不了解,你就会懵逼,而我已经懵逼
思路是鼠标点击的位置来一个圆形检测,然后鼠标位置减去检测到的碰撞体的位置的一个向量归一化后给一个你想给你的扩散的距离

1,第一个懵逼,鼠标点击的Input.mouseposition并不能直接使用,必须以屏幕的高宽结合Input.MousePosition才能得到正确的鼠标点击位置

2,第二个懵逼 这个正确的鼠标位置并不能以这个位置进行圆形检测,必须在此点生成一个物体,通过这个物体的位置进行圆形检测,对此我只能说牛逼

3,第三个懵逼 先前使用GridLyaoutGrounp进行格子生成,然后删除掉这个组件,因为怕有影响,这时生成的格子的描点全是左上对其,将描点设置为中心点,会修复格子回到原位时产生的偏差

diffuse脚本,生成的img就是随便Canvas创建的Img作为的预制体UGUI鼠标点击扩散UI效果_第2张图片
Cell脚本挂载在格子(Image)上面
UGUI鼠标点击扩散UI效果_第3张图片
再贴一张白嫖的图,方便以后查看这个rectransform
UGUI鼠标点击扩散UI效果_第4张图片
效果图
UGUI鼠标点击扩散UI效果_第5张图片

锚点很神奇,这是个巨坑,3个坐标巨坑。用了很久的时间解决坐标的问题。jay的歌和写代码挺搭,funny

你可能感兴趣的:(ugui)