首页 > 代码库 > 【Unity3D】【NGUI】如何给Clipping的Panel下的UITexture加shader

【Unity3D】【NGUI】如何给Clipping的Panel下的UITexture加shader

NGUI讨论群:333417608

NGUI版本:3.6.5



NGUI在较新的版本中,为了实现Clipping嵌套,为他自身的一些shader写了几个版本。

Unlit - Transparent Colored.shader     无Clipping

Unlit - Transparent Colored 1.shader     1层Clipping

Unlit - Transparent Colored 2.shader     2层Clipping

Unlit - Transparent Colored 3.shader     3层Clipping


替换shader的代码在UIDrawCall的CreateMaterial部分。

所以如果你新增了自己的shader,而且要支持Clipping的话,就需要也同时实现以上的4个版本


其实上面4个版本的主体内容是一样的,所以如果为了方便,你可以:

1、把这4个shader复制一份

2、修改每个shader上最上面的名字

3、把自己的shader主体功能部分每个里面替换


(NGUI默认支持3层嵌套Clipping,你可以自己扩展出4、5、6等,但是没必要了)

【Unity3D】【NGUI】如何给Clipping的Panel下的UITexture加shader