名称
glGetShaderSource - 从着色器对象返回源代码字符串
C规范
void glGetShaderSource( GLuint shader,
GLsizei bufSize,
GLsizei *length,
GLchar *source);
参数
shader
指定要查询的着色器对象。
bufSize
指定用于存储返回的源代码字符串的字符缓冲区的大小。
length
返回source中返回的字符串的长度(不包括null终止符)。
source
指定用于返回源代码字符串的字符数组。
描述
glGetShaderSource返回由着色器指定的着色器对象的源代码字符串的串联。着色器对象的源代码字符串是先前调用glShaderSource的结果。函数返回的字符串将以null结尾。
glGetShaderSource尽可能多地在源代码中返回源代码字符串,最多可返回bufSize字符。实际返回的字符数(不包括空终止字符)由length指定。如果不需要返回字符串的长度,则可以在length参数中传递NULL值。可以通过调用值为GL_SHADER_SOURCE_LENGTH的glGetShaderiv来获取存储返回的源代码字符串所需的缓冲区大小。
错误
GL_INVALID_VALUE:shader不是OpenGL生成的值。
GL_INVALID_OPERATION:shader不是着色器对象。
GL_INVALID_VALUE:bufSize小于0。
相关Gets
glGetShaderiv 参数GL_SHADER_SOURCE_LENGTH
另见
版权
https://www.khronos.org/registry/OpenGL-Refpages/es2.0/xhtml/glGetShaderSource.xml
https://blog.csdn.net/flycatdeng
Copyright © 1991-2006 Silicon Graphics, Inc.本文档的许可是根据SGI Free Software B License.详见http://oss.sgi.com/projects/FreeB/.
![](https://i-blog.csdnimg.cn/blog_migrate/b61b18ac35ef755ca70fdb04fbb7539f.png)