Cocos creator 2.1以後引入了3D渲染的底層,所以引入了Shader和材質系統,比如精靈,下面有一個材質, 材質又選了一個Shader;
給大家推薦一個cocos creator學習+交流 705182843
1: 什麼是Shader和材質?
Shader是一種給顯卡GPU執行的程序, 是一種繪製算法,顯卡的渲染流水線加載Shader代碼後,就能夠在繪製的時候執行Shader的代碼。Cocos 有自己的一個Shader的結構,Shader的開發語言cocos使用的是GLSL編程語言。
材質是一種配置文件,選好一個Shader,並指定好這個Shader所需要的參數;
2: cocos 物體是如何繪製的?
以Sprite組件爲例,它有一個材質,這個時候繪製圖片的時候,就使用這個材質,通過材質渲染管道準備好算法,和參數,這樣,渲染管道就繪製出來。
2: 完整的Shader渲染流程(pass)
3: cocos Shader的結構
1: 描述部分
頂點shader在哪裏,着色shader在哪裏?材質上的參數定義哪些,這個是描述部分。
2: 頂點Shader部分:
3: 着色Shader部分:
4: GLSL常用的概念:
GLSL變量精度級別: highp, mediump, lowp (高, 中, 低)
attribute: 渲染管道傳過來的數據, 只能在頂點Shader中使用;
varying: vectex Shader, frag Shader 的傳遞變量
uniform: 外部程序可以來設置的變量;
如果需要完整高斯模糊Shader的同學,可以聯繫我