Cocos2d iphone 从纹理图集掩蔽精灵

Cocos2d iphone 从纹理图集掩蔽精灵,cocos2d-iphone,opengl-es-2.0,shader,Cocos2d Iphone,Opengl Es 2.0,Shader,我需要给一个精灵戴面具。我遵循了本教程:,但问题是当我不是从单个png文件创建精灵时,而是使用“initWithPriteFrameName”方法从精灵工作表创建精灵时 遮罩文件将应用于大精灵表的纹理,而不是小精灵的纹理 有什么线索可以帮我解决吗 干杯, Marcin这里的问题是,相同的tex坐标被用于精灵和面具 每个顶点需要发送两个以上的UV坐标,这与地图册中的遮罩相匹配 为这些遮罩坐标创建另一个变量v_maskTexCoord,然后在其中执行此操作: vec4 texColor = text

我需要给一个精灵戴面具。我遵循了本教程:,但问题是当我不是从单个png文件创建精灵时,而是使用“initWithPriteFrameName”方法从精灵工作表创建精灵时

遮罩文件将应用于大精灵表的纹理,而不是小精灵的纹理

有什么线索可以帮我解决吗

干杯,
Marcin

这里的问题是,相同的tex坐标被用于精灵和面具

每个顶点需要发送两个以上的UV坐标,这与地图册中的遮罩相匹配

为这些遮罩坐标创建另一个变量v_maskTexCoord,然后在其中执行此操作:

vec4 texColor = texture2D(u_texture, v_texCoord);
vec4 maskColor = texture2D(u_mask, v_texCoord);
换成

vec4 texColor = texture2D(u_texture, v_texCoord);
vec4 maskColor = texture2D(u_mask, v_maskTexCoord);

谢谢,帮了大忙!在将属性传递到顶点着色器(以前从未使用过着色器)时遇到了一些问题,但我成功地做到了这一点,现在它就像一个符咒。