細述Cocos Creator Shader與材質(zhì),能看完的都說好!
前言
Cocos creator 2.1以后引入了3D渲染的底層,所以引入了Shader和材質(zhì)系統(tǒng),比如精靈,下面有一個材質(zhì), 材質(zhì)又選了一個Shader;

1: 什么是Shader和材質(zhì)?
Shader是一種給顯卡GPU執(zhí)行的程序, 是一種繪制算法,顯卡的渲染流水線加載Shader代碼后,就能夠在繪制的時候執(zhí)行Shader的代碼。Cocos 有自己的一個Shader的結(jié)構(gòu),Shader的開發(fā)語言cocos使用的是GLSL編程語言。材質(zhì)是一種配置文件,選好一個Shader,并指定好這個Shader所需要的參數(shù);
1.2: cocos 物體是如何繪制的?
以Sprite組件為例,它有一個材質(zhì),這個時候繪制圖片的時候,就使用這個材質(zhì),通過材質(zhì)渲染管道準備好算法,和參數(shù),這樣,渲染管道就繪制出來。
2: 完整的Shader渲染流程(pass)

3: cocos Shader的結(jié)構(gòu)
3.1: 描述部分
1. ?`頂點shader在哪里,著色shader在哪里?材質(zhì)上的參數(shù)定義哪些,這個是描述部分。`

3.2: 頂點Shader部分:

3.3: 著色Shader部分:

4: GLSL常用的概念:
GLSL變量精度級別:highp, mediump, lowp (高, 中, 低) attribute: 渲染管道傳過來的數(shù)據(jù), 只能在頂點Shader中使用; varying: vectex Shader, frag Shader 的傳遞變量 uniform: 外部程序可以來設(shè)置的變量;
如果需要完整告訴模糊Shader的同學(xué),可以在文章下方評論區(qū)留言即可哦!

標(biāo)簽: