根据大佬的ShaderHelper2改造了一下

初学CocosCreator,前几天看到大佬的ShaderHelper2(https://github.com/ShawnZhang2015/ShaderHelper2)感觉好犀利,但是又有点缺失,动手改造了一番

直接Fork大佬代码改造

  • 把各种参数都集成到ShaderHelper这个组件中
  • 增加sample2D参数
  • 选择着色器程序,会自动根据properties生成对应的项
  • 把effect拆成 index.json和对应的glsl文件,放在effects文件夹中(放在assets/effects里,主要为了格式化文件方便,也看得清楚)
  • 总结一点从shadertoy.com搬运效果的方法(assets/effects/ReadMe.md)

代码位置 https://github.com/playnb/ShaderHelper2

3赞

帧率太低, 不忍直视.

大佬能教下怎么移植shader或者改个2.2.0版本的出来吗?effect文件格式变了,导致不通用。但是新格式不知道怎么传参数进去。
还想请教下 给button里的background添加材质的话,怎么才能在点击的时候材质不失效

编辑器是很低 跑到浏览器里60fps妥妥的啊

现在最新的不就是2.1.3吗?
你要移植什么效果? 我刚刚学这个,最近兴趣特别足!

https://forum.cocos.com/t/cocos-creator-v2-2-0-09-20-alpha-9/82831/241

怎么学shader,一直不知道该怎么入门

我想做的效果其实特别简单,目前就是给一个button附加圆角和变成圆形的effect,但是目前我改好的材质在点击按钮的时候会消失,然后不知道该怎么办了(目前shader小白)。后期可能会想附加一些溶解,控雨等炫酷一些的特效。

其实我更想知道怎么学这些,一直不知道该怎么入门,授人以鱼不如授人以渔 谢谢大佬

厉害!

2.2.0改变好大,没有文档一时半会搞不定…

我就是百度 知乎各种 webGL
总结来这几个最好:
https://webglfundamentals.org/webgl/lessons/zh_cn/
https://zhuanlan.zhihu.com/c_1083379413340438528
https://thebookofshaders.com/?lan=ch
还有这个查函数
https://github.com/wshxbqq/GLSL-Card

2赞

其实你找个2.2.0的effect文件对比一下就知道了
就是改了一个effect头部格式,fs%的开始和结束 vs%的开始和结束。里面变了点变量名 输入变量变成in 输出变成out。
怎么传参数我还没看明白,传的参数老说找不到

感谢 我回头学学去

2.2.0的shader的版本变了 还有很多include,做了一些看不到的代码
我才初学,还没学那么多

现在的版本 传参数就是cc.Material的 setProperty,默认的create.d.ts里面没有,不过js里面有 你加上就能用
https://github.com/cocos-creator/engine/blob/c2223aba0949da0a54c0822a3632b90535ce038e/cocos2d/core/assets/material/CCMaterial.js#L159

mark

Mark!

mark

2.3.4版本报错