您当前的位置: 首页 > 

Jave.Lin

暂无认证

  • 1浏览

    0关注

    704博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

OpenGL API - glAttachShader

Jave.Lin 发布时间:2020-06-05 21:25:05 ,浏览量:1

文章目录
  • 名称
  • 原型
  • 参数
  • 描述
  • 错误
在这里插入图片描述

https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glAttachShader.xhtml

OpenGL API - 笔记汇总

名称

glAttachShader ---- 附加一个 shader 对象到程序对象。

原型
void glAttachShader(GLuint program,
 					GLuint shader);
参数

program 指定用于接受附加着色器的程序对象。 shader 指定需要被附加到程序对象的 shader 对象。

描述

为了创建完整的 shader 程序,必须要有一个方法来讲这些东西链接在一起。程序对象提供了这个机制。被链接在一起的 shader 首先需要附加到程序对象。glAttachShader 可将指定的 shader 的shader 对象附加到指定的 program 的程序对象上。这表示 shader 将会被链接操作后包含在程序中,并在次程序中执行。

在一个有效附加到一个程序对象的shader对象,它的所有的操作都可以被执行。一个 shader 对象在它设置源码前,或是在它被编译前都允许附加到程序对象中。也允许附加多个相同类型的 shader 对象,因为每个可能包含完整的 shader 的一部分。也允许附加一个 shader 对象到多个程序对象中。如果一个 shader 对象在附加时被删除,则删除标记将被设置,并且删除不会发生,直到调用了 glDetachShader 来解除附加所有的已附加过这个 shader 对象。

错误

如果 program 或是 shader 参数不是 OpenGL 生成的,那么生成 GL_INVALID_VALUE 错误。

如果 program 参数不是一个程序对象,那么生成 GL_INVALID_OPERATION 错误。

如果 shader 参数不是一个 shader 对象,那么生成 GL_INVALID_OPERATION 错误。

如果 shader 参数早已被加到 program 对象,那么生成 GL_INVALID_OPERATION 错误。

关注
打赏
1664331872
查看更多评论
立即登录/注册

微信扫码登录

0.0596s