cocos2d-x使用shader实现color offset的问题

zengjc1412 2016-01-30 10:43:25
项目需要 要求图片能够变色,和flash中高级面板调试出来的一样的效果。默认setColor是Multiplier,offset不支持,自己动手写了一个,但是不知道哪里不对,请教高人

varying vec4 v_fragmentColor;
varying vec2 v_texCoord;

uniform vec4 u_colorOffset

void main()
{
//gl_FragColor = v_fragmentColor * texture2D(CC_Texture0, v_texCoord);
vec4 color = v_fragmentColor * texture2D(CC_Texture0, v_texCoord);
gl_FragColor = vec4(color.rgb + u_colorOffset.rgb * color.a, color.a);
}

上面的写法在大多数的情况下是正确的,但是在某些白色带透明渐变的情况下就不对了,小弟不才,还望大家指教
...全文
167 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

721

社区成员

发帖
与我相关
我的任务
社区描述
Cocos2d-x相关内容讨论专区
社区管理员
  • Cocos2d-x
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧