Xml文件  |  85行  |  2.97 KB

<?xml version="1.0"?>
<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">

<!-- Note: no GLX protocol info yet. -->

<OpenGLAPI>

<category name="GL_ARB_shader_subroutine" number="90">

    <function name="GetSubroutineUniformLocation">
        <param name="program" type="GLuint"/>
        <param name="shadertype" type="GLenum"/>
        <param name="name" type="const GLchar *"/>
        <return type="GLint"/>
    </function>

    <function name="GetSubroutineIndex">
        <param name="program" type="GLuint"/>
        <param name="shadertype" type="GLenum"/>
        <param name="name" type="const GLchar *"/>
        <return type="GLuint"/>
    </function>

    <function name="GetActiveSubroutineUniformiv">
        <param name="program" type="GLuint"/>
        <param name="shadertype" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="values" type="GLint *" output="true"/>
    </function>

    <function name="GetActiveSubroutineUniformName">
        <param name="program" type="GLuint"/>
        <param name="shadertype" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="bufsize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="name" type="GLchar *" output="true"/>
    </function>

    <function name="GetActiveSubroutineName">
        <param name="program" type="GLuint"/>
        <param name="shadertype" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="bufsize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="name" type="GLchar *" output="true"/>
    </function>

    <function name="UniformSubroutinesuiv">
        <param name="shadertype" type="GLenum"/>
        <param name="count" type="GLsizei"/>
        <param name="indices" type="const GLuint *"/>
    </function>

    <function name="GetUniformSubroutineuiv">
        <param name="shadertype" type="GLenum"/>
        <param name="location" type="GLint"/>
        <param name="params" type="GLuint *" output="true"/>
    </function>

    <function name="GetProgramStageiv">
        <param name="program" type="GLuint"/>
        <param name="shadertype" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="values" type="GLint *" output="true"/>
    </function>

    <enum name="ACTIVE_SUBROUTINES" value="0x8DE5"/>
    <enum name="ACTIVE_SUBROUTINE_UNIFORMS" value="0x8DE6"/>
    <enum name="ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS" value="0x8E47"/>
    <enum name="ACTIVE_SUBROUTINE_MAX_LENGTH" value="0x8E48"/>
    <enum name="ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH" value="0x8E49"/>

    <enum name="MAX_SUBROUTINES" value="0x8DE7"/>
    <enum name="MAX_SUBROUTINE_UNIFORM_LOCATIONS" value="0x8DE8"/>

    <enum name="NUM_COMPATIBLE_SUBROUTINES" value="0x8E4A"/>
    <enum name="COMPATIBLE_SUBROUTINES" value="0x8E4B"/>

    <!-- UNIFORM_SIZE, UNIFORM_NAME_LENGTH already in GL3.1 -->

</category>
</OpenGLAPI>