不能直接使用。 Unity Shader(ShaderLab 語法,包含 Properties、SubShader、Pass、CGPROGRAM 等塊)與 Cocos2d-x 使用的 OpenGL ES 著色器(分離的 .vsh 頂點著色器與 .fsh 片元著色器)格式完全不同。
| 特性 | Unity Shader | Cocos2d-x Shader |
|---|---|---|
| 文件結構 | 單 .shader 文件,聲明式 | 分離 .vsh/.fsh 文件,GLSL 代碼 |
| 屬性系統 | Properties 塊自動映射 Material 面板 | 手動綁定 uniform/attribute |
| 渲染管線 | 內置多 Pass、標籤、狀態設置 | 需自行管理 Program、Uniform、狀態 |
CGPROGRAM...ENDCG 內容)。precision mediump float)。.vsh / .fsh,在 Cocos2d-x 中用 GLProgram::createWithFilenames 加載。setUniformLocationWith1f 等)。無現成自動轉換工具,建議參考 Cocos2d-x 官方 Shader 範例(shaders/ 目錄)重寫。