转载 :http://blog.youkuaiyun.com/lyh916/article/details/50878799
效果图:
对于新手引导,主要分两种做法:需要使用shader的和不需要shader的,这里介绍的是后者
1.屏蔽点击
假如ImageA在ImageB前面,且ImageA完全覆盖ImageB,点击两者的重叠部分,ImageA会收到点击事件,而ImageB不会。对于UGUI来说,就是将一张灰色半透明图放到最前面了
2.目标UI高亮
这里有三种做法:
a.调整目标UI的Hierarchy层级
b.克隆目标UI,调整克隆UI的Hierarchy层级
c.使用Canvas + Graphic Raycaster
这里本人选择的是第三种,因为第一种会破坏原有的的层级,第二种的话,如果目标UI本身没有绑定Mono脚本,则需要复制事件,不太好
需要注意的是,上面三种做法都是会增加drawcall的
这里给出核心脚本:
3.目标UI的查找
首先,我们需要记录一下目标UI有哪些,查找的话,就是找UI的Hierarchy路径。对此,本人做了一个小工具:
这是unitypackage:
http://pan.baidu.com/s/1beSlVC