cocos2d-x笔记-CCGLProgram

引擎提供了CCGLProgram类来处理着色器相关操作,对当前绘图程序进行了封装,其中使用频率最高的应该是获取着色器程序的接口:

  1. const GLuint getProgram(); 

该接口返回了当前着色器程序的标识符。后面将会看到,在操作OpenGL的时候,我们常常需要针对不同的着色器程序作设置。注意,这里返回的是一个无符号整型的标识符,而不是一个指针或结构引用,这是OpenGL接口的一个风格。对象(纹理、着色器程序或其他非标准类型)都是使用整型标识符来表示的。

CCGLProgram提供了两个函数导入着色器程序,支持直接从内存的字符串流载入或是从文件中读取。这两个函数的第一个参数均指定了顶点着色器,后一个参数则指定了像素着色器:

  1. bool initWithVertexShaderByteArray(const GLchar* vShaderByteArray,  
  2.     const GLchar* fShaderByteArray);  
  3. bool initWithVertexShaderFilename(const char* vShaderFilename,  
  4.     const char* fShaderFilename);  
原文地址:https://www.cnblogs.com/newlist/p/3238598.html