cocos Shader & Glsl 入门(四)
#四丶 cocos creator Shader
基于cocos creator2.4.7版本的引擎
https://github.com/SaltedFish1012/cocosEffctProject
effct
首先在引擎中创建一个effct,打开之后看到分成三个部分
既图中的渲染流程清单,顶点着色器,片段着色器。详细说明在图中也有说明。
因为目前cocos版本的shader是基于GLSL 300 ES的。所以按照GLSL的语法即可。
cocos
cocos shader与GLSL的一些宏定义上有是有区别的,在cocos creator源码的BaseRender中声明了这些cocos shader使用的宏定义
static const size_t cc_lightDirection; static const size_t cc_lightColor; static const size_t cc_lightPositionAndRange; static const size_t cc_shadow_map[4]; static const size_t cc_shadow_map_lightViewProjMatrix; static const size_t cc_shadow_map_info; static const size_t cc_shadow_map_bias; static const size_t cc_shadow_lightViewProjMatrix; static const size_t cc_shadow_info; static const size_t cc_matView; static const size_t cc_matViewInv; static const size_t cc_matWorld; static const size_t cc_matWorldIT; static const size_t cc_matProj; static const size_t cc_matViewProj; static const size_t cc_cameraPos; static const size_t cc_time;
文档: https://docs.cocos.com/creator3d/manual/zh/material-system/builtin-shader-uniforms.html
