采样一次后,不能再次采样,在编辑器会报错?
如果我需要多次采样同一个纹理,怎么办?
确实,两次采样会有重复的临时变量,你可以建一个 function 来采样?
我都没发现
还有就是,我发现还不能直接对 v_uv0 变量进行复制操作。。需要用一个临时变量来存一下。好麻烦啊。
这个临时变量是 CCTexture 宏根据传入的名字生成的,两次调用都会生成一个 texture_tmp 的变量,所以重定义了。
你可以先自定义一个类似下面的方法来获取
vec4 textureFunc (sampler2D tex, vec2 uv, inout vec4 color) {
CCTexture(tex, uv, color);
}
textureFunc (texture, uv1, color1);
textureFunc (texture, uv2, color2);
好吧,我用的glsl 原生的texture2D 方法解决了。。