存储着色器由 GLTools 的 C++ 类 GLShaderManager 管理着,可以满足我们基本的渲染需求。
GLShaderManager 的初始化和调用:
GLShaderManager shaderManager;
shaderManager.InitializeStockShaders();
shaderManager.UseStockShader(GLEnum shader,...)
存储着色器的种类
存储着色器的种类如图:
单元着色器
使用场景:绘制默认 OpenGL 坐标系(-1, 1)下图形。图形所有片段都会以同一种颜色填充。
GLShaderManager::UserStockShader(GLT_SHADER_IDENTITY,GLfloat vColor[4]);
GLT_SHADER_IDENTITY:存储着色器种类——单元着色器
vColor[4]:颜色值
平面着色器
使用场景:在绘制图形时,可以应用变换(模型/投影变化)。
GLShaderManager::UserStockShader(GLT_SHADER_FLAT,GLfloat mvp[16],GLfloat vColor[4]);
GLT_SHADER_FL