Cocos openGL编写自己的Shaders

Cocos openGL编写自己的Shaders,第1张

概述cocos2d-x 3.5,lua环境下实现按钮变灰; 代码调用: local program = cc.GLProgram:create("Shaders/Gray.vsh", "Shaders/Gray.fsh") program:bindAttribLocation(cc.ATTRIBUTE_NAME_POSITION, cc.VERTEX_ATTRIB_POSITION)

cocos2d-x 3.5,lua环境下实现按钮变灰;


代码调用:

    local program = cc.GLProgram:create("Shaders/Gray.vsh","Shaders/Gray.fsh")    program:bindAttribLocation(cc.ATTRIBUTE_name_position,cc.VERTEX_ATTRIB_position)     program:bindAttribLocation(cc.ATTRIBUTE_name_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORD)    program:link()    program:updateUniforms()label:setGLProgram( program )



自己的vsh和fsh

attribute vec4 a_position;attribute vec2 a_texCoord;attribute vec4 a_color;                    varying vec4 v_fragmentcolor;varying vec2 v_texCoord;                                voID main()    {                                gl_position = CC_PMatrix * a_position;    v_fragmentcolor = a_color;    v_texCoord = a_texCoord;}gray.vsh


varying vec4 v_fragmentcolor;    varying vec2 v_texCoord;    uniform sampler2D CC_Texture0;            voID main()            {    vec4 v_orcolor = v_fragmentcolor * texture2D(CC_Texture0,v_texCoord);    float gray = dot(v_orcolor.rgb,vec3(0.299,0.587,0.114));    gl_Fragcolor = vec4(gray,gray,v_orcolor.a);}                gray.fsh
总结

以上是内存溢出为你收集整理的Cocos openGL编写自己的Shaders全部内容,希望文章能够帮你解决Cocos openGL编写自己的Shaders所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1056238.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存