プログラムパイプラインオブジェクト

program-pipeline-object.png

今までは頂点シェーダとフラグメントシェーダは必ずセットで1個のシェーダプログラムオブジェクトでした。
しかし、この頂点シェーダだけ使いまわしたい、という時があります。
そういうときに便利なのが**プログラムパイプラインオブジェクトです。
glCreateProgramした後に以下を呼びます

#ifdef GL_VERSION_4_1
    if (GLEW_VERSION_4_1) {
    // programを単独の Vertex Shader Program に変換
        glProgramParameteri(program, GL_PROGRAM_SEPARABLE, GL_TRUE);
    }
#endif /* GL_VERSION_4_1 */

サポートサイト Wikidot.com