# ARBSeparateShaderObjects (LWJGL API)
Date: 2015-07-28

## org.lwjgl.opengl
Class ARBSeparateShaderObjects

    java.lang.Object
      org.lwjgl.opengl.ARBSeparateShaderObjects

    public final class ARBSeparateShaderObjects

extends java.lang.Object

Field Summary
`static int` `GL_ACTIVE_PROGRAM` Accepted by <type> parameter to GetProgramPipelineiv:
`static int` `GL_ALL_SHADER_BITS` Accepted by <stages> parameter to UseProgramStages:
`static int` `GL_FRAGMENT_SHADER_BIT` Accepted by <stages> parameter to UseProgramStages:
`static int` `GL_GEOMETRY_SHADER_BIT` Accepted by <stages> parameter to UseProgramStages:
`static int` `GL_PROGRAM_PIPELINE_BINDING` Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev:
`static int` `GL_PROGRAM_SEPARABLE` Accepted by the <pname> parameter of ProgramParameteri and GetProgramiv:
`static int` `GL_TESS_CONTROL_SHADER_BIT` Accepted by <stages> parameter to UseProgramStages:
`static int` `GL_TESS_EVALUATION_SHADER_BIT` Accepted by <stages> parameter to UseProgramStages:
`static int` `GL_VERTEX_SHADER_BIT` Accepted by <stages> parameter to UseProgramStages:

Method Summary
`static void` `glActiveShaderProgram(int pipeline, int program)`
`static void` `glBindProgramPipeline(int pipeline)`
`static int` `glCreateShaderProgram(int type, java.nio.ByteBuffer string)` Single null-terminated source code string.
`static int` `glCreateShaderProgram(int type, java.nio.ByteBuffer[] strings)` Overloads glCreateShaderProgramv.
`static int` `glCreateShaderProgram(int type, java.lang.CharSequence string)` Overloads glCreateShaderProgramv.
`static int` `glCreateShaderProgram(int type, java.lang.CharSequence[] strings)` Overloads glCreateShaderProgramv.
`static int` `glCreateShaderProgram(int type, int count, java.nio.ByteBuffer strings)` Overloads glCreateShaderProgramv.
`static void` `glDeleteProgramPipelines(int pipeline)` Overloads glDeleteProgramPipelines.
`static void` `glDeleteProgramPipelines(java.nio.IntBuffer pipelines)`
`static int` `glGenProgramPipelines()` Overloads glGenProgramPipelines.
`static void` `glGenProgramPipelines(java.nio.IntBuffer pipelines)`
`static void` `glGetProgramPipeline(int pipeline, int pname, java.nio.IntBuffer params)`
`static int` `glGetProgramPipelinei(int pipeline, int pname)` Overloads glGetProgramPipelineiv.
`static java.lang.String` `glGetProgramPipelineInfoLog(int pipeline, int bufSize)` Overloads glGetProgramPipelineInfoLog.
`static void` `glGetProgramPipelineInfoLog(int pipeline, java.nio.IntBuffer length, java.nio.ByteBuffer infoLog)`
`static boolean` `glIsProgramPipeline(int pipeline)`
`static void` `glProgramParameteri(int program, int pname, int value)`
`static void` `glProgramUniform1(int program, int location, java.nio.DoubleBuffer value)`
`static void` `glProgramUniform1(int program, int location, java.nio.FloatBuffer value)`
`static void` `glProgramUniform1(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform1d(int program, int location, double v0)`
`static void` `glProgramUniform1f(int program, int location, float v0)`
`static void` `glProgramUniform1i(int program, int location, int v0)`
`static void` `glProgramUniform1u(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform1ui(int program, int location, int v0)`
`static void` `glProgramUniform2(int program, int location, java.nio.DoubleBuffer value)`
`static void` `glProgramUniform2(int program, int location, java.nio.FloatBuffer value)`
`static void` `glProgramUniform2(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform2d(int program, int location, double v0, double v1)`
`static void` `glProgramUniform2f(int program, int location, float v0, float v1)`
`static void` `glProgramUniform2i(int program, int location, int v0, int v1)`
`static void` `glProgramUniform2u(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform2ui(int program, int location, int v0, int v1)`
`static void` `glProgramUniform3(int program, int location, java.nio.DoubleBuffer value)`
`static void` `glProgramUniform3(int program, int location, java.nio.FloatBuffer value)`
`static void` `glProgramUniform3(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform3d(int program, int location, double v0, double v1, double v2)`
`static void` `glProgramUniform3f(int program, int location, float v0, float v1, float v2)`
`static void` `glProgramUniform3i(int program, int location, int v0, int v1, int v2)`
`static void` `glProgramUniform3u(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform3ui(int program, int location, int v0, int v1, int v2)`
`static void` `glProgramUniform4(int program, int location, java.nio.DoubleBuffer value)`
`static void` `glProgramUniform4(int program, int location, java.nio.FloatBuffer value)`
`static void` `glProgramUniform4(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform4d(int program, int location, double v0, double v1, double v2, double v3)`
`static void` `glProgramUniform4f(int program, int location, float v0, float v1, float v2, float v3)`
`static void` `glProgramUniform4i(int program, int location, int v0, int v1, int v2, int v3)`
`static void` `glProgramUniform4u(int program, int location, java.nio.IntBuffer value)`
`static void` `glProgramUniform4ui(int program, int location, int v0, int v1, int v2, int v3)`
`static void` `glProgramUniformMatrix2(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix2(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix2x3(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix2x3(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix2x4(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix2x4(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix3(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix3(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix3x2(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix3x2(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix3x4(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix3x4(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix4(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix4(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix4x2(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix4x2(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glProgramUniformMatrix4x3(int program, int location, boolean transpose, java.nio.DoubleBuffer value)`
`static void` `glProgramUniformMatrix4x3(int program, int location, boolean transpose, java.nio.FloatBuffer value)`
`static void` `glUseProgramStages(int pipeline, int stages, int program)`
`static void` `glValidateProgramPipeline(int pipeline)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### GL_VERTEX_SHADER_BIT

    public static final int GL_VERTEX_SHADER_BIT

  Accepted by <stages> parameter to UseProgramStages:

  See Also:
    Constant Field Values

### GL_FRAGMENT_SHADER_BIT

    public static final int GL_FRAGMENT_SHADER_BIT

  Accepted by <stages> parameter to UseProgramStages:

  See Also:
    Constant Field Values

### GL_GEOMETRY_SHADER_BIT

    public static final int GL_GEOMETRY_SHADER_BIT

  Accepted by <stages> parameter to UseProgramStages:

  See Also:
    Constant Field Values

### GL_TESS_CONTROL_SHADER_BIT

    public static final int GL_TESS_CONTROL_SHADER_BIT

  Accepted by <stages> parameter to UseProgramStages:

  See Also:
    Constant Field Values

### GL_TESS_EVALUATION_SHADER_BIT

    public static final int GL_TESS_EVALUATION_SHADER_BIT

  Accepted by <stages> parameter to UseProgramStages:

  See Also:
    Constant Field Values

### GL_ALL_SHADER_BITS

    public static final int GL_ALL_SHADER_BITS

  Accepted by <stages> parameter to UseProgramStages:

  See Also:
    Constant Field Values

### GL_PROGRAM_SEPARABLE

    public static final int GL_PROGRAM_SEPARABLE

  Accepted by the <pname> parameter of ProgramParameteri and GetProgramiv:

  See Also:
    Constant Field Values

### GL_ACTIVE_PROGRAM

    public static final int GL_ACTIVE_PROGRAM

  Accepted by <type> parameter to GetProgramPipelineiv:

  See Also:
    Constant Field Values

### GL_PROGRAM_PIPELINE_BINDING

    public static final int GL_PROGRAM_PIPELINE_BINDING

  Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev:

  See Also:
    Constant Field Values

Method Detail

### glUseProgramStages

    public static void glUseProgramStages(int pipeline,
                                          int stages,
                                          int program)

### glActiveShaderProgram

    public static void glActiveShaderProgram(int pipeline,
                                             int program)

### glCreateShaderProgram

    public static int glCreateShaderProgram(int type,
                                            java.nio.ByteBuffer string)

  Single null-terminated source code string.

### glCreateShaderProgram

    public static int glCreateShaderProgram(int type,
                                            int count,
                                            java.nio.ByteBuffer strings)

  Overloads glCreateShaderProgramv.

  Multiple null-terminated source code strings, one after the other.

### glCreateShaderProgram

    public static int glCreateShaderProgram(int type,
                                            java.nio.ByteBuffer[] strings)

  Overloads glCreateShaderProgramv.

### glCreateShaderProgram

    public static int glCreateShaderProgram(int type,
                                            java.lang.CharSequence string)

  Overloads glCreateShaderProgramv.

### glCreateShaderProgram

    public static int glCreateShaderProgram(int type,
                                            java.lang.CharSequence[] strings)

  Overloads glCreateShaderProgramv.

### glBindProgramPipeline

    public static void glBindProgramPipeline(int pipeline)

### glDeleteProgramPipelines

    public static void glDeleteProgramPipelines(java.nio.IntBuffer pipelines)

### glDeleteProgramPipelines

    public static void glDeleteProgramPipelines(int pipeline)

  Overloads glDeleteProgramPipelines.

### glGenProgramPipelines

    public static void glGenProgramPipelines(java.nio.IntBuffer pipelines)

### glGenProgramPipelines

    public static int glGenProgramPipelines()

  Overloads glGenProgramPipelines.

### glIsProgramPipeline

    public static boolean glIsProgramPipeline(int pipeline)

### glProgramParameteri

    public static void glProgramParameteri(int program,
                                           int pname,
                                           int value)

### glGetProgramPipeline

    public static void glGetProgramPipeline(int pipeline,
                                            int pname,
                                            java.nio.IntBuffer params)

### glGetProgramPipelinei

    public static int glGetProgramPipelinei(int pipeline,
                                            int pname)

  Overloads glGetProgramPipelineiv.

### glProgramUniform1i

    public static void glProgramUniform1i(int program,
                                          int location,
                                          int v0)

### glProgramUniform2i

    public static void glProgramUniform2i(int program,
                                          int location,
                                          int v0,
                                          int v1)

### glProgramUniform3i

    public static void glProgramUniform3i(int program,
                                          int location,
                                          int v0,
                                          int v1,
                                          int v2)

### glProgramUniform4i

    public static void glProgramUniform4i(int program,
                                          int location,
                                          int v0,
                                          int v1,
                                          int v2,
                                          int v3)

### glProgramUniform1f

    public static void glProgramUniform1f(int program,
                                          int location,
                                          float v0)

### glProgramUniform2f

    public static void glProgramUniform2f(int program,
                                          int location,
                                          float v0,
                                          float v1)

### glProgramUniform3f

    public static void glProgramUniform3f(int program,
                                          int location,
                                          float v0,
                                          float v1,
                                          float v2)

### glProgramUniform4f

    public static void glProgramUniform4f(int program,
                                          int location,
                                          float v0,
                                          float v1,
                                          float v2,
                                          float v3)

### glProgramUniform1d

    public static void glProgramUniform1d(int program,
                                          int location,
                                          double v0)

### glProgramUniform2d

    public static void glProgramUniform2d(int program,
                                          int location,
                                          double v0,
                                          double v1)

### glProgramUniform3d

    public static void glProgramUniform3d(int program,
                                          int location,
                                          double v0,
                                          double v1,
                                          double v2)

### glProgramUniform4d

    public static void glProgramUniform4d(int program,
                                          int location,
                                          double v0,
                                          double v1,
                                          double v2,
                                          double v3)

### glProgramUniform1

    public static void glProgramUniform1(int program,
                                         int location,
                                         java.nio.IntBuffer value)

### glProgramUniform2

    public static void glProgramUniform2(int program,
                                         int location,
                                         java.nio.IntBuffer value)

### glProgramUniform3

    public static void glProgramUniform3(int program,
                                         int location,
                                         java.nio.IntBuffer value)

### glProgramUniform4

    public static void glProgramUniform4(int program,
                                         int location,
                                         java.nio.IntBuffer value)

### glProgramUniform1

    public static void glProgramUniform1(int program,
                                         int location,
                                         java.nio.FloatBuffer value)

### glProgramUniform2

    public static void glProgramUniform2(int program,
                                         int location,
                                         java.nio.FloatBuffer value)

### glProgramUniform3

    public static void glProgramUniform3(int program,
                                         int location,
                                         java.nio.FloatBuffer value)

### glProgramUniform4

    public static void glProgramUniform4(int program,
                                         int location,
                                         java.nio.FloatBuffer value)

### glProgramUniform1

    public static void glProgramUniform1(int program,
                                         int location,
                                         java.nio.DoubleBuffer value)

### glProgramUniform2

    public static void glProgramUniform2(int program,
                                         int location,
                                         java.nio.DoubleBuffer value)

### glProgramUniform3

    public static void glProgramUniform3(int program,
                                         int location,
                                         java.nio.DoubleBuffer value)

### glProgramUniform4

    public static void glProgramUniform4(int program,
                                         int location,
                                         java.nio.DoubleBuffer value)

### glProgramUniform1ui

    public static void glProgramUniform1ui(int program,
                                           int location,
                                           int v0)

### glProgramUniform2ui

    public static void glProgramUniform2ui(int program,
                                           int location,
                                           int v0,
                                           int v1)

### glProgramUniform3ui

    public static void glProgramUniform3ui(int program,
                                           int location,
                                           int v0,
                                           int v1,
                                           int v2)

### glProgramUniform4ui

    public static void glProgramUniform4ui(int program,
                                           int location,
                                           int v0,
                                           int v1,
                                           int v2,
                                           int v3)

### glProgramUniform1u

    public static void glProgramUniform1u(int program,
                                          int location,
                                          java.nio.IntBuffer value)

### glProgramUniform2u

    public static void glProgramUniform2u(int program,
                                          int location,
                                          java.nio.IntBuffer value)

### glProgramUniform3u

    public static void glProgramUniform3u(int program,
                                          int location,
                                          java.nio.IntBuffer value)

### glProgramUniform4u

    public static void glProgramUniform4u(int program,
                                          int location,
                                          java.nio.IntBuffer value)

### glProgramUniformMatrix2

    public static void glProgramUniformMatrix2(int program,
                                               int location,
                                               boolean transpose,
                                               java.nio.FloatBuffer value)

### glProgramUniformMatrix3

    public static void glProgramUniformMatrix3(int program,
                                               int location,
                                               boolean transpose,
                                               java.nio.FloatBuffer value)

### glProgramUniformMatrix4

    public static void glProgramUniformMatrix4(int program,
                                               int location,
                                               boolean transpose,
                                               java.nio.FloatBuffer value)

### glProgramUniformMatrix2

    public static void glProgramUniformMatrix2(int program,
                                               int location,
                                               boolean transpose,
                                               java.nio.DoubleBuffer value)

### glProgramUniformMatrix3

    public static void glProgramUniformMatrix3(int program,
                                               int location,
                                               boolean transpose,
                                               java.nio.DoubleBuffer value)

### glProgramUniformMatrix4

    public static void glProgramUniformMatrix4(int program,
                                               int location,
                                               boolean transpose,
                                               java.nio.DoubleBuffer value)

### glProgramUniformMatrix2x3

    public static void glProgramUniformMatrix2x3(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.FloatBuffer value)

### glProgramUniformMatrix3x2

    public static void glProgramUniformMatrix3x2(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.FloatBuffer value)

### glProgramUniformMatrix2x4

    public static void glProgramUniformMatrix2x4(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.FloatBuffer value)

### glProgramUniformMatrix4x2

    public static void glProgramUniformMatrix4x2(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.FloatBuffer value)

### glProgramUniformMatrix3x4

    public static void glProgramUniformMatrix3x4(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.FloatBuffer value)

### glProgramUniformMatrix4x3

    public static void glProgramUniformMatrix4x3(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.FloatBuffer value)

### glProgramUniformMatrix2x3

    public static void glProgramUniformMatrix2x3(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.DoubleBuffer value)

### glProgramUniformMatrix3x2

    public static void glProgramUniformMatrix3x2(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.DoubleBuffer value)

### glProgramUniformMatrix2x4

    public static void glProgramUniformMatrix2x4(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.DoubleBuffer value)

### glProgramUniformMatrix4x2

    public static void glProgramUniformMatrix4x2(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.DoubleBuffer value)

### glProgramUniformMatrix3x4

    public static void glProgramUniformMatrix3x4(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.DoubleBuffer value)

### glProgramUniformMatrix4x3

    public static void glProgramUniformMatrix4x3(int program,
                                                 int location,
                                                 boolean transpose,
                                                 java.nio.DoubleBuffer value)

### glValidateProgramPipeline

    public static void glValidateProgramPipeline(int pipeline)

### glGetProgramPipelineInfoLog

    public static void glGetProgramPipelineInfoLog(int pipeline,
                                                   java.nio.IntBuffer length,
                                                   java.nio.ByteBuffer infoLog)

### glGetProgramPipelineInfoLog

    public static java.lang.String glGetProgramPipelineInfoLog(int pipeline,
                                                               int bufSize)

  Overloads glGetProgramPipelineInfoLog.

Copyright © 2002-2009 lwjgl.org. All Rights Reserved.