Updated documentation according to the latest available manpages.

This commit is contained in:
Stefanos A. 2013-10-23 20:17:08 +02:00
parent eb84a29206
commit 60afa79203
110 changed files with 10106 additions and 1605 deletions

View file

@ -33,7 +33,7 @@
<para> <para>
Specifies which texture unit to make active. The number Specifies which texture unit to make active. The number
of texture units is implementation dependent, but must be at least of texture units is implementation dependent, but must be at least
two. <parameter>texture</parameter> must be one of 80. <parameter>texture</parameter> must be one of
<constant>GL_TEXTURE<emphasis>i</emphasis></constant>, <constant>GL_TEXTURE<emphasis>i</emphasis></constant>,
where where
<emphasis>i</emphasis> ranges from 0 (<constant>GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS</constant> - 1). <emphasis>i</emphasis> ranges from 0 (<constant>GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS</constant> - 1).
@ -47,7 +47,7 @@
<para> <para>
<function>glActiveTexture</function> selects which texture unit subsequent texture state calls will <function>glActiveTexture</function> selects which texture unit subsequent texture state calls will
affect. The number of texture units an implementation supports is affect. The number of texture units an implementation supports is
implementation dependent, but must be at least 48. implementation dependent, but must be at least 80.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>

View file

@ -35,6 +35,7 @@
Specifies the target type of query object established between Specifies the target type of query object established between
<function>glBeginQuery</function> and the subsequent <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry>. <function>glBeginQuery</function> and the subsequent <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry>.
The symbolic constant must be one of <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>, The symbolic constant must be one of <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>,
<constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>,
<constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, or <constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, or
<constant>GL_TIME_ELAPSED</constant>. <constant>GL_TIME_ELAPSED</constant>.
</para> </para>
@ -67,6 +68,7 @@
<para> <para>
Specifies the target type of query object to be concluded. Specifies the target type of query object to be concluded.
The symbolic constant must be one of <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>, The symbolic constant must be one of <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>,
<constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>,
<constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, or <constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, or
<constant>GL_TIME_ELAPSED</constant>. <constant>GL_TIME_ELAPSED</constant>.
</para> </para>
@ -85,7 +87,7 @@
object depends on its type and is as follows. object depends on its type and is as follows.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_SAMPLES_PASSED</constant>, <parameter>target</parameter> must be an unused name, If <parameter>target</parameter> is <constant>GL_SAMPLES_PASSED</constant>, <parameter>id</parameter> must be an unused name,
or the name of an existing occlusion query object. or the name of an existing occlusion query object.
When <function>glBeginQuery</function> is executed, the query object's samples-passed counter is reset to 0. Subsequent When <function>glBeginQuery</function> is executed, the query object's samples-passed counter is reset to 0. Subsequent
rendering will increment the counter for every sample that passes the depth test. If the value of <constant>GL_SAMPLE_BUFFERS</constant> rendering will increment the counter for every sample that passes the depth test. If the value of <constant>GL_SAMPLE_BUFFERS</constant>
@ -98,16 +100,19 @@
<constant>GL_QUERY_RESULT</constant>. <constant>GL_QUERY_RESULT</constant>.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_ANY_SAMPLES_PASSED</constant>, <parameter>target</parameter> must be an unused name, If <parameter>target</parameter> is <constant>GL_ANY_SAMPLES_PASSED</constant> or <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>,
or the name of an existing boolean occlusion query object. <parameter>id</parameter> must be an unused name, or the name of an existing boolean occlusion query object.
When <function>glBeginQuery</function> is executed, the query object's samples-passed flag is reset to <constant>GL_FALSE</constant>. When <function>glBeginQuery</function> is executed, the query object's samples-passed flag is reset to <constant>GL_FALSE</constant>.
Subsequent rendering causes the flag to be set to <constant>GL_TRUE</constant> if any sample passes the depth test. When Subsequent rendering causes the flag to be set to <constant>GL_TRUE</constant> if any sample passes the depth test in the case of <constant>GL_ANY_SAMPLES_PASSED</constant>,
or if the implementation determines that any sample might pass the depth test in the case of <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>.
The implementation may be able to provide a more efficient test in the case of <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>
if some false positives are acceptable to the application. When
<function>glEndQuery</function> is executed, the samples-passed flag is assigned to the query object's result value. This value can <function>glEndQuery</function> is executed, the samples-passed flag is assigned to the query object's result value. This value can
be queried by calling <citerefentry><refentrytitle>glGetQueryObject</refentrytitle></citerefentry> with <parameter>pname</parameter> be queried by calling <citerefentry><refentrytitle>glGetQueryObject</refentrytitle></citerefentry> with <parameter>pname</parameter>
<constant>GL_QUERY_RESULT</constant>. <constant>GL_QUERY_RESULT</constant>.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_PRIMITIVES_GENERATED</constant>, <parameter>target</parameter> must be an unused If <parameter>target</parameter> is <constant>GL_PRIMITIVES_GENERATED</constant>, <parameter>id</parameter> must be an unused
name, or the name of an existing primitive query object previously bound to the <constant>GL_PRIMITIVES_GENERATED</constant> query binding. name, or the name of an existing primitive query object previously bound to the <constant>GL_PRIMITIVES_GENERATED</constant> query binding.
When <function>glBeginQuery</function> is executed, the query object's primitives-generated counter is reset to 0. Subsequent When <function>glBeginQuery</function> is executed, the query object's primitives-generated counter is reset to 0. Subsequent
rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if
@ -116,7 +121,7 @@
<constant>GL_QUERY_RESULT</constant>. <constant>GL_QUERY_RESULT</constant>.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, <parameter>target</parameter> must be If <parameter>target</parameter> is <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, <parameter>id</parameter> must be
an unused name, or the name of an existing primitive query object previously bound to the <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant> an unused name, or the name of an existing primitive query object previously bound to the <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>
query binding. When <function>glBeginQuery</function> is executed, the query object's primitives-written counter is reset to 0. Subsequent query binding. When <function>glBeginQuery</function> is executed, the query object's primitives-written counter is reset to 0. Subsequent
rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback
@ -126,7 +131,7 @@
<constant>GL_QUERY_RESULT</constant>. <constant>GL_QUERY_RESULT</constant>.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_TIME_ELAPSED</constant>, <parameter>target</parameter> must be If <parameter>target</parameter> is <constant>GL_TIME_ELAPSED</constant>, <parameter>id</parameter> must be
an unused name, or the name of an existing timer query object previously bound to the <constant>GL_TIME_ELAPSED</constant> an unused name, or the name of an existing timer query object previously bound to the <constant>GL_TIME_ELAPSED</constant>
query binding. When <function>glBeginQuery</function> is executed, the query object's time counter is reset to 0. When <function>glEndQuery</function> query binding. When <function>glBeginQuery</function> is executed, the query object's time counter is reset to 0. When <function>glEndQuery</function>
is executed, the elapsed server time that has passed since the call to <function>glBeginQuery</function> is written into the query object's is executed, the elapsed server time that has passed since the call to <function>glBeginQuery</function> is written into the query object's
@ -160,6 +165,9 @@
The query targets <constant>GL_ANY_SAMPLES_PASSED</constant>, and <constant>GL_TIME_ELAPSED</constant> are availale only if The query targets <constant>GL_ANY_SAMPLES_PASSED</constant>, and <constant>GL_TIME_ELAPSED</constant> are availale only if
the GL version is 3.3 or higher. the GL version is 3.3 or higher.
</para> </para>
<para>
The query target <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant> is available only of the GL version is 4.3 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -195,7 +203,8 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2010-2012 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -107,7 +107,7 @@
maximum. maximum.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_SAMPLES_PASSED</constant>, <parameter>target</parameter> must be an unused name, If <parameter>target</parameter> is <constant>GL_SAMPLES_PASSED</constant>, <parameter>id</parameter> must be an unused name,
or the name of an existing occlusion query object. or the name of an existing occlusion query object.
When <function>glBeginQueryIndexed</function> is executed, the query object's samples-passed counter is reset to 0. Subsequent When <function>glBeginQueryIndexed</function> is executed, the query object's samples-passed counter is reset to 0. Subsequent
rendering will increment the counter for every sample that passes the depth test. If the value of <constant>GL_SAMPLE_BUFFERS</constant> rendering will increment the counter for every sample that passes the depth test. If the value of <constant>GL_SAMPLE_BUFFERS</constant>
@ -121,7 +121,7 @@
When <parameter>target</parameter> is <constant>GL_SAMPLES_PASSED</constant>, <parameter>index</parameter> must be zero. When <parameter>target</parameter> is <constant>GL_SAMPLES_PASSED</constant>, <parameter>index</parameter> must be zero.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_ANY_SAMPLES_PASSED</constant>, <parameter>target</parameter> must be an unused name, If <parameter>target</parameter> is <constant>GL_ANY_SAMPLES_PASSED</constant>, <parameter>id</parameter> must be an unused name,
or the name of an existing boolean occlusion query object. or the name of an existing boolean occlusion query object.
When <function>glBeginQueryIndexed</function> is executed, the query object's samples-passed flag is reset to <constant>GL_FALSE</constant>. When <function>glBeginQueryIndexed</function> is executed, the query object's samples-passed flag is reset to <constant>GL_FALSE</constant>.
Subsequent rendering causes the flag to be set to <constant>GL_TRUE</constant> if any sample passes the depth test. When Subsequent rendering causes the flag to be set to <constant>GL_TRUE</constant> if any sample passes the depth test. When
@ -131,7 +131,7 @@
When <parameter>target</parameter> is <constant>GL_ANY_SAMPLES_PASSED</constant>, <parameter>index</parameter> must be zero. When <parameter>target</parameter> is <constant>GL_ANY_SAMPLES_PASSED</constant>, <parameter>index</parameter> must be zero.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_PRIMITIVES_GENERATED</constant>, <parameter>target</parameter> must be an unused If <parameter>target</parameter> is <constant>GL_PRIMITIVES_GENERATED</constant>, <parameter>id</parameter> must be an unused
name, or the name of an existing primitive query object previously bound to the <constant>GL_PRIMITIVES_GENERATED</constant> query binding. name, or the name of an existing primitive query object previously bound to the <constant>GL_PRIMITIVES_GENERATED</constant> query binding.
When <function>glBeginQueryIndexed</function> is executed, the query object's primitives-generated counter is reset to 0. Subsequent When <function>glBeginQueryIndexed</function> is executed, the query object's primitives-generated counter is reset to 0. Subsequent
rendering will increment the counter once for every vertex that is emitted from the geometry shader to the stream given by <parameter>index</parameter>, rendering will increment the counter once for every vertex that is emitted from the geometry shader to the stream given by <parameter>index</parameter>,
@ -143,7 +143,7 @@
less than the value of <constant>GL_MAX_VERTEX_STREAMS</constant>. less than the value of <constant>GL_MAX_VERTEX_STREAMS</constant>.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, <parameter>target</parameter> must be If <parameter>target</parameter> is <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, <parameter>id</parameter> must be
an unused name, or the name of an existing primitive query object previously bound to the <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant> an unused name, or the name of an existing primitive query object previously bound to the <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>
query binding. When <function>glBeginQueryIndexed</function> is executed, the query object's primitives-written counter for the stream specified by query binding. When <function>glBeginQueryIndexed</function> is executed, the query object's primitives-written counter for the stream specified by
<parameter>index</parameter> is reset to 0. Subsequent rendering will increment the counter once for every vertex that is written into the bound <parameter>index</parameter> is reset to 0. Subsequent rendering will increment the counter once for every vertex that is written into the bound
@ -156,7 +156,7 @@
less than the value of <constant>GL_MAX_VERTEX_STREAMS</constant>. less than the value of <constant>GL_MAX_VERTEX_STREAMS</constant>.
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_TIME_ELAPSED</constant>, <parameter>target</parameter> must be If <parameter>target</parameter> is <constant>GL_TIME_ELAPSED</constant>, <parameter>id</parameter> must be
an unused name, or the name of an existing timer query object previously bound to the <constant>GL_TIME_ELAPSED</constant> an unused name, or the name of an existing timer query object previously bound to the <constant>GL_TIME_ELAPSED</constant>
query binding. When <function>glBeginQueryIndexed</function> is executed, the query object's time counter is reset to 0. When <function>glEndQueryIndexed</function> query binding. When <function>glBeginQueryIndexed</function> is executed, the query object's time counter is reset to 0. When <function>glEndQueryIndexed</function>
is executed, the elapsed server time that has passed since the call to <function>glBeginQueryIndexed</function> is written into the query object's is executed, the elapsed server time that has passed since the call to <function>glBeginQueryIndexed</function> is written into the query object's

View file

@ -34,11 +34,16 @@
Specifies the target to which the buffer object is bound. Specifies the target to which the buffer object is bound.
The symbolic constant must be The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>, <constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -92,6 +97,17 @@
the vertex array pointer parameter is interpreted as an offset within the the vertex array pointer parameter is interpreted as an offset within the
buffer object measured in basic machine units. buffer object measured in basic machine units.
</para> </para>
<para>
When a non-zero buffer object is bound to the <constant>GL_DRAW_INDIRECT_BUFFER</constant> target,
parameters for draws issued through <citerefentry><refentrytitle>glDrawArraysIndirect</refentrytitle></citerefentry>
and <citerefentry><refentrytitle>glDrawElementsIndirect</refentrytitle></citerefentry> are sourced
from the specified offset in that buffer object's data store.
</para>
<para>
When a non-zero buffer object is bound to the <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> target,
the parameters for compute dispatches issued through <citerefentry><refentrytitle>glDispatchComputeIndirect</refentrytitle></citerefentry>
are sourced from the specified offset in that buffer object's data store.
</para>
<para> <para>
While a non-zero buffer object is bound to the <constant>GL_ELEMENT_ARRAY_BUFFER</constant> target, While a non-zero buffer object is bound to the <constant>GL_ELEMENT_ARRAY_BUFFER</constant> target,
the indices parameter of <citerefentry><refentrytitle>glDrawElements</refentrytitle></citerefentry>, the indices parameter of <citerefentry><refentrytitle>glDrawElements</refentrytitle></citerefentry>,
@ -138,13 +154,20 @@
but will not directly affect transform feedback state. Instead, the indexed <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> but will not directly affect transform feedback state. Instead, the indexed <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>
bindings must be used through a call to <citerefentry><refentrytitle>glBindBufferBase</refentrytitle></citerefentry> bindings must be used through a call to <citerefentry><refentrytitle>glBindBufferBase</refentrytitle></citerefentry>
or <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry>. This will affect the generic or <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry>. This will affect the generic
<constant>GL_TRANSFORM_FEEDABCK_BUFFER</constant> binding. <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> binding.
</para> </para>
<para> <para>
Likewise, the <constant>GL_UNIFORM_BUFFER</constant> buffer binding point may be used, but does not directly affect Likewise, the <constant>GL_UNIFORM_BUFFER</constant>, <constant>GL_ATOMIC_COUNTER_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant>
uniform buffer state. <citerefentry><refentrytitle>glBindBufferBase</refentrytitle></citerefentry> buffer binding points may
be used, but do not directly affect uniform buffer, atomic counter buffer or shader storage buffer state, respectively.
<citerefentry><refentrytitle>glBindBufferBase</refentrytitle></citerefentry>
or <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry> must be used to bind a buffer to or <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry> must be used to bind a buffer to
an indexed uniform buffer binding point. an indexed uniform buffer, atomic counter buffer or shader storage buffer binding point.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> binding point is used to specify a buffer object that is to
receive the results of query objects through calls to the <citerefentry><refentrytitle>glGetQueryObject</refentrytitle></citerefentry>
family of commands.
</para> </para>
<para> <para>
A buffer object binding created with <function>glBindBuffer</function> remains active until a different A buffer object binding created with <function>glBindBuffer</function> remains active until a different
@ -162,6 +185,15 @@
The <constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant> and The <constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant> and
<constant>GL_TEXTURE_BUFFER</constant> targets are available only if the GL version is 3.1 or greater. <constant>GL_TEXTURE_BUFFER</constant> targets are available only if the GL version is 3.1 or greater.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFER</constant> target is available only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -177,12 +209,21 @@
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_ARRAY_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_ARRAY_BUFFER_BINDING</constant>
</para> </para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_ATOMIC_COUNTER_BUFFER_BINDING</constant>
</para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COPY_READ_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COPY_READ_BUFFER_BINDING</constant>
</para> </para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COPY_WRITE_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COPY_WRITE_BUFFER_BINDING</constant>
</para> </para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_DRAW_INDIRECT_BUFFER_BINDING</constant>
</para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_DISPATCH_INDIRECT_BUFFER_BINDING</constant>
</para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_ELEMENT_ARRAY_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_ELEMENT_ARRAY_BUFFER_BINDING</constant>
</para> </para>
@ -192,6 +233,9 @@
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_PIXEL_UNPACK_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_PIXEL_UNPACK_BUFFER_BINDING</constant>
</para> </para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_SHADER_STORAGE_BUFFER_BINDING</constant>
</para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_TRANSFORM_FEEDBACK_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_TRANSFORM_FEEDBACK_BUFFER_BINDING</constant>
</para> </para>
@ -213,7 +257,8 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -20,9 +20,9 @@
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glBindBufferBase</function></funcdef> <funcdef>void <function>glBindBufferBase</function></funcdef>
<paramdef>GLenum<parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLuint<parameter>index</parameter></paramdef> <paramdef>GLuint <parameter>index</parameter></paramdef>
<paramdef>GLuint<parameter>buffer</parameter></paramdef> <paramdef>GLuint <parameter>buffer</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -33,7 +33,9 @@
<listitem> <listitem>
<para> <para>
Specify the target of the bind operation. <parameter>target</parameter> must be Specify the target of the bind operation. <parameter>target</parameter> must be
either <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>. one of <constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant> or
<constant>GL_SHADER_STORAGE_BUFFER</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -68,24 +70,33 @@
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
<para>
<function>glBindBufferBase</function> is available only if the GL version is 3.0 or greater.
</para>
<para> <para>
Calling <function>glBindBufferBase</function> is equivalent to calling Calling <function>glBindBufferBase</function> is equivalent to calling
<citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry> with <parameter>offset</parameter> <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry> with <parameter>offset</parameter>
zero and <parameter>size</parameter> equal to the size of the buffer. zero and <parameter>size</parameter> equal to the size of the buffer.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFER</constant> target is available only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_SHADER_STORAGE_BUFFER</constant> target is available only if the GL version is 4.3 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant> or
<constant>GL_SHADER_STORAGE_BUFFER</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater <constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater
than or equal to the number of <parameter>target</parameter>-specific indexed binding points. than or equal to the number of <parameter>target</parameter>-specific indexed binding points.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>buffer</parameter> does
not have an associated data store, or if the size of that store is zero.
</para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
@ -98,7 +109,7 @@
</para> </para>
</refsect1> <refsect1 id="Copyright"><title>Copyright</title> </refsect1> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -35,7 +35,9 @@
<listitem> <listitem>
<para> <para>
Specify the target of the bind operation. <parameter>target</parameter> must be Specify the target of the bind operation. <parameter>target</parameter> must be
either <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>. one of <constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant>,
or <constant>GL_SHADER_STORAGE_BUFFER</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -82,7 +84,7 @@
as a single general binding point that can be used by other buffer manipulation functions such as as a single general binding point that can be used by other buffer manipulation functions such as
<citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry> or <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry> or
<citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>. In addition to binding <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>. In addition to binding
a range of <parameter>buffer</parameter> to the indexed buffer binding target, <function>glBindBufferBase</function> a range of <parameter>buffer</parameter> to the indexed buffer binding target, <function>glBindBufferRange</function>
also binds the range to the generic buffer binding point specified by <parameter>target</parameter>. also binds the range to the generic buffer binding point specified by <parameter>target</parameter>.
</para> </para>
<para> <para>
@ -91,10 +93,20 @@
can be read from the buffer object while used as an indexed target. can be read from the buffer object while used as an indexed target.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFER</constant> target is available only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_SHADER_STORAGE_BUFFER</constant> target is available only if the GL version is 4.3 or greater.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>. one of <constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant> or
<constant>GL_SHADER_STORAGE_BUFFER</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater <constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater
@ -122,7 +134,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -112,7 +112,7 @@
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>colorNumber</parameter> is greater than or equal to <constant>GL_MAX_DRAW_BUFFERS</constant>. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>colorNumber</parameter> is greater than or equal to <constant>GL_MAX_DRAW_BUFFERS</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>colorNumber</parameter> is greater than or equal to <constant>GL_MAX_DUAL_SOURCE_DRAW_BUFERS</constant> <constant>GL_INVALID_VALUE</constant> is generated if <parameter>colorNumber</parameter> is greater than or equal to <constant>GL_MAX_DUAL_SOURCE_DRAW_BUFFERS</constant>
and <parameter>index</parameter> is greater than or equal to one. and <parameter>index</parameter> is greater than or equal to one.
</para> </para>
<para> <para>

View file

@ -67,7 +67,7 @@
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>unit</parameter> is greater than or equal to the value of <constant>GL_INVALID_VALUE</constant> is generated if <parameter>unit</parameter> is greater than or equal to the value of
<constant>GL_MAX_COMBIED_TEXTURE_IMAGE_UNITS</constant>. <constant>GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>sampler</parameter> is not zero or a name previously <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>sampler</parameter> is not zero or a name previously

View file

@ -32,14 +32,16 @@
<listitem> <listitem>
<para> <para>
Specifies the target to which the texture is bound. Specifies the target to which the texture is bound.
Must be either Must be one of
<constant>GL_TEXTURE_1D</constant>, <constant>GL_TEXTURE_1D</constant>,
<constant>GL_TEXTURE_2D</constant>, <constant>GL_TEXTURE_2D</constant>,
<constant>GL_TEXTURE_3D</constant>, or <constant>GL_TEXTURE_3D</constant>,
<constant>GL_TEXTURE_1D_ARRAY</constant>, <constant>GL_TEXTURE_1D_ARRAY</constant>,
<constant>GL_TEXTURE_2D_ARRAY</constant>, <constant>GL_TEXTURE_2D_ARRAY</constant>,
<constant>GL_TEXTURE_RECTANGLE</constant>, <constant>GL_TEXTURE_RECTANGLE</constant>,
<constant>GL_TEXTURE_CUBE_MAP</constant>, <constant>GL_TEXTURE_CUBE_MAP</constant>,
<constant>GL_TEXTURE_CUBE_MAP_ARRAY</constant>,
<constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TEXTURE_2D_MULTISAMPLE</constant> or <constant>GL_TEXTURE_2D_MULTISAMPLE</constant> or
<constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant>. <constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant>.
</para> </para>
@ -59,9 +61,17 @@
<para> <para>
<function>glBindTexture</function> lets you create or use a named texture. Calling <function>glBindTexture</function> with <function>glBindTexture</function> lets you create or use a named texture. Calling <function>glBindTexture</function> with
<parameter>target</parameter> set to <parameter>target</parameter> set to
<constant>GL_TEXTURE_1D</constant>, <constant>GL_TEXTURE_2D</constant>, <constant>GL_TEXTURE_3D</constant>, or <constant>GL_TEXTURE_1D</constant>,
<constant>GL_TEXTURE_1D_ARRAY</constant>, <constant>GL_TEXTURE_2D_ARRAY</constant>, <constant>GL_TEXTURE_RECTANGLE</constant>, <constant>GL_TEXTURE_2D</constant>,
<constant>GL_TEXTURE_CUBE_MAP</constant>, <constant>GL_TEXTURE_2D_MULTISAMPLE</constant> or <constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant> <constant>GL_TEXTURE_3D</constant>,
<constant>GL_TEXTURE_1D_ARRAY</constant>,
<constant>GL_TEXTURE_2D_ARRAY</constant>,
<constant>GL_TEXTURE_RECTANGLE</constant>,
<constant>GL_TEXTURE_CUBE_MAP</constant>,
<constant>GL_TEXTURE_CUBE_MAP_ARRAY</constant>,
<constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TEXTURE_2D_MULTISAMPLE</constant> or
<constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant>
and <parameter>texture</parameter> set to the name of the new texture binds the texture name to the target. and <parameter>texture</parameter> set to the name of the new texture binds the texture name to the target.
When a texture is bound to a target, the previous binding for that target is automatically broken. When a texture is bound to a target, the previous binding for that target is automatically broken.
</para> </para>
@ -83,8 +93,10 @@
texture first bound to <constant>GL_TEXTURE_3D</constant> becomes three-dimensional texture, a texture first bound to <constant>GL_TEXTURE_3D</constant> becomes three-dimensional texture, a
texture first bound to <constant>GL_TEXTURE_1D_ARRAY</constant> becomes one-dimensional array texture, a texture first bound to <constant>GL_TEXTURE_1D_ARRAY</constant> becomes one-dimensional array texture, a
texture first bound to <constant>GL_TEXTURE_2D_ARRAY</constant> becomes two-dimensional arary texture, a texture first bound to <constant>GL_TEXTURE_2D_ARRAY</constant> becomes two-dimensional arary texture, a
texture first bound to <constant>GL_TEXTURE_RECTANGLE</constant> becomes rectangle texture, a, texture first bound to <constant>GL_TEXTURE_RECTANGLE</constant> becomes rectangle texture, a
texture first bound to <constant>GL_TEXTURE_CUBE_MAP</constant> becomes a cube-mapped texture, a texture first bound to <constant>GL_TEXTURE_CUBE_MAP</constant> becomes a cube-mapped texture, a
texture first bound to <constant>GL_TEXTURE_CUBE_MAP_ARRAY</constant> becomes a cube-mapped array texture, a
texture first bound to <constant>GL_TEXTURE_BUFFER</constant> becomes a buffer texture, a
texture first bound to <constant>GL_TEXTURE_2D_MULTISAMPLE</constant> becomes a two-dimensional multisampled texture, and a texture first bound to <constant>GL_TEXTURE_2D_MULTISAMPLE</constant> becomes a two-dimensional multisampled texture, and a
texture first bound to <constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant> becomes a two-dimensional multisampled array texture. texture first bound to <constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant> becomes a two-dimensional multisampled array texture.
The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the
@ -135,7 +147,10 @@
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_TEXTURE_BINDING_1D</constant>, <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_TEXTURE_BINDING_1D</constant>,
<constant>GL_TEXTURE_BINDING_2D</constant>, <constant>GL_TEXTURE_BINDING_3D</constant>, <constant>GL_TEXTURE_BINDING_1D_ARRAY</constant>, <constant>GL_TEXTURE_BINDING_2D</constant>, <constant>GL_TEXTURE_BINDING_3D</constant>, <constant>GL_TEXTURE_BINDING_1D_ARRAY</constant>,
<constant>GL_TEXTURE_BINDING_2D_ARRAY</constant>, <constant>GL_TEXTURE_BINDING_RECTANGLE</constant>, <constant>GL_TEXTURE_BINDING_2D_MULTISAMPLE</constant>, <constant>GL_TEXTURE_BINDING_2D_ARRAY</constant>, <constant>GL_TEXTURE_BINDING_RECTANGLE</constant>,
<constant>GL_TEXTURE_BINDING_BUFFER</constant>, <constant>GL_TEXTURE_BINDING_CUBE_MAP</constant>, <constant>GL_TEXTURE_BINDING_CUBE_MAP</constant>,
<constant>GL_TEXTURE_BINDING_CUBE_MAP_ARRAY</constant>,
<constant>GL_TEXTURE_BINDING_2D_MULTISAMPLE</constant>,
or <constant>GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY</constant>. or <constant>GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY</constant>.
</para> </para>
</refsect1> </refsect1>
@ -151,6 +166,7 @@
<citerefentry><refentrytitle>glTexImage2DMultisample</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage2DMultisample</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexImage3D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage3D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexImage3DMultisample</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage3DMultisample</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexBuffer</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry> <citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>

View file

@ -20,10 +20,10 @@
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glBlendColor</function></funcdef> <funcdef>void <function>glBlendColor</function></funcdef>
<paramdef>GLclampf <parameter>red</parameter></paramdef> <paramdef>GLfloat <parameter>red</parameter></paramdef>
<paramdef>GLclampf <parameter>green</parameter></paramdef> <paramdef>GLfloat <parameter>green</parameter></paramdef>
<paramdef>GLclampf <parameter>blue</parameter></paramdef> <paramdef>GLfloat <parameter>blue</parameter></paramdef>
<paramdef>GLclampf <parameter>alpha</parameter></paramdef> <paramdef>GLfloat <parameter>alpha</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -46,7 +46,7 @@
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
The <constant>GL_BLEND_COLOR</constant> may be used to calculate the source and destination The <constant>GL_BLEND_COLOR</constant> may be used to calculate the source and destination
blending factors. The color components are clamped to the range blending factors. The color components are clamped to the range
<inlineequation><mml:math> <inlineequation><mml:math>
<!-- eqn: [0,1]: --> <!-- eqn: [0,1]: -->
<mml:mfenced open="[" close="]"> <mml:mfenced open="[" close="]">
@ -59,6 +59,17 @@
Initially the <constant>GL_BLEND_COLOR</constant> is set to (0, 0, 0, 0). Initially the <constant>GL_BLEND_COLOR</constant> is set to (0, 0, 0, 0).
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The type of the <parameter>red</parameter>,
<parameter>green</parameter>, <parameter>blue</parameter>,
and <parameter>alpha</parameter> parameters was changed from
GLclampf to GLfloat. This change is transparent to user code
and is described in detail on the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with an argument of <constant>GL_BLEND_COLOR</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with an argument of <constant>GL_BLEND_COLOR</constant>
@ -68,7 +79,8 @@
<para> <para>
<citerefentry><refentrytitle>glBlendEquation</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glBlendEquation</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glBlendFunc</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glBlendFunc</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glGetString</refentrytitle></citerefentry> <citerefentry><refentrytitle>glGetString</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -22,11 +22,25 @@
<funcdef>void <function>glBlendEquation</function></funcdef> <funcdef>void <function>glBlendEquation</function></funcdef>
<paramdef>GLenum <parameter>mode</parameter></paramdef> <paramdef>GLenum <parameter>mode</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype>
<funcdef>void <function>glBlendEquationi</function></funcdef>
<paramdef>GLuint <parameter>buf</parameter></paramdef>
<paramdef>GLenum <parameter>mode</parameter></paramdef>
</funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<!-- eqn: ignoring delim $$ --> <!-- eqn: ignoring delim $$ -->
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
<varlistentry>
<term><parameter>buf</parameter></term>
<listitem>
<para>
for <function>glBlendEquationi</function>, specifies the index of the draw buffer
for which to set the blend equation.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><parameter>mode</parameter></term> <term><parameter>mode</parameter></term>
<listitem> <listitem>
@ -44,7 +58,9 @@
The blend equations determine how a new pixel (the ''source'' color) The blend equations determine how a new pixel (the ''source'' color)
is combined with a pixel already in the framebuffer (the ''destination'' is combined with a pixel already in the framebuffer (the ''destination''
color). This function sets both the RGB blend equation and the alpha color). This function sets both the RGB blend equation and the alpha
blend equation to a single equation. blend equation to a single equation. <function>glBlendEquationi</function>
specifies the blend equation for a single draw buffer whereas <function>glBlendEquation</function>
sets the blend equation for all draw buffers.
</para> </para>
<para> <para>
These equations use the source and destination blend factors These equations use the source and destination blend factors
@ -732,6 +748,10 @@
<constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>, <constant>GL_FUNC_REVERSE_SUBTRACT</constant>, <constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>, <constant>GL_FUNC_REVERSE_SUBTRACT</constant>,
<constant>GL_MAX</constant>, or <constant>GL_MIN</constant>. <constant>GL_MAX</constant>, or <constant>GL_MIN</constant>.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated by <function>glBlendEquationi</function> if <parameter>buf</parameter> is greater
than or equal to the value of <constant>GL_MAX_DRAW_BUFFERS</constant>.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>

View file

@ -23,11 +23,26 @@
<paramdef>GLenum <parameter>modeRGB</parameter></paramdef> <paramdef>GLenum <parameter>modeRGB</parameter></paramdef>
<paramdef>GLenum <parameter>modeAlpha</parameter></paramdef> <paramdef>GLenum <parameter>modeAlpha</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype>
<funcdef>void <function>glBlendEquationSeparatei</function></funcdef>
<paramdef>GLuint <parameter>buf</parameter></paramdef>
<paramdef>GLenum <parameter>modeRGB</parameter></paramdef>
<paramdef>GLenum <parameter>modeAlpha</parameter></paramdef>
</funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<!-- eqn: ignoring delim $$ --> <!-- eqn: ignoring delim $$ -->
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
<varlistentry>
<term><parameter>buf</parameter></term>
<listitem>
<para>
for <function>glBlendEquationSeparatei</function>, specifies the index of the draw buffer for which
to set the blend equations.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><parameter>modeRGB</parameter></term> <term><parameter>modeRGB</parameter></term>
<listitem> <listitem>
@ -54,8 +69,10 @@
<para> <para>
The blend equations determines how a new pixel (the ''source'' color) The blend equations determines how a new pixel (the ''source'' color)
is combined with a pixel already in the framebuffer (the ''destination'' is combined with a pixel already in the framebuffer (the ''destination''
color). This function specifies one blend equation for the RGB-color color). These functions specifie one blend equation for the RGB-color
components and one blend equation for the alpha component. components and one blend equation for the alpha component. <function>glBlendEquationSeparatei</function>
specifies the blend equations for a single draw buffer whereas <function>glBlendEquationSeparate</function>
sets the blend equations for all draw buffers.
</para> </para>
<para> <para>
The blend equations use the source and destination blend factors The blend equations use the source and destination blend factors
@ -743,6 +760,10 @@
<constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>, <constant>GL_FUNC_REVERSE_SUBTRACT</constant>, <constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>, <constant>GL_FUNC_REVERSE_SUBTRACT</constant>,
<constant>GL_MAX</constant>, or <constant>GL_MIN</constant>. <constant>GL_MAX</constant>, or <constant>GL_MIN</constant>.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated by <function>glBlendEquationSeparatei</function> if <parameter>buf</parameter> is greater
than or equal to the value of <constant>GL_MAX_DRAW_BUFFERS</constant>.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>

View file

@ -23,11 +23,26 @@
<paramdef>GLenum <parameter>sfactor</parameter></paramdef> <paramdef>GLenum <parameter>sfactor</parameter></paramdef>
<paramdef>GLenum <parameter>dfactor</parameter></paramdef> <paramdef>GLenum <parameter>dfactor</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype>
<funcdef>void <function>glBlendFunci</function></funcdef>
<paramdef>GLuint <parameter>buf</parameter></paramdef>
<paramdef>GLenum <parameter>sfactor</parameter></paramdef>
<paramdef>GLenum <parameter>dfactor</parameter></paramdef>
</funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<!-- eqn: ignoring delim $$ --> <!-- eqn: ignoring delim $$ -->
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
<varlistentry>
<term><parameter>buf</parameter></term>
<listitem>
<para>
For <function>glBlendFunci</function>, specifies the index of the draw
buffer for which to set the blend function.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><parameter>sfactor</parameter></term> <term><parameter>sfactor</parameter></term>
<listitem> <listitem>
@ -75,7 +90,9 @@
to enable and disable blending. to enable and disable blending.
</para> </para>
<para> <para>
<function>glBlendFunc</function> defines the operation of blending when it is enabled. <function>glBlendFunc</function> defines the operation of blending for all draw buffers when it is enabled.
<function>glBlendFunci</function> defines the operation of blending for a single draw buffer
specified by <parameter>buf</parameter> when enabled for that draw buffer.
<parameter>sfactor</parameter> specifies which method is used to scale the <parameter>sfactor</parameter> specifies which method is used to scale the
source color components. source color components.
<parameter>dfactor</parameter> specifies which method is used to scale the <parameter>dfactor</parameter> specifies which method is used to scale the
@ -1415,13 +1432,23 @@
<constant>GL_INVALID_ENUM</constant> is generated if either <parameter>sfactor</parameter> <constant>GL_INVALID_ENUM</constant> is generated if either <parameter>sfactor</parameter>
or <parameter>dfactor</parameter> is not an accepted value. or <parameter>dfactor</parameter> is not an accepted value.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated by <function>glBlendFunci</function> if <parameter>buf</parameter> is greater
than or equal to the value of <constant>GL_MAX_DRAW_BUFFERS</constant>.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_BLEND_SRC</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_BLEND_SRC_RGB</constant>
</para> </para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_BLEND_DST</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_BLEND_SRC_ALPHA</constant>
</para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_BLEND_DST_RGB</constant>
</para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_BLEND_DST_ALPHA</constant>
</para> </para>
<para> <para>
<citerefentry><refentrytitle>glIsEnabled</refentrytitle></citerefentry> with argument <constant>GL_BLEND</constant> <citerefentry><refentrytitle>glIsEnabled</refentrytitle></citerefentry> with argument <constant>GL_BLEND</constant>

View file

@ -25,11 +25,28 @@
<paramdef>GLenum <parameter>srcAlpha</parameter></paramdef> <paramdef>GLenum <parameter>srcAlpha</parameter></paramdef>
<paramdef>GLenum <parameter>dstAlpha</parameter></paramdef> <paramdef>GLenum <parameter>dstAlpha</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype>
<funcdef>void <function>glBlendFuncSeparatei</function></funcdef>
<paramdef>GLuint <parameter>buf</parameter></paramdef>
<paramdef>GLenum <parameter>srcRGB</parameter></paramdef>
<paramdef>GLenum <parameter>dstRGB</parameter></paramdef>
<paramdef>GLenum <parameter>srcAlpha</parameter></paramdef>
<paramdef>GLenum <parameter>dstAlpha</parameter></paramdef>
</funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<!-- eqn: ignoring delim $$ --> <!-- eqn: ignoring delim $$ -->
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
<varlistentry>
<term><parameter>buf</parameter></term>
<listitem>
<para>
For <function>glBlendFuncSeparatei</function>, specifies the index of the draw
buffer for which to set the blend functions.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><parameter>srcRGB</parameter></term> <term><parameter>srcRGB</parameter></term>
<listitem> <listitem>
@ -79,7 +96,9 @@
to enable and disable blending. to enable and disable blending.
</para> </para>
<para> <para>
<function>glBlendFuncSeparate</function> defines the operation of blending when it is enabled. <function>glBlendFuncSeparate</function> defines the operation of blending for all draw buffers when it is enabled.
<function>glBlendFuncSeparatei</function> defines the operation of blending for a single draw buffer
specified by <parameter>buf</parameter> when enabled for that draw buffer.
<parameter>srcRGB</parameter> specifies which method is used to scale the <parameter>srcRGB</parameter> specifies which method is used to scale the
source RGB-color components. source RGB-color components.
<parameter>dstRGB</parameter> specifies which method is used to scale the <parameter>dstRGB</parameter> specifies which method is used to scale the
@ -1457,6 +1476,10 @@
<constant>GL_INVALID_ENUM</constant> is generated if either <parameter>srcRGB</parameter> or <parameter>dstRGB</parameter> is not an <constant>GL_INVALID_ENUM</constant> is generated if either <parameter>srcRGB</parameter> or <parameter>dstRGB</parameter> is not an
accepted value. accepted value.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated by <function>glBlendFuncSeparatei</function> if <parameter>buf</parameter> is greater
than or equal to the value of <constant>GL_MAX_DRAW_BUFFERS</constant>.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glBindVertexArray"> <refentry id="glBlitFramebuffer">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
@ -114,11 +114,6 @@
is undefined. is undefined.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
<function>glBindVertexArray</function> is available only if the GL version is 3.0 or greater.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>mask</parameter> contains any of the <constant>GL_DEPTH_BUFFER_BIT</constant> <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>mask</parameter> contains any of the <constant>GL_DEPTH_BUFFER_BIT</constant>
@ -143,7 +138,7 @@
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>mask</parameter> contains <constant>GL_DEPTH_BUFFER_BIT</constant> or <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>mask</parameter> contains <constant>GL_DEPTH_BUFFER_BIT</constant> or
<constant>GL_DEPTH_BUFFER_BIT</constant> and the source and destination depth and stencil formats do not match. <constant>GL_STENCIL_BUFFER_BIT</constant> and the source and destination depth and stencil formats do not match.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>filter</parameter> is <constant>GL_LINEAR</constant> and the read buffer <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>filter</parameter> is <constant>GL_LINEAR</constant> and the read buffer

View file

@ -35,12 +35,18 @@
<listitem> <listitem>
<para> <para>
Specifies the target buffer object. Specifies the target buffer object.
The symbolic constant must be <constant>GL_ARRAY_BUFFER</constant>, The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -163,6 +169,17 @@
a datum comprising <inlineequation><mml:math><mml:mi mathvariant="italic">N</mml:mi> bytes be a a datum comprising <inlineequation><mml:math><mml:mi mathvariant="italic">N</mml:mi> bytes be a
multiple of <mml:mi mathvariant="italic">N</mml:mi></mml:math></inlineequation>. multiple of <mml:mi mathvariant="italic">N</mml:mi></mml:math></inlineequation>.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFFER</constant> target is available only if the GL version
is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version
is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -204,6 +221,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2011-2012 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -35,12 +35,18 @@
<listitem> <listitem>
<para> <para>
Specifies the target buffer object. Specifies the target buffer object.
The symbolic constant must be <constant>GL_ARRAY_BUFFER</constant>, The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -101,6 +107,17 @@
a datum comprising <inlineequation><mml:math><mml:mi mathvariant="italic">N</mml:mi> bytes be a a datum comprising <inlineequation><mml:math><mml:mi mathvariant="italic">N</mml:mi> bytes be a
multiple of <mml:mi mathvariant="italic">N</mml:mi></mml:math></inlineequation>. multiple of <mml:mi mathvariant="italic">N</mml:mi></mml:math></inlineequation>.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFFER</constant> target is available only if the GL version
is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version
is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>

View file

@ -64,7 +64,7 @@
<listitem> <listitem>
<para> <para>
<constant>GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER</constant> is returned if the value of <constant>GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE</constant> <constant>GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER</constant> is returned if the value of <constant>GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE</constant>
is <constant>GL_NONE</constant> for any color attachment point(s) named by <constant>GL_DRAWBUFFERi</constant>. is <constant>GL_NONE</constant> for any color attachment point(s) named by <constant>GL_DRAW_BUFFERi</constant>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>

View file

@ -100,7 +100,7 @@
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glClearBuffer*</function> clears the specified buffer to the specified value(s). If <parameter>buffer</parameter> is <function>glClearBuffer*</function> clears the specified buffer to the specified value(s). If <parameter>buffer</parameter> is
<constant>GL_COLOR</constant>, a particular draw buffer <constant>GL_DRAWBUFFER<parameter>i</parameter></constant> is specified <constant>GL_COLOR</constant>, a particular draw buffer <constant>GL_DRAW_BUFFER<parameter>i</parameter></constant> is specified
by passing <parameter>i</parameter> as <parameter>drawBuffer</parameter>. In this case, <parameter>value</parameter> points to by passing <parameter>i</parameter> as <parameter>drawBuffer</parameter>. In this case, <parameter>value</parameter> points to
a four-element vector specifying the R, G, B and A color to clear that draw buffer to. If <parameter>buffer</parameter> is a four-element vector specifying the R, G, B and A color to clear that draw buffer to. If <parameter>buffer</parameter> is
one of <constant>GL_FRONT</constant>, <constant>GL_BACK</constant>, <constant>GL_LEFT</constant>, <constant>GL_RIGHT</constant>, one of <constant>GL_FRONT</constant>, <constant>GL_BACK</constant>, <constant>GL_LEFT</constant>, <constant>GL_RIGHT</constant>,
@ -117,7 +117,7 @@
<para> <para>
If <parameter>buffer</parameter> is <constant>GL_STENCIL</constant>, <parameter>drawBuffer</parameter> must be zero, and <parameter>value</parameter> If <parameter>buffer</parameter> is <constant>GL_STENCIL</constant>, <parameter>drawBuffer</parameter> must be zero, and <parameter>value</parameter>
points to a single value to clear the stencil buffer to. Only <function>glClearBufferiv</function> should be used to clear points to a single value to clear the stencil buffer to. Only <function>glClearBufferiv</function> should be used to clear
stencil buffers. Masing and type conversion are performed in the same fashion as stencil buffers. Masking and type conversion are performed in the same fashion as
<citerefentry><refentrytitle>glClearStencil</refentrytitle></citerefentry>. <citerefentry><refentrytitle>glClearStencil</refentrytitle></citerefentry>.
</para> </para>
<para> <para>

View file

@ -20,10 +20,10 @@
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glClearColor</function></funcdef> <funcdef>void <function>glClearColor</function></funcdef>
<paramdef>GLclampf <parameter>red</parameter></paramdef> <paramdef>GLfloat <parameter>red</parameter></paramdef>
<paramdef>GLclampf <parameter>green</parameter></paramdef> <paramdef>GLfloat <parameter>green</parameter></paramdef>
<paramdef>GLclampf <parameter>blue</parameter></paramdef> <paramdef>GLfloat <parameter>blue</parameter></paramdef>
<paramdef>GLclampf <parameter>alpha</parameter></paramdef> <paramdef>GLfloat <parameter>alpha</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -60,6 +60,17 @@
</mml:math></inlineequation>. </mml:math></inlineequation>.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The type of the <parameter>red</parameter>,
<parameter>green</parameter>, <parameter>blue</parameter>,
and <parameter>alpha</parameter> parameters was changed from
GLclampf to GLfloat. This change is transparent to user code
and is described in detail on the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COLOR_CLEAR_VALUE</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COLOR_CLEAR_VALUE</constant>
@ -67,7 +78,8 @@
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
<citerefentry><refentrytitle>glClear</refentrytitle></citerefentry> <citerefentry><refentrytitle>glClear</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -20,11 +20,11 @@
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glClearDepth</function></funcdef> <funcdef>void <function>glClearDepth</function></funcdef>
<paramdef>GLclampd <parameter>depth</parameter></paramdef> <paramdef>GLdouble <parameter>depth</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype> <funcprototype>
<funcdef>void <function>glClearDepthf</function></funcdef> <funcdef>void <function>glClearDepthf</function></funcdef>
<paramdef>GLclampf <parameter>depth</parameter></paramdef> <paramdef>GLfloat <parameter>depth</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -54,6 +54,18 @@
</mml:math></inlineequation>. </mml:math></inlineequation>.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The type of the <parameter>depth</parameter> parameter was
changed from GLclampf to GLfloat for
<function>glClearDepthf</function> and from GLclampd to
GLdouble for <function>glClearDepth</function>. This change
is transparent to user code and is described in detail on
the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_DEPTH_CLEAR_VALUE</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_DEPTH_CLEAR_VALUE</constant>
@ -61,7 +73,8 @@
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
<citerefentry><refentrytitle>glClear</refentrytitle></citerefentry> <citerefentry><refentrytitle>glClear</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -13,7 +13,7 @@
<manvolnum>3G</manvolnum> <manvolnum>3G</manvolnum>
</refmeta> </refmeta>
<refnamediv> <refnamediv>
<refname>glColorMask</refname> <refname>glColorMask, glColorMaski</refname>
<refpurpose>enable and disable writing of frame buffer color components</refpurpose> <refpurpose>enable and disable writing of frame buffer color components</refpurpose>
</refnamediv> </refnamediv>
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
@ -26,9 +26,28 @@
<paramdef>GLboolean <parameter>alpha</parameter></paramdef> <paramdef>GLboolean <parameter>alpha</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glColorMaski</function></funcdef>
<paramdef>GLuint <parameter>buf</parameter></paramdef>
<paramdef>GLboolean <parameter>red</parameter></paramdef>
<paramdef>GLboolean <parameter>green</parameter></paramdef>
<paramdef>GLboolean <parameter>blue</parameter></paramdef>
<paramdef>GLboolean <parameter>alpha</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
<varlistentry>
<term><parameter>buf</parameter></term>
<listitem>
<para>
For <function>glColorMaski</function>, specifies the index of the
draw buffer whose color mask to set.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><parameter>red</parameter></term> <term><parameter>red</parameter></term>
<term><parameter>green</parameter></term> <term><parameter>green</parameter></term>
@ -36,10 +55,10 @@
<term><parameter>alpha</parameter></term> <term><parameter>alpha</parameter></term>
<listitem> <listitem>
<para> <para>
Specify whether red, green, blue, and alpha can or cannot be written Specify whether red, green, blue, and alpha are to be written
into the frame buffer. into the frame buffer.
The initial values are all <constant>GL_TRUE</constant>, The initial values are all <constant>GL_TRUE</constant>,
indicating that the color components can be written. indicating that the color components are written.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -47,8 +66,9 @@
</refsect1> </refsect1>
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glColorMask</function> specifies whether the individual color components in the frame buffer <function>glColorMask</function> and <function>glColorMaski</function> specify whether the individual color components in the frame buffer
can or cannot be written. can or cannot be written. <function>glColorMaski</function> sets the mask for a specific draw buffer, whereas
<function>glColorMask</function> sets the mask for all draw buffers.
If <parameter>red</parameter> is <constant>GL_FALSE</constant>, If <parameter>red</parameter> is <constant>GL_FALSE</constant>,
for example, for example,
no change is made to the red component of any pixel in any of the no change is made to the red component of any pixel in any of the
@ -76,7 +96,9 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -122,6 +122,63 @@
(see <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>) while a texture image is (see <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>) while a texture image is
specified, <parameter>data</parameter> is treated as a byte offset into the buffer object's data store. specified, <parameter>data</parameter> is treated as a byte offset into the buffer object's data store.
</para> </para>
<para>
If the compressed data are arranged into fixed-size blocks of texels, the pixel
storage modes can be used to select a sub-rectangle from a larger containing rectangle.
These pixel storage modes operate in the same way as they do for <citerefentry><refentrytitle>glTexImage1D</refentrytitle></citerefentry>.
In the following description, denote by <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>, and
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math>,
the values of pixel storage modes <constant>GL_UNPACK_COMPRESSED_BLOCK_SIZE</constant>,
<constant>GL_UNPACK_COMPRESSED_BLOCK_WIDTH</constant>, <constant>GL_UNPACK_COMPRESSED_BLOCK_HEIGHT</constant>,
and <constant>GL_UNPACK_COMPRESSED_BLOCK_DEPTH</constant>, respectively.
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math> is
the compressed block size in bytes; <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>,
and <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math> are the compressed block width, height, and depth in pixels.
</para>
<para>
By default the pixel storage modes <constant>GL_UNPACK_ROW_LENGTH</constant>,
<constant>GL_UNPACK_SKIP_ROWS</constant>, <constant>GL_UNPACK_SKIP_PIXELS</constant>,
<constant>GL_UNPACK_IMAGE_HEIGHT</constant> and <constant>GL_UNPACK_SKIP_IMAGES</constant>
are ignored for compressed images. To enable <constant>GL_UNPACK_SKIP_PIXELS</constant>
and <constant>GL_UNPACK_ROW_LENGTH</constant>, <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math>
and <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math> must both be non-zero.
To also enable <constant>GL_UNPACK_SKIP_ROWS</constant> and <constant>GL_UNPACK_IMAGE_HEIGHT</constant>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math> must be non-zero.
To also enable <constant>GL_UNPACK_SKIP_IMAGES</constant>, <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math>
must be non-zero. All parameters must be consistent with the compressed format to produce the desired results.
</para>
<para>
When selecting a sub-rectangle from a compressed image:
<itemizedlist>
<listitem>the value of <constant>GL_UNPACK_SKIP_PIXELS</constant> must be a multiple of <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>;</listitem>
</itemizedlist>
</para>
<para>
<parameter>imageSize</parameter> must be equal to:
</para>
<para>
<mml:math display = 'block'>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo lspace='2px' rspace='2px'>&times;</mml:mo>
<mml:mfenced open = '&lceil;' close = '&rceil;'>
<mml:mfrac>
<mml:mi>width</mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mfenced>
</mml:mrow>
</mml:math>
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -208,7 +265,8 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc. <trademark class="copyright"></trademark> 2011
Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -74,8 +74,7 @@
<listitem> <listitem>
<para> <para>
Specifies the width of the texture image. Specifies the width of the texture image.
All implementations support 2D texture images that are at least 64 texels All implementations support 2D texture and cube map texture images that are at least 16384 texels wide.
wide and cube-mapped texture images that are at least 16 texels wide.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -84,8 +83,7 @@
<listitem> <listitem>
<para> <para>
Specifies the height of the texture image. Specifies the height of the texture image.
All implementations support 2D texture images that are at least 64 texels All implementations support 2D texture and cube map texture images that are at least 16384 texels high.
high and cube-mapped texture images that are at least 16 texels high.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -132,7 +130,7 @@
</para> </para>
<para> <para>
If <parameter>target</parameter> is <constant>GL_PROXY_TEXTURE_2D</constant>, <constant>GL_PROXY_TEXTURE_1D_ARRAY</constant> If <parameter>target</parameter> is <constant>GL_PROXY_TEXTURE_2D</constant>, <constant>GL_PROXY_TEXTURE_1D_ARRAY</constant>
or <constant>GL_PROXY_CUBE_MAP</constant>, no data is read from <parameter>data</parameter>, but or <constant>GL_PROXY_TEXTURE_CUBE_MAP</constant>, no data is read from <parameter>data</parameter>, but
all of the texture image state is recalculated, checked for consistency, all of the texture image state is recalculated, checked for consistency,
and checked against the implementation's capabilities. If the and checked against the implementation's capabilities. If the
implementation cannot handle a texture of the requested texture size, it implementation cannot handle a texture of the requested texture size, it
@ -154,17 +152,112 @@
(see <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>) while a texture image is (see <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>) while a texture image is
specified, <parameter>data</parameter> is treated as a byte offset into the buffer object's data store. specified, <parameter>data</parameter> is treated as a byte offset into the buffer object's data store.
</para> </para>
<para>
If the compressed data are arranged into fixed-size blocks of texels, the pixel
storage modes can be used to select a sub-rectangle from a larger containing rectangle.
These pixel storage modes operate in the same way as they do for <citerefentry><refentrytitle>glTexImage2D</refentrytitle></citerefentry>.
In the following description, denote by <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>, and
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math>,
the values of pixel storage modes <constant>GL_UNPACK_COMPRESSED_BLOCK_SIZE</constant>,
<constant>GL_UNPACK_COMPRESSED_BLOCK_WIDTH</constant>, <constant>GL_UNPACK_COMPRESSED_BLOCK_HEIGHT</constant>,
and <constant>GL_UNPACK_COMPRESSED_BLOCK_DEPTH</constant>, respectively.
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math> is
the compressed block size in bytes; <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>,
and <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math> are the compressed block width, height, and depth in pixels.
</para>
<para>
By default the pixel storage modes <constant>GL_UNPACK_ROW_LENGTH</constant>,
<constant>GL_UNPACK_SKIP_ROWS</constant>, <constant>GL_UNPACK_SKIP_PIXELS</constant>,
<constant>GL_UNPACK_IMAGE_HEIGHT</constant> and <constant>GL_UNPACK_SKIP_IMAGES</constant>
are ignored for compressed images. To enable <constant>GL_UNPACK_SKIP_PIXELS</constant>
and <constant>GL_UNPACK_ROW_LENGTH</constant>, <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math>
and <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math> must both be non-zero.
To also enable <constant>GL_UNPACK_SKIP_ROWS</constant> and <constant>GL_UNPACK_IMAGE_HEIGHT</constant>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math> must be non-zero.
To also enable <constant>GL_UNPACK_SKIP_IMAGES</constant>, <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math>
must be non-zero. All parameters must be consistent with the compressed format to produce the desired results.
</para>
<para>
When selecting a sub-rectangle from a compressed image:
<itemizedlist>
<listitem>the value of <constant>GL_UNPACK_SKIP_PIXELS</constant> must be a multiple of <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>;</listitem>
<listitem>the value of <constant>GL_UNPACK_SKIP_ROWS</constant> must be a multiple of <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>.</listitem>
</itemizedlist>
</para>
<para>
<parameter>imageSize</parameter> must be equal to:
</para>
<para>
<mml:math display = 'block'>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo lspace='2px' rspace='2px'>&times;</mml:mo>
<mml:mfenced open = '&lceil;' close = '&rceil;'>
<mml:mfrac>
<mml:mi>width</mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mfenced>
<mml:mo lspace='2px' rspace='2px'>&times;</mml:mo>
<mml:mfenced open = '&lceil;' close = '&rceil;'>
<mml:mfrac>
<mml:mi>height</mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mfenced>
</mml:mrow>
</mml:math>
</para>
</refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The specific compressed internal formats <constant>GL_COMPRESSED_RGB8_ETC2</constant>,
<constant>GL_COMPRESSED_SRGB8_ETC2</constant>,
<constant>GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2</constant>,
<constant>GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2</constant>,
<constant>GL_COMPRESSED_RGBA8_ETC2_EAC</constant>,
<constant>GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC</constant>,
<constant>GL_COMPRESSED_R11_EAC</constant>,
<constant>GL_COMPRESSED_SIGNED_R11_EAC</constant>,
<constant>GL_COMPRESSED_RG11_EAC</constant>, and
<constant>GL_COMPRESSED_SIGNED_RG11_EAC</constant> are available only if the GL version
is 4.3 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>internalformat</parameter> is not one of the generic <constant>GL_INVALID_ENUM</constant> is generated if <parameter>internalformat</parameter> is not one of the specific
compressed internal formats: compressed internal formats:
<constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RED_RGTC1</constant>,
<constant>GL_COMPRESSED_RG</constant>, <constant>GL_COMPRESSED_SIGNED_RED_RGTC1</constant>,
<constant>GL_COMPRESSED_RGB</constant>, <constant>GL_COMPRESSED_RG_RGTC2</constant>,
<constant>GL_COMPRESSED_RGBA</constant>. <constant>GL_COMPRESSED_SIGNED_RG_RGTC2</constant>.
<constant>GL_COMPRESSED_SRGB</constant>, or <constant>GL_COMPRESSED_RGBA_BPTC_UNORM</constant>,
<constant>GL_COMPRESSED_SRGB_ALPHA</constant>. <constant>GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM</constant>,
<constant>GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT</constant>,
<constant>GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT</constant>,
<constant>GL_COMPRESSED_RGB8_ETC2</constant>,
<constant>GL_COMPRESSED_SRGB8_ETC2</constant>,
<constant>GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2</constant>,
<constant>GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2</constant>,
<constant>GL_COMPRESSED_RGBA8_ETC2_EAC</constant>,
<constant>GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC</constant>,
<constant>GL_COMPRESSED_R11_EAC</constant>,
<constant>GL_COMPRESSED_SIGNED_R11_EAC</constant>,
<constant>GL_COMPRESSED_RG11_EAC</constant>, or
<constant>GL_COMPRESSED_SIGNED_RG11_EAC</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>imageSize</parameter> is not consistent with <constant>GL_INVALID_VALUE</constant> is generated if <parameter>imageSize</parameter> is not consistent with
@ -233,7 +326,8 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc. <trademark class="copyright"></trademark> 2011
Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -155,6 +155,85 @@
(see <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>) while a texture image is (see <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>) while a texture image is
specified, <parameter>data</parameter> is treated as a byte offset into the buffer object's data store. specified, <parameter>data</parameter> is treated as a byte offset into the buffer object's data store.
</para> </para>
<para>
If the compressed data are arranged into fixed-size blocks of texels, the pixel
storage modes can be used to select a sub-rectangle from a larger containing rectangle.
These pixel storage modes operate in the same way as they do for <citerefentry><refentrytitle>glTexImage1D</refentrytitle></citerefentry>.
In the following description, denote by <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>, and
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math>,
the values of pixel storage modes <constant>GL_UNPACK_COMPRESSED_BLOCK_SIZE</constant>,
<constant>GL_UNPACK_COMPRESSED_BLOCK_WIDTH</constant>, <constant>GL_UNPACK_COMPRESSED_BLOCK_HEIGHT</constant>,
and <constant>GL_UNPACK_COMPRESSED_BLOCK_DEPTH</constant>, respectively.
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math> is
the compressed block size in bytes; <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>,
and <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math> are the compressed block width, height, and depth in pixels.
</para>
<para>
By default the pixel storage modes <constant>GL_UNPACK_ROW_LENGTH</constant>,
<constant>GL_UNPACK_SKIP_ROWS</constant>, <constant>GL_UNPACK_SKIP_PIXELS</constant>,
<constant>GL_UNPACK_IMAGE_HEIGHT</constant> and <constant>GL_UNPACK_SKIP_IMAGES</constant>
are ignored for compressed images. To enable <constant>GL_UNPACK_SKIP_PIXELS</constant>
and <constant>GL_UNPACK_ROW_LENGTH</constant>, <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>s</mml:mi></mml:msub></mml:mrow></mml:math>
and <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math> must both be non-zero.
To also enable <constant>GL_UNPACK_SKIP_ROWS</constant> and <constant>GL_UNPACK_IMAGE_HEIGHT</constant>,
<mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math> must be non-zero.
To also enable <constant>GL_UNPACK_SKIP_IMAGES</constant>, <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:mrow></mml:math>
must be non-zero. All parameters must be consistent with the compressed format to produce the desired results.
</para>
<para>
When selecting a sub-rectangle from a compressed image:
<itemizedlist>
<listitem>the value of <constant>GL_UNPACK_SKIP_PIXELS</constant> must be a multiple of <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>;</listitem>
<listitem>the value of <constant>GL_UNPACK_SKIP_ROWS</constant> must be a multiple of <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>;</listitem>
<listitem>the value of <constant>GL_UNPACK_SKIP_IMAGES</constant> must be a multiple of <mml:math><mml:mrow><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>.</listitem>
</itemizedlist>
</para>
<para>
<parameter>imageSize</parameter> must be equal to:
</para>
<para>
<mml:math display = 'block'>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo lspace='2px' rspace='2px'>&times;</mml:mo>
<mml:mfenced open = '&lceil;' close = '&rceil;'>
<mml:mfrac>
<mml:mi>width</mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mfenced>
<mml:mo lspace='2px' rspace='2px'>&times;</mml:mo>
<mml:mfenced open = '&lceil;' close = '&rceil;'>
<mml:mfrac>
<mml:mi>height</mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mfenced>
<mml:mo lspace='2px' rspace='2px'>&times;</mml:mo>
<mml:mfenced open = '&lceil;' close = '&rceil;'>
<mml:mfrac>
<mml:mi>depth</mml:mi>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mfenced>
</mml:mrow>
</mml:math>
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -231,7 +310,8 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc. <trademark class="copyright"></trademark> 2011
Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -82,8 +82,10 @@
</para> </para>
<para> <para>
<parameter>readtarget</parameter> and <parameter>writetarget</parameter> must be <constant>GL_ARRAY_BUFFER</constant>, <parameter>readtarget</parameter> and <parameter>writetarget</parameter> must be <constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_DISPATCH_INDIRECT_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_QUERY_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>. Any of these targets may be used, <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>. Any of these targets may be used,
although the targets <constant>GL_COPY_READ_BUFFER</constant> and <constant>GL_COPY_WRITE_BUFFER</constant> are provided although the targets <constant>GL_COPY_READ_BUFFER</constant> and <constant>GL_COPY_WRITE_BUFFER</constant> are provided
specifically to allow copies between buffers without disturbing other GL state. specifically to allow copies between buffers without disturbing other GL state.
@ -99,7 +101,11 @@
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
<para> <para>
<function>glCopyBufferSubData</function> is available only if the GL version is 3.1 or greater. The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version
is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
@ -134,7 +140,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glCopyTexImage1D</refentrytitle> <refentrytitle>glCopyTexImage1D</refentrytitle>
@ -68,6 +68,7 @@
<constant>GL_DEPTH_COMPONENT16</constant>, <constant>GL_DEPTH_COMPONENT16</constant>,
<constant>GL_DEPTH_COMPONENT24</constant>, <constant>GL_DEPTH_COMPONENT24</constant>,
<constant>GL_DEPTH_COMPONENT32</constant>, <constant>GL_DEPTH_COMPONENT32</constant>,
<constant>GL_STENCIL_INDEX8</constant>,
<constant>GL_RED</constant>, <constant>GL_RED</constant>,
<constant>GL_RG</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant>, <constant>GL_RGB</constant>,
@ -108,25 +109,6 @@
<listitem> <listitem>
<para> <para>
Specifies the width of the texture image. Specifies the width of the texture image.
Must be 0 or
<inlineequation><mml:math>
<!-- eqn: 2 sup n + 2 ( border ): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some integer
<inlineequation><mml:math><mml:mi mathvariant="italic">n</mml:mi></mml:math></inlineequation>.
The height of the texture image is 1. The height of the texture image is 1.
</para> </para>
</listitem> </listitem>
@ -135,8 +117,7 @@
<term><parameter>border</parameter></term> <term><parameter>border</parameter></term>
<listitem> <listitem>
<para> <para>
Specifies the width of the border. Must be 0.
Must be either 0 or 1.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -158,18 +139,7 @@
</mml:math></inlineequation> </mml:math></inlineequation>
and with a length of and with a length of
<inlineequation><mml:math> <inlineequation><mml:math>
<!-- eqn: width + 2 ( border ): --> <mml:mi mathvariant="italic">width</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">width</mml:mi>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation> </mml:math></inlineequation>
defines the texture array defines the texture array
at the mipmap level specified by <parameter>level</parameter>. at the mipmap level specified by <parameter>level</parameter>.
@ -216,6 +186,10 @@
<para> <para>
An image with 0 width indicates a NULL texture. An image with 0 width indicates a NULL texture.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX8</constant> is accepted for <parameter>internalformat</parameter> only
if the GL version is 4.4 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -249,27 +223,7 @@
<constant>GL_MAX_TEXTURE_SIZE</constant>. <constant>GL_MAX_TEXTURE_SIZE</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if non-power-of-two textures are not supported and the <parameter>width</parameter> cannot be represented as <constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0.
<inlineequation><mml:math>
<!-- eqn: 2 sup n + 2 ( border ): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some integer value of <emphasis>n</emphasis>.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0 or 1.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>internalformat</parameter> is <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>internalformat</parameter> is
@ -299,7 +253,9 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glCopyTexImage2D</refentrytitle> <refentrytitle>glCopyTexImage2D</refentrytitle>
@ -75,6 +75,7 @@
<constant>GL_DEPTH_COMPONENT16</constant>, <constant>GL_DEPTH_COMPONENT16</constant>,
<constant>GL_DEPTH_COMPONENT24</constant>, <constant>GL_DEPTH_COMPONENT24</constant>,
<constant>GL_DEPTH_COMPONENT32</constant>, <constant>GL_DEPTH_COMPONENT32</constant>,
<constant>GL_STENCIL_INDEX8</constant>,
<constant>GL_RED</constant>, <constant>GL_RED</constant>,
<constant>GL_RG</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant>, <constant>GL_RGB</constant>,
@ -115,25 +116,6 @@
<listitem> <listitem>
<para> <para>
Specifies the width of the texture image. Specifies the width of the texture image.
Must be 0 or
<inlineequation><mml:math>
<!-- eqn: 2 sup n + 2 ( border ): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some integer
<inlineequation><mml:math><mml:mi mathvariant="italic">n</mml:mi></mml:math></inlineequation>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -142,25 +124,6 @@
<listitem> <listitem>
<para> <para>
Specifies the height of the texture image. Specifies the height of the texture image.
Must be 0 or
<inlineequation><mml:math>
<!-- eqn: 2 sup m + 2 ( border ): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some integer
<inlineequation><mml:math><mml:mi mathvariant="italic">m</mml:mi></mml:math></inlineequation>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -168,8 +131,7 @@
<term><parameter>border</parameter></term> <term><parameter>border</parameter></term>
<listitem> <listitem>
<para> <para>
Specifies the width of the border. Must be 0.
Must be either 0 or 1.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -185,33 +147,11 @@
The screen-aligned pixel rectangle with lower left corner at (<parameter>x</parameter>, The screen-aligned pixel rectangle with lower left corner at (<parameter>x</parameter>,
<parameter>y</parameter>) and with a width of <parameter>y</parameter>) and with a width of
<inlineequation><mml:math> <inlineequation><mml:math>
<!-- eqn: width + 2 ( border ): --> <mml:mi mathvariant="italic">width</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">width</mml:mi>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation> </mml:math></inlineequation>
and a height of and a height of
<inlineequation><mml:math> <inlineequation><mml:math>
<!-- eqn: height + 2 ( border ): --> <mml:mi mathvariant="italic">height</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">height</mml:mi>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation> </mml:math></inlineequation>
defines the texture array defines the texture array
at the mipmap level specified by <parameter>level</parameter>. at the mipmap level specified by <parameter>level</parameter>.
@ -260,6 +200,10 @@
<para> <para>
An image with height or width of 0 indicates a NULL texture. An image with height or width of 0 indicates a NULL texture.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX8</constant> is accepted for <parameter>internalformat</parameter> only
if the GL version is 4.4 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -297,28 +241,7 @@
<constant>GL_MAX_TEXTURE_SIZE</constant>. <constant>GL_MAX_TEXTURE_SIZE</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if non-power-of-two textures are not supported and the <parameter>width</parameter> or <parameter>depth</parameter> cannot be represented as <constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0.
<inlineequation><mml:math>
<!-- eqn: 2 sup k + 2 ( border ): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some integer
<inlineequation><mml:math><mml:mi mathvariant="italic">k</mml:mi></mml:math></inlineequation>.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0 or 1.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>internalformat</parameter> is not an <constant>GL_INVALID_VALUE</constant> is generated if <parameter>internalformat</parameter> is not an
@ -352,7 +275,9 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glCopyTexSubImage1D</refentrytitle> <refentrytitle>glCopyTexSubImage1D</refentrytitle>
@ -128,8 +128,7 @@
rendering context, then the values obtained for those pixels are undefined. rendering context, then the values obtained for those pixels are undefined.
</para> </para>
<para> <para>
No change is made to the <emphasis>internalformat</emphasis>, <emphasis>width</emphasis>, No change is made to the <emphasis>internalformat</emphasis> or <emphasis>width</emphasis> parameters of the specified texture
or <emphasis>border</emphasis> parameters of the specified texture
array or to texel values outside the specified subregion. array or to texel values outside the specified subregion.
</para> </para>
</refsect1> </refsect1>
@ -176,10 +175,7 @@
<mml:mrow> <mml:mrow>
<mml:mi mathvariant="italic">xoffset</mml:mi> <mml:mi mathvariant="italic">xoffset</mml:mi>
<mml:mo>&lt;</mml:mo> <mml:mo>&lt;</mml:mo>
<mml:mrow> <mml:mn>0</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
or or
@ -194,24 +190,13 @@
</mml:mrow> </mml:mrow>
</mml:mfenced> </mml:mfenced>
<mml:mo>&gt;</mml:mo> <mml:mo>&gt;</mml:mo>
<mml:mfenced open="(" close=")"> <mml:mi mathvariant="italic">w</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
where where
<inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_WIDTH</constant> and is the <constant>GL_TEXTURE_WIDTH</constant>
<inlineequation><mml:math><mml:mi mathvariant="italic">b</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_BORDER</constant>
of the texture image being modified. of the texture image being modified.
Note that
<inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation>
includes twice the border width.
</para> </para>
<para> <para>
</para> </para>
@ -241,7 +226,9 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glCopyTexSubImage2D</refentrytitle> <refentrytitle>glCopyTexSubImage2D</refentrytitle>
@ -46,8 +46,9 @@
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_X</constant>, <constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_X</constant>,
<constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Y</constant>, <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Y</constant>,
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</constant>, <constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</constant>,
<constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Z</constant>, or <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Z</constant>,
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</constant>. <constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</constant>, or
<constant>GL_TEXTURE_1D_ARRAY</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -107,8 +108,9 @@
</refsect1> </refsect1>
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glCopyTexSubImage2D</function> replaces a rectangular portion of a two-dimensional texture image or <function>glCopyTexSubImage2D</function> replaces a rectangular portion of a two-dimensional texture image,
cube-map texture image with pixels from the current <constant>GL_READ_BUFFER</constant> cube-map texture image or a linear portion of a number of slices of a one-dimensional array texture
with pixels from the current <constant>GL_READ_BUFFER</constant>
(rather than from main memory, as is the case for <citerefentry><refentrytitle>glTexSubImage2D</refentrytitle></citerefentry>). (rather than from main memory, as is the case for <citerefentry><refentrytitle>glTexSubImage2D</refentrytitle></citerefentry>).
</para> </para>
<para> <para>
@ -167,14 +169,19 @@
It is not an error to specify a subtexture with zero width or height, but It is not an error to specify a subtexture with zero width or height, but
such a specification has no effect. such a specification has no effect.
</para> </para>
<para>
When <parameter>target</parameter> is <constant>GL_TEXTURE_1D_ARRAY</constant>
then the y coordinate and height are treated as the start slice and number
of slices to modify.
</para>
<para> <para>
If any of the pixels within the specified rectangle of the current If any of the pixels within the specified rectangle of the current
<constant>GL_READ_BUFFER</constant> are outside the read window associated with the current <constant>GL_READ_BUFFER</constant> are outside the read window associated with the current
rendering context, then the values obtained for those pixels are undefined. rendering context, then the values obtained for those pixels are undefined.
</para> </para>
<para> <para>
No change is made to the <emphasis>internalformat</emphasis>, <emphasis>width</emphasis>, No change is made to the <emphasis>internalformat</emphasis>, <emphasis>width</emphasis>, or
<emphasis>height</emphasis>, or <emphasis>border</emphasis> parameters of the specified texture <emphasis>height</emphasis>, parameters of the specified texture
array or to texel values outside the specified subregion. array or to texel values outside the specified subregion.
</para> </para>
</refsect1> </refsect1>
@ -190,8 +197,9 @@
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_X</constant>, <constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_X</constant>,
<constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Y</constant>, <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Y</constant>,
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</constant>, <constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</constant>,
<constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Z</constant>, or <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Z</constant>,
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</constant>. <constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</constant>, or
<constant>GL_TEXTURE_1D_ARRAY</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if the texture array has not been <constant>GL_INVALID_OPERATION</constant> is generated if the texture array has not been
@ -229,10 +237,7 @@
<mml:mrow> <mml:mrow>
<mml:mi mathvariant="italic">xoffset</mml:mi> <mml:mi mathvariant="italic">xoffset</mml:mi>
<mml:mo>&lt;</mml:mo> <mml:mo>&lt;</mml:mo>
<mml:mrow> <mml:mn>0</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
<inlineequation><mml:math> <inlineequation><mml:math>
@ -246,13 +251,7 @@
</mml:mrow> </mml:mrow>
</mml:mfenced> </mml:mfenced>
<mml:mo>&gt;</mml:mo> <mml:mo>&gt;</mml:mo>
<mml:mfenced open="(" close=")"> <mml:mi mathvariant="italic">w</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
<inlineequation><mml:math> <inlineequation><mml:math>
@ -260,10 +259,7 @@
<mml:mrow> <mml:mrow>
<mml:mi mathvariant="italic">yoffset</mml:mi> <mml:mi mathvariant="italic">yoffset</mml:mi>
<mml:mo>&lt;</mml:mo> <mml:mo>&lt;</mml:mo>
<mml:mrow> <mml:mn>0</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
or or
@ -278,29 +274,15 @@
</mml:mrow> </mml:mrow>
</mml:mfenced> </mml:mfenced>
<mml:mo>&gt;</mml:mo> <mml:mo>&gt;</mml:mo>
<mml:mfenced open="(" close=")"> <mml:mn>0</mml:mn>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
where where
<inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_WIDTH</constant>, is the <constant>GL_TEXTURE_WIDTH</constant>,
<inlineequation><mml:math><mml:mi mathvariant="italic">h</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">h</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_HEIGHT</constant>, is the <constant>GL_TEXTURE_HEIGHT</constant> and
and
<inlineequation><mml:math><mml:mi mathvariant="italic">b</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_BORDER</constant>
of the texture image being modified. of the texture image being modified.
Note that
<inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation>
and
<inlineequation><mml:math><mml:mi mathvariant="italic">h</mml:mi></mml:math></inlineequation>
include twice the border width.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
@ -328,7 +310,8 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2012-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glCopyTexSubImage3D</refentrytitle> <refentrytitle>glCopyTexSubImage3D</refentrytitle>
@ -42,7 +42,7 @@
<listitem> <listitem>
<para> <para>
Specifies the target texture. Specifies the target texture.
Must be <constant>GL_TEXTURE_3D</constant> Must be <constant>GL_TEXTURE_3D</constant> or <constant>GL_TEXTURE_2D_ARRAY</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -111,7 +111,7 @@
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glCopyTexSubImage3D</function> replaces a rectangular portion of a three-dimensional <function>glCopyTexSubImage3D</function> replaces a rectangular portion of a three-dimensional
texture image with pixels from the current <constant>GL_READ_BUFFER</constant> (rather or two-dimensional array texture image with pixels from the current <constant>GL_READ_BUFFER</constant> (rather
than from main memory, as is the case for <citerefentry><refentrytitle>glTexSubImage3D</refentrytitle></citerefentry>). than from main memory, as is the case for <citerefentry><refentrytitle>glTexSubImage3D</refentrytitle></citerefentry>).
</para> </para>
<para> <para>
@ -210,7 +210,9 @@
</mml:math></inlineequation>, </mml:math></inlineequation>,
where where
<inlineequation><mml:math><mml:mi mathvariant="italic">max</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">max</mml:mi></mml:math></inlineequation>
is the returned value of <constant>GL_MAX_3D_TEXTURE_SIZE</constant>. is the returned value of <constant>GL_MAX_3D_TEXTURE_SIZE</constant> if <parameter>target</parameter>
is <constant>GL_TEXTURE_3D</constant> or the returned value of <constant>GL_MAX_ARRAY_TEXTURE_LAYERS</constant>
if <parameter>target</parameter> is <constant>GL_TEXTURE_2D_ARRAY</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <constant>GL_INVALID_VALUE</constant> is generated if
@ -219,10 +221,7 @@
<mml:mrow> <mml:mrow>
<mml:mi mathvariant="italic">xoffset</mml:mi> <mml:mi mathvariant="italic">xoffset</mml:mi>
<mml:mo>&lt;</mml:mo> <mml:mo>&lt;</mml:mo>
<mml:mrow> <mml:mn>0</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
<inlineequation><mml:math> <inlineequation><mml:math>
@ -236,13 +235,7 @@
</mml:mrow> </mml:mrow>
</mml:mfenced> </mml:mfenced>
<mml:mo>&gt;</mml:mo> <mml:mo>&gt;</mml:mo>
<mml:mfenced open="(" close=")"> <mml:mi mathvariant="italic">w</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
<inlineequation><mml:math> <inlineequation><mml:math>
@ -250,10 +243,7 @@
<mml:mrow> <mml:mrow>
<mml:mi mathvariant="italic">yoffset</mml:mi> <mml:mi mathvariant="italic">yoffset</mml:mi>
<mml:mo>&lt;</mml:mo> <mml:mo>&lt;</mml:mo>
<mml:mrow> <mml:mn>0</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
<inlineequation><mml:math> <inlineequation><mml:math>
@ -267,13 +257,7 @@
</mml:mrow> </mml:mrow>
</mml:mfenced> </mml:mfenced>
<mml:mo>&gt;</mml:mo> <mml:mo>&gt;</mml:mo>
<mml:mfenced open="(" close=")"> <mml:mi mathvariant="italic">h</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
<inlineequation><mml:math> <inlineequation><mml:math>
@ -281,10 +265,7 @@
<mml:mrow> <mml:mrow>
<mml:mi mathvariant="italic">zoffset</mml:mi> <mml:mi mathvariant="italic">zoffset</mml:mi>
<mml:mo>&lt;</mml:mo> <mml:mo>&lt;</mml:mo>
<mml:mrow> <mml:mn>0</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
or or
@ -299,13 +280,7 @@
</mml:mrow> </mml:mrow>
</mml:mfenced> </mml:mfenced>
<mml:mo>&gt;</mml:mo> <mml:mo>&gt;</mml:mo>
<mml:mfenced open="(" close=")"> <mml:mi mathvariant="italic">d</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow> </mml:mrow>
</mml:math></inlineequation>, </mml:math></inlineequation>,
where where
@ -314,10 +289,7 @@
<inlineequation><mml:math><mml:mi mathvariant="italic">h</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">h</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_HEIGHT</constant>, is the <constant>GL_TEXTURE_HEIGHT</constant>,
<inlineequation><mml:math><mml:mi mathvariant="italic">d</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">d</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_DEPTH</constant>, is the <constant>GL_TEXTURE_DEPTH</constant> and
and
<inlineequation><mml:math><mml:mi mathvariant="italic">b</mml:mi></mml:math></inlineequation>
is the <constant>GL_TEXTURE_BORDER</constant>
of the texture image being modified. of the texture image being modified.
Note that Note that
<inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation>, <inlineequation><mml:math><mml:mi mathvariant="italic">w</mml:mi></mml:math></inlineequation>,
@ -352,7 +324,9 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -24,7 +24,8 @@
<term><parameter>shaderType</parameter></term> <term><parameter>shaderType</parameter></term>
<listitem> <listitem>
<para>Specifies the type of shader to be created. <para>Specifies the type of shader to be created.
Must be one of <constant>GL_VERTEX_SHADER</constant>, Must be one of <constant>GL_COMPUTE_SHADER</constant>,
<constant>GL_VERTEX_SHADER</constant>,
<constant>GL_TESS_CONTROL_SHADER</constant>, <constant>GL_TESS_CONTROL_SHADER</constant>,
<constant>GL_TESS_EVALUATION_SHADER</constant>, <constant>GL_TESS_EVALUATION_SHADER</constant>,
<constant>GL_GEOMETRY_SHADER</constant>, <constant>GL_GEOMETRY_SHADER</constant>,
@ -40,6 +41,8 @@
strings that define a shader. <parameter>shaderType</parameter> strings that define a shader. <parameter>shaderType</parameter>
indicates the type of shader to be created. Five types of shader indicates the type of shader to be created. Five types of shader
are supported. A shader of type are supported. A shader of type
<constant>GL_COMPUTE_SHADER</constant> is a shader that is
intended to run on the programmable compute processor. A shader of type
<constant>GL_VERTEX_SHADER</constant> is a shader that is <constant>GL_VERTEX_SHADER</constant> is a shader that is
intended to run on the programmable vertex processor. intended to run on the programmable vertex processor.
A shader of type <constant>GL_TESS_CONTROL_SHADER</constant> is a shader that A shader of type <constant>GL_TESS_CONTROL_SHADER</constant> is a shader that
@ -54,7 +57,7 @@
<para>When created, a shader object's <para>When created, a shader object's
<constant>GL_SHADER_TYPE</constant> parameter is set to either <constant>GL_SHADER_TYPE</constant> parameter is set to either
<constant>GL_VERTEX_SHADER</constant>, <constant>GL_TESS_CONTROL_SHADER</constant>, <constant>GL_COMPUTE_SHADER</constant>, <constant>GL_VERTEX_SHADER</constant>, <constant>GL_TESS_CONTROL_SHADER</constant>,
<constant>GL_TESS_EVALUATION_SHADER</constant>, <constant>GL_GEOMETRY_SHADER</constant> <constant>GL_TESS_EVALUATION_SHADER</constant>, <constant>GL_GEOMETRY_SHADER</constant>
or <constant>GL_FRAGMENT_SHADER</constant>, depending on the value or <constant>GL_FRAGMENT_SHADER</constant>, depending on the value
of <parameter>shaderType</parameter>.</para> of <parameter>shaderType</parameter>.</para>
@ -70,6 +73,8 @@
<para>Applications are responsible for providing the <para>Applications are responsible for providing the
synchronization across API calls when objects are accessed from synchronization across API calls when objects are accessed from
different execution threads.</para> different execution threads.</para>
<para><constant>GL_COMPUTE_SHADER</constant> is available only if the GL version is 4.3 or higher.</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para>This function returns 0 if an error occurs creating the <para>This function returns 0 if an error occurs creating the

View file

@ -91,14 +91,18 @@
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>pipeline</parameter> is not <constant>GL_INVALID_ENUM</constant> is generated if if <parameter>type</parameter> is not
a name previously returned from a call to <citerefentry><refentrytitle>glGenProgramPipelines</refentrytitle></citerefentry> an accepted shader type.
or if such a name has been deleted by a call to
<citerefentry><refentrytitle>glDeleteProgramPipelines</refentrytitle></citerefentry>.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>program</parameter> refers <constant>GL_INVALID_VALUE</constant> is generated if <parameter>count</parameter> is
to a program object that has not been successfully linked. negative.
</para>
<para>
Other errors are generated if the supplied shader code fails to compile
and link, as described for the commands in the pseudocode sequence above,
but all such errors are generated without any side effects of executing those
commands.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
@ -111,7 +115,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2012 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -9,7 +9,7 @@
<holder>Khronos Group.</holder> <holder>Khronos Group.</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>c</refentrytitle> <refentrytitle>glDeleteProgramPipelines</refentrytitle>
<manvolnum>3G</manvolnum> <manvolnum>3G</manvolnum>
</refmeta> </refmeta>
<refnamediv> <refnamediv>

View file

@ -60,11 +60,6 @@
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>n</parameter> is negative. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>n</parameter> is negative.
</para> </para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if <function>glDeleteQueries</function> is executed
between the execution of <citerefentry><refentrytitle>glBeginQuery</refentrytitle></citerefentry> and the corresponding
execution of <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry>.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glDeleteFramebuffers"> <refentry id="glDeleteRenderbuffers">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>

View file

@ -21,7 +21,7 @@
<funcprototype> <funcprototype>
<funcdef>void <function>glDeleteSamplers</function></funcdef> <funcdef>void <function>glDeleteSamplers</function></funcdef>
<paramdef>GLsizei <parameter>n</parameter></paramdef> <paramdef>GLsizei <parameter>n</parameter></paramdef>
<paramdef>const GLuint * <parameter>ids</parameter></paramdef> <paramdef>const GLuint * <parameter>samplers</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -36,7 +36,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><parameter>ids</parameter></term> <term><parameter>samplers</parameter></term>
<listitem> <listitem>
<para> <para>
Specifies an array of sampler objects to be deleted. Specifies an array of sampler objects to be deleted.
@ -47,7 +47,7 @@
</refsect1> </refsect1>
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glDeleteSamplers</function> deletes <parameter>n</parameter> sampler objects named by the elements of the array <parameter>ids</parameter>. <function>glDeleteSamplers</function> deletes <parameter>n</parameter> sampler objects named by the elements of the array <parameter>samplers</parameter>.
After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as
though <citerefentry><refentrytitle>glBindSampler</refentrytitle></citerefentry> is called with unit set to the unit the sampler is bound to and though <citerefentry><refentrytitle>glBindSampler</refentrytitle></citerefentry> is called with unit set to the unit the sampler is bound to and
sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero.

View file

@ -54,6 +54,14 @@
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_DEPTH_WRITEMASK</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_DEPTH_WRITEMASK</constant>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
Even if the depth buffer exists and the depth mask is non-zero, the
depth buffer is not updated if the depth test is disabled. In order to
unconditionally write to the depth buffer, the depth test should be enabled
and set to <constant>GL_ALWAYS</constant> (see <citerefentry><refentrytitle>glDepthFunc</refentrytitle></citerefentry>).
</para>
</refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
<citerefentry><refentrytitle>glColorMask</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glColorMask</refentrytitle></citerefentry>,
@ -65,7 +73,10 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012
Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -20,13 +20,13 @@
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glDepthRange</function></funcdef> <funcdef>void <function>glDepthRange</function></funcdef>
<paramdef>GLclampd <parameter>nearVal</parameter></paramdef> <paramdef>GLdouble <parameter>nearVal</parameter></paramdef>
<paramdef>GLclampd <parameter>farVal</parameter></paramdef> <paramdef>GLdouble <parameter>farVal</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype> <funcprototype>
<funcdef>void <function>glDepthRangef</function></funcdef> <funcdef>void <function>glDepthRangef</function></funcdef>
<paramdef>GLclampf <parameter>nearVal</parameter></paramdef> <paramdef>GLfloat <parameter>nearVal</parameter></paramdef>
<paramdef>GLclampf <parameter>farVal</parameter></paramdef> <paramdef>GLfloat <parameter>farVal</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -102,6 +102,16 @@
</mml:math></inlineequation> </mml:math></inlineequation>
are acceptable. are acceptable.
</para> </para>
<para>
The type of the <parameter>nearVal</parameter> and
<parameter>farVal</parameter> parameters was changed from
GLclampf to GLfloat for <function>glDepthRangef</function>
and from GLclampd to GLdouble for
<function>glDepthRange</function>. This change is
transparent to user code and is described in detail on the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>
@ -112,7 +122,8 @@
<para> <para>
<citerefentry><refentrytitle>glDepthFunc</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glDepthFunc</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glPolygonOffset</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glPolygonOffset</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glViewport</refentrytitle></citerefentry> <citerefentry><refentrytitle>glViewport</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -22,7 +22,7 @@
<funcdef>void <function>glDepthRangeArrayv</function></funcdef> <funcdef>void <function>glDepthRangeArrayv</function></funcdef>
<paramdef>GLuint <parameter>first</parameter></paramdef> <paramdef>GLuint <parameter>first</parameter></paramdef>
<paramdef>GLsizei <parameter>count</parameter></paramdef> <paramdef>GLsizei <parameter>count</parameter></paramdef>
<paramdef>const GLclampd *<parameter>v</parameter></paramdef> <paramdef>const GLdouble *<parameter>v</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -117,6 +117,13 @@
</mml:math></inlineequation> </mml:math></inlineequation>
are acceptable. are acceptable.
</para> </para>
<para>
The type of the <parameter>v</parameter> parameter was
changed from GLclampd to GLdouble. This change is
transparent to user code and is described in detail on the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -137,9 +144,11 @@
<para> <para>
<citerefentry><refentrytitle>glDepthFunc</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glDepthFunc</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glDepthRange</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glDepthRange</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glDepthRangeIndexed</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glPolygonOffset</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glPolygonOffset</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glViewportArray</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glViewportArray</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glViewport</refentrytitle></citerefentry> <citerefentry><refentrytitle>glViewport</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glDepthRangeArray"> <refentry id="glDepthRangeIndexed">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
@ -19,10 +19,10 @@
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glDepthRangeArrayv</function></funcdef> <funcdef>void <function>glDepthRangeIndexed</function></funcdef>
<paramdef>GLuint <parameter>index</parameter></paramdef> <paramdef>GLuint <parameter>index</parameter></paramdef>
<paramdef>GLclampd <parameter>nearVal</parameter></paramdef> <paramdef>GLdouble <parameter>nearVal</parameter></paramdef>
<paramdef>GLclampd <parameter>farVal</parameter></paramdef> <paramdef>GLdouble <parameter>farVal</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -75,7 +75,7 @@
<function>glDepthRangeIndexed</function> specifies a linear mapping of the normalized depth coordinates <function>glDepthRangeIndexed</function> specifies a linear mapping of the normalized depth coordinates
in this range to window depth coordinates for a specified viewport. in this range to window depth coordinates for a specified viewport.
Thus, Thus,
the values accepted by <function>glDepthRangeArray</function> are both clamped to this range the values accepted by <function>glDepthRangeIndexed</function> are both clamped to this range
before they are accepted. before they are accepted.
</para> </para>
<para> <para>
@ -114,6 +114,14 @@
</mml:math></inlineequation> </mml:math></inlineequation>
are acceptable. are acceptable.
</para> </para>
<para>
The type of the <parameter>nearVal</parameter> and
<parameter>farVal</parameter> parameters was changed from
GLclampd to GLdouble. This change is transparent to user
code and is described in detail on the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -133,7 +141,8 @@
<citerefentry><refentrytitle>glDepthRangeArray</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glDepthRangeArray</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glPolygonOffset</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glPolygonOffset</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glViewportArray</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glViewportArray</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glViewport</refentrytitle></citerefentry> <citerefentry><refentrytitle>glViewport</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -9,7 +9,7 @@
<holder>Khronos Group.</holder> <holder>Khronos Group.</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glDrawTransformFeedback</refentrytitle> <refentrytitle>glDrawArraysIndirect</refentrytitle>
<manvolnum>3G</manvolnum> <manvolnum>3G</manvolnum>
</refmeta> </refmeta>
<refnamediv> <refnamediv>
@ -64,8 +64,8 @@
<para> <para>
<function>glDrawArraysIndirect</function> specifies multiple geometric primitives <function>glDrawArraysIndirect</function> specifies multiple geometric primitives
with very few subroutine calls. <function>glDrawArraysIndirect</function> behaves with very few subroutine calls. <function>glDrawArraysIndirect</function> behaves
similarly to <citerefentry><refentrytitle>glDrawArraysInstanced</refentrytitle></citerefentry>, similarly to <citerefentry><refentrytitle>glDrawArraysInstancedBaseInstance</refentrytitle></citerefentry>,
execpt that the parameters to <citerefentry><refentrytitle>glDrawArraysInstanced</refentrytitle></citerefentry> execept that the parameters to <citerefentry><refentrytitle>glDrawArraysInstancedBaseInstance</refentrytitle></citerefentry>
are stored in memory at the address given by <parameter>indirect</parameter>. are stored in memory at the address given by <parameter>indirect</parameter>.
</para> </para>
<para> <para>
@ -75,23 +75,22 @@
uint count; uint count;
uint primCount; uint primCount;
uint first; uint first;
uint reservedMustBeZero; uint baseInstance;
} DrawArraysIndirectCommand; } DrawArraysIndirectCommand;
const DrawArraysIndirectCommand *cmd = (const DrawArraysIndirectCommand *)indirect; const DrawArraysIndirectCommand *cmd = (const DrawArraysIndirectCommand *)indirect;
glDrawArraysInstanced(mode, cmd->first, cmd->count, cmd->primCount);]]></programlisting> glDrawArraysInstancedBaseInstance(mode, cmd->first, cmd->count, cmd->primCount, cmd->baseInstance);]]></programlisting>
</para> </para>
<para> <para>
If a buffer is bound to the <constant>GL_INDIRECT_BUFFER</constant> binding at the time If a buffer is bound to the <constant>GL_DRAW_INDIRECT_BUFFER</constant> binding at the time
of a call to <function>glDrawArraysIndirect</function>, <parameter>indirect</parameter> of a call to <function>glDrawArraysIndirect</function>, <parameter>indirect</parameter>
is interpreted as an offset, in basic machine units, into that buffer and the parameter is interpreted as an offset, in basic machine units, into that buffer and the parameter
data is read from the buffer rather than from client memory. data is read from the buffer rather than from client memory.
</para> </para>
<para> <para>
In contrast to <citerefentry><refentrytitle>glDrawArraysInstanced</refentrytitle></citerefentry>, In contrast to <citerefentry><refentrytitle>glDrawArraysInstancedBaseInstance</refentrytitle></citerefentry>,
the <code>first</code> member of the parameter structure is unsigned, and out-of-range indices the <code>first</code> member of the parameter structure is unsigned, and out-of-range indices
do not generate an error. The results of the operation are undefined if the <code>reservedMustBeZero</code> member do not generate an error.
of the parameter structure is non-zero. However, no error is generated in this case.
</para> </para>
<para> <para>
Vertex attributes that are modified by <function>glDrawArraysIndirect</function> have an Vertex attributes that are modified by <function>glDrawArraysIndirect</function> have an
@ -99,13 +98,21 @@
modified remain well defined. modified remain well defined.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The <parameter>baseInstance</parameter> member of the <parameter>DrawArraysIndirectCommand</parameter>
structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2,
this parameter is present but is reserved and should be set to zero. On earlier versions of the GL,
behavior is undefined if it is non-zero.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value. <constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an
enabled array or to the <constant>GL_INDIRECT_BUFFER</constant> binding and the buffer object's data store is currently mapped. enabled array or to the <constant>GL_DRAW_INDIRECT_BUFFER</constant> binding and the buffer object's data store is currently mapped.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a geometry shader is active and <parameter>mode</parameter> <constant>GL_INVALID_OPERATION</constant> is generated if a geometry shader is active and <parameter>mode</parameter>

View file

@ -138,7 +138,7 @@
<para><constant>GL_INVALID_ENUM</constant> is generated if the GL is bound <para><constant>GL_INVALID_ENUM</constant> is generated if the GL is bound
to a framebuffer object and one or more of the values in <parameter>bufs</parameter> to a framebuffer object and one or more of the values in <parameter>bufs</parameter>
is anything other than <constant>GL_NONE</constant> or one of the is anything other than <constant>GL_NONE</constant> or one of the
<constant>GL_COLOR_ATTACHMENTS<emphasis>n</emphasis></constant> tokens.</para> <constant>GL_COLOR_ATTACHMENT<emphasis>n</emphasis></constant> tokens.</para>
<para><constant>GL_INVALID_ENUM</constant> is generated if <para><constant>GL_INVALID_ENUM</constant> is generated if
<parameter>n</parameter> is less than 0.</para> <parameter>n</parameter> is less than 0.</para>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glDrawArraysIndirect"> <refentry id="glDrawElementsIndirect">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
@ -73,8 +73,8 @@
<para> <para>
<function>glDrawElementsIndirect</function> specifies multiple indexed geometric primitives <function>glDrawElementsIndirect</function> specifies multiple indexed geometric primitives
with very few subroutine calls. <function>glDrawElementsIndirect</function> behaves with very few subroutine calls. <function>glDrawElementsIndirect</function> behaves
similarly to <citerefentry><refentrytitle>glDrawElementsInstancedBaseVertex</refentrytitle></citerefentry>, similarly to <citerefentry><refentrytitle>glDrawElementsInstancedBaseVertexBaseInstance</refentrytitle></citerefentry>,
execpt that the parameters to <citerefentry><refentrytitle>glDrawElementsInstancedBaseVertex</refentrytitle></citerefentry> execpt that the parameters to <citerefentry><refentrytitle>glDrawElementsInstancedBaseVertexBaseInstance</refentrytitle></citerefentry>
are stored in memory at the address given by <parameter>indirect</parameter>. are stored in memory at the address given by <parameter>indirect</parameter>.
</para> </para>
<para> <para>
@ -85,7 +85,7 @@
uint primCount; uint primCount;
uint firstIndex; uint firstIndex;
uint baseVertex; uint baseVertex;
uint reservedMustBeZero; uint baseInstance;
} DrawElementsIndirectCommand;]]></programlisting> } DrawElementsIndirectCommand;]]></programlisting>
<para> <para>
<function>glDrawElementsIndirect</function> is equivalent to: <function>glDrawElementsIndirect</function> is equivalent to:
@ -93,16 +93,17 @@
<programlisting><![CDATA[ void glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect) <programlisting><![CDATA[ void glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect)
{ {
const DrawElementsIndirectCommand *cmd = (const DrawElementsIndirectCommand *)indirect; const DrawElementsIndirectCommand *cmd = (const DrawElementsIndirectCommand *)indirect;
glDrawElementsInstancedBaseVertex(mode, glDrawElementsInstancedBaseVertexBaseInstance(mode,
cmd->count, cmd->count,
type, type,
cmd->firstIndex + size-of-type, cmd->firstIndex + size-of-type,
cmd->primCount, cmd->primCount,
cmd->baseVertex); cmd->baseVertex,
cmd->baseInstance);
}]]></programlisting> }]]></programlisting>
</para> </para>
<para> <para>
If a buffer is bound to the <constant>GL_INDIRECT_BUFFER</constant> binding at the time If a buffer is bound to the <constant>GL_DRAW_INDIRECT_BUFFER</constant> binding at the time
of a call to <function>glDrawElementsIndirect</function>, <parameter>indirect</parameter> of a call to <function>glDrawElementsIndirect</function>, <parameter>indirect</parameter>
is interpreted as an offset, in basic machine units, into that buffer and the parameter is interpreted as an offset, in basic machine units, into that buffer and the parameter
data is read from the buffer rather than from client memory. data is read from the buffer rather than from client memory.
@ -121,6 +122,14 @@
modified remain well defined. modified remain well defined.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The <parameter>baseInstance</parameter> member of the <parameter>DrawElementsIndirectCommand</parameter>
structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2,
this parameter is present but is reserved and should be set to zero. On earlier versions of the GL,
behavior is undefined if it is non-zero.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value. <constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value.
@ -131,7 +140,7 @@
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an
enabled array or to the <constant>GL_INDIRECT_BUFFER</constant> binding and the buffer object's data store is currently mapped. enabled array or to the <constant>GL_DRAW_INDIRECT_BUFFER</constant> binding and the buffer object's data store is currently mapped.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a geometry shader is active and <parameter>mode</parameter> <constant>GL_INVALID_OPERATION</constant> is generated if a geometry shader is active and <parameter>mode</parameter>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glDrawElementsBaseVertex"> <refentry id="glDrawElementsInstancedBaseVertex">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>

View file

@ -80,7 +80,7 @@
by <parameter>id</parameter>. by <parameter>id</parameter>.
</para> </para>
<para> <para>
Calling <citerefentry>glDrawTransformFeedback</citerefentry> is equivalent to calling <function>glDrawTransformFeedbackStream</function> Calling <citerefentry><refentrytitle>glDrawTransformFeedback</refentrytitle></citerefentry> is equivalent to calling <function>glDrawTransformFeedbackStream</function>
with <parameter>stream</parameter> set to zero. with <parameter>stream</parameter> set to zero.
</para> </para>
</refsect1> </refsect1>

View file

@ -128,7 +128,7 @@
which can assume one of the following values: which can assume one of the following values:
</para> </para>
<para> <para>
Some of the GL's capabilities are indicated. <function>glEnablei</function> and <function>glDisablei</function> enable and disable Some of the GL's capabilities are indexed. <function>glEnablei</function> and <function>glDisablei</function> enable and disable
indexed capabilities. indexed capabilities.
</para> </para>
<variablelist> <variablelist>
@ -178,6 +178,33 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_DEBUG_OUTPUT</constant></term>
<listitem>
<para>
</para>
<para>
If enabled, debug messages are produced by a debug context. When disabled,
the debug message log is silenced. Note that in a non-debug context, very
few, if any messages might be produced, even when <constant>GL_DEBUG_OUTPUT</constant>
is enabled.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_DEBUG_OUTPUT_SYNCHRONOUS</constant></term>
<listitem>
<para>
</para>
<para>
If enabled, debug messages are produced synchronously by a debug context. If disabled,
debug messages may be produced asynchronously. In particular, they may be delayed relative
to the execution of GL commands, and the debug callback function may be called from
a thread other than that in which the commands are executed.
See <citerefentry><refentrytitle>glDebugMessageCallback</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_DEPTH_CLAMP</constant></term> <term><constant>GL_DEPTH_CLAMP</constant></term>
<listitem> <listitem>
@ -223,6 +250,21 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_FRAMEBUFFER_SRGB</constant> </term>
<listitem>
<para>
</para>
<para>
If enabled
and the value of <constant>GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING</constant> for the
framebuffer attachment corresponding to the destination buffer is <constant>GL_SRGB</constant>,
the R, G, and B destination color values (after conversion from fixed-point to floating-point)
are considered to be encoded for the sRGB color space and hence are linearized prior to
their use in blending.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_LINE_SMOOTH</constant></term> <term><constant>GL_LINE_SMOOTH</constant></term>
<listitem> <listitem>
@ -313,6 +355,38 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_PRIMITIVE_RESTART_FIXED_INDEX</constant></term>
<listitem>
<para>
</para>
<para>
Enables primitive restarting with a fixed index. If enabled, any one of the
draw commands which transfers a set of generic attribute array elements to the GL will
restart the primitive when the index of the vertex is equal to the fixed primitive
index for the specified index type. The fixed index is equal to
<inlineequation><mml:math><mml:msup><mml:mn>2</mml:mn><mml:mi>n</mml:mi></mml:msup><mml:mo>&minus;</mml:mo><mml:mn>1</mml:mn></mml:math></inlineequation>
where <emphasis>n</emphasis> is equal to 8 for <constant>GL_UNSIGNED_BYTE</constant>,
16 for <constant>GL_UNSIGNED_SHORT</constant> and 32 for <constant>GL_UNSIGNED_INT</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_RASTERIZER_DISCARD</constant></term>
<listitem>
<para>
</para>
<para>
If enabled,
primitives are discarded after the optional transform feedback stage,
but before rasterization. Furthermore, when enabled, <citerefentry><refentrytitle>glClear</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glClearBufferData</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glClearBufferSubData</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glClearTexImage</refentrytitle></citerefentry>, and
<citerefentry><refentrytitle>glClearTexSubImage</refentrytitle></citerefentry> are ignored.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_SAMPLE_ALPHA_TO_COVERAGE</constant></term> <term><constant>GL_SAMPLE_ALPHA_TO_COVERAGE</constant></term>
<listitem> <listitem>
@ -351,6 +425,31 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_SAMPLE_SHADING</constant></term>
<listitem>
<para>
</para>
<para>
If enabled, the active fragment shader is run once for each covered sample, or at
fraction of this rate as determined by the current value of <constant>GL_MIN_SAMPLE_SHADING_VALUE</constant>.
See <citerefentry><refentrytitle>glMinSampleShading</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_SAMPLE_MASK</constant></term>
<listitem>
<para>
</para>
<para>
If enabled, the sample coverage mask generated for a fragment during rasterization
will be ANDed with the value of <constant>GL_SAMPLE_MASK_VALUE</constant> before
shading occurs.
See <citerefentry><refentrytitle>glSampleMaski</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_SCISSOR_TEST</constant></term> <term><constant>GL_SCISSOR_TEST</constant></term>
<listitem> <listitem>
@ -381,7 +480,10 @@
<para> <para>
</para> </para>
<para> <para>
If enabled, modifies the way sampling is performed on cube map textures. See the spec for more information. If enabled, cubemap textures are sampled such that when linearly sampling from the border
between two adjacent faces, texels from both faces are used to generate the final sample
value. When disabled, texels from only a single face are used to construct the final
sample value.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -416,6 +518,12 @@
<para> <para>
<constant>GL_TEXTURE_CUBE_MAP_SEAMLESS</constant> is available only if the GL version is 3.2 or greater. <constant>GL_TEXTURE_CUBE_MAP_SEAMLESS</constant> is available only if the GL version is 3.2 or greater.
</para> </para>
<para>
<constant>GL_PRIMITIVE_RESTART_FIXED_INDEX</constant> is available only if the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_DEBUG_OUTPUT</constant> and <constant>GL_DEBUG_OUTPUT_SYNCHRONOUS</constant> are available only if the GL version is 4.3 or greater.
</para>
<para> <para>
Any token accepted by <function>glEnable</function> or <function>glDisable</function> is also accepted by Any token accepted by <function>glEnable</function> or <function>glDisable</function> is also accepted by
<function>glEnablei</function> and <function>glDisablei</function>, but if the capability is not indexed, <function>glEnablei</function> and <function>glDisablei</function>, but if the capability is not indexed,
@ -460,7 +568,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
This document is licensed under the SGI This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.

View file

@ -19,7 +19,7 @@
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>GLsync <function>glFlushMappedBufferRange</function></funcdef> <funcdef>void <function>glFlushMappedBufferRange</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLintptr <parameter>offset</parameter></paramdef> <paramdef>GLintptr <parameter>offset</parameter></paramdef>
<paramdef>GLsizeiptr <parameter>length</parameter></paramdef> <paramdef>GLsizeiptr <parameter>length</parameter></paramdef>
@ -34,8 +34,10 @@
<listitem> <listitem>
<para> <para>
Specifies the target of the flush operation. <parameter>target</parameter> must be <constant>GL_ARRAY_BUFFER</constant>, Specifies the target of the flush operation. <parameter>target</parameter> must be <constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_DRAW_INDIRECT_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_UNIFORM_BUFFER</constant>.
</para> </para>
</listitem> </listitem>
@ -61,12 +63,21 @@
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glFlushMappedBufferRange</function> indicates that modifications have been made to a range of a mapped buffer. <function>glFlushMappedBufferRange</function> indicates that modifications have been made to a range of a mapped buffer.
The buffer must previously have been mapped with the <constant>GL_MAP_FLUSH_EXPLICIT</constant> flag. <parameter>offset</parameter> The buffer must previously have been mapped with the <constant>GL_MAP_FLUSH_EXPLICIT_BIT</constant> flag. <parameter>offset</parameter>
and <parameter>length</parameter> indicate the modified subrange of the mapping, in basic units. The specified subrange to flush and <parameter>length</parameter> indicate the modified subrange of the mapping, in basic units. The specified subrange to flush
is relative to the start of the currently mapped range of the buffer. <function>glFlushMappedBufferRange</function> may be called is relative to the start of the currently mapped range of the buffer. <function>glFlushMappedBufferRange</function> may be called
multiple times to indicate distinct subranges of the mapping which require flushing. multiple times to indicate distinct subranges of the mapping which require flushing.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version
is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>offset</parameter> or <parameter>length</parameter> <constant>GL_INVALID_VALUE</constant> is generated if <parameter>offset</parameter> or <parameter>length</parameter>
@ -77,7 +88,7 @@
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if the buffer bound to <parameter>target</parameter> is not <constant>GL_INVALID_OPERATION</constant> is generated if the buffer bound to <parameter>target</parameter> is not
mapped, or is mapped without the <constant>GL_MAP_FLUSH_EXPLICIT</constant> flag. mapped, or is mapped without the <constant>GL_MAP_FLUSH_EXPLICIT_BIT</constant> flag.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>

View file

@ -19,7 +19,7 @@
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>GLsync <function>glFramebufferRenderbuffer</function></funcdef> <funcdef>void <function>glFramebufferRenderbuffer</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>attachment</parameter></paramdef> <paramdef>GLenum <parameter>attachment</parameter></paramdef>
<paramdef>GLenum <parameter>renderbuffertarget</parameter></paramdef> <paramdef>GLenum <parameter>renderbuffertarget</parameter></paramdef>

View file

@ -29,6 +29,7 @@
<funcdef>void <function>glFramebufferTexture1D</function></funcdef> <funcdef>void <function>glFramebufferTexture1D</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>attachment</parameter></paramdef> <paramdef>GLenum <parameter>attachment</parameter></paramdef>
<paramdef>GLenum <parameter>textarget</parameter></paramdef>
<paramdef>GLuint <parameter>texture</parameter></paramdef> <paramdef>GLuint <parameter>texture</parameter></paramdef>
<paramdef>GLint <parameter>level</parameter></paramdef> <paramdef>GLint <parameter>level</parameter></paramdef>
</funcprototype> </funcprototype>
@ -36,6 +37,7 @@
<funcdef>void <function>glFramebufferTexture2D</function></funcdef> <funcdef>void <function>glFramebufferTexture2D</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>attachment</parameter></paramdef> <paramdef>GLenum <parameter>attachment</parameter></paramdef>
<paramdef>GLenum <parameter>textarget</parameter></paramdef>
<paramdef>GLuint <parameter>texture</parameter></paramdef> <paramdef>GLuint <parameter>texture</parameter></paramdef>
<paramdef>GLint <parameter>level</parameter></paramdef> <paramdef>GLint <parameter>level</parameter></paramdef>
</funcprototype> </funcprototype>
@ -43,6 +45,7 @@
<funcdef>void <function>glFramebufferTexture3D</function></funcdef> <funcdef>void <function>glFramebufferTexture3D</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>attachment</parameter></paramdef> <paramdef>GLenum <parameter>attachment</parameter></paramdef>
<paramdef>GLenum <parameter>textarget</parameter></paramdef>
<paramdef>GLuint <parameter>texture</parameter></paramdef> <paramdef>GLuint <parameter>texture</parameter></paramdef>
<paramdef>GLint <parameter>level</parameter></paramdef> <paramdef>GLint <parameter>level</parameter></paramdef>
<paramdef>GLint <parameter>layer</parameter></paramdef> <paramdef>GLint <parameter>layer</parameter></paramdef>
@ -68,7 +71,17 @@
<para> <para>
Specifies the attachment point of the framebuffer. <parameter>attachment</parameter> must be Specifies the attachment point of the framebuffer. <parameter>attachment</parameter> must be
<constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>, <constant>GL_DEPTH_ATTACHMENT</constant>, <constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>, <constant>GL_DEPTH_ATTACHMENT</constant>,
<constant>GL_STENCIL_ATTACHMENT</constant> or <constant>GL_DEPTH_STENCIL_ATTACHMMENT</constant>. <constant>GL_STENCIL_ATTACHMENT</constant> or <constant>GL_DEPTH_STENCIL_ATTACHMENT</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>textarget</parameter></term>
<listitem>
<para>
For <function>glFramebufferTexture1D</function>, <function>glFramebufferTexture2D</function> and
<function>glFramebufferTexture3D</function>, specifies what type of texture is expected
in the <parameter>texture</parameter> parameter, or for cube map textures, which face is to be attached.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -101,13 +114,22 @@
<para> <para>
<parameter>attachment</parameter> specifies the logical attachment of the framebuffer and must be <parameter>attachment</parameter> specifies the logical attachment of the framebuffer and must be
<constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>, <constant>GL_DEPTH_ATTACHMENT</constant>, <constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>, <constant>GL_DEPTH_ATTACHMENT</constant>,
<constant>GL_STENCIL_ATTACHMENT</constant> or <constant>GL_DEPTH_STENCIL_ATTACHMMENT</constant>. <constant>GL_STENCIL_ATTACHMENT</constant> or <constant>GL_DEPTH_STENCIL_ATTACHMENT</constant>.
<emphasis>i</emphasis> in <constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant> may range from zero to <emphasis>i</emphasis> in <constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant> may range from zero to
the value of <constant>GL_MAX_COLOR_ATTACHMENTS</constant> - 1. Attaching a level of a texture to the value of <constant>GL_MAX_COLOR_ATTACHMENTS</constant> - 1. Attaching a level of a texture to
<constant>GL_DEPTH_STENCIL_ATTACHMENT</constant> is equivalent to attaching that level to both the <constant>GL_DEPTH_STENCIL_ATTACHMENT</constant> is equivalent to attaching that level to both the
<constant>GL_DEPTH_ATTACHMENT</constant> <emphasis>and</emphasis> the <constant>GL_STENCIL_ATTACHMENT</constant> <constant>GL_DEPTH_ATTACHMENT</constant> <emphasis>and</emphasis> the <constant>GL_STENCIL_ATTACHMENT</constant>
attachment points simultaneously. attachment points simultaneously.
</para> </para>
<para>
<parameter>textarget</parameter> specifies what type of texture is named by <parameter>texture</parameter>, and for
cube map textures, specifies the face that is to be attached. If <parameter>texture</parameter> is not zero, it
must be the name of an existing texture with type <parameter>textarget</parameter>, unless it is a cube map
texture, in which case <parameter>textarget</parameter> must be <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_X</constant>
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_X</constant>, <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Y</constant>,
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</constant>, <constant>GL_TEXTURE_CUBE_MAP_POSITIVE_Z</constant>, or
<constant>GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</constant>.
</para>
<para> <para>
If <parameter>texture</parameter> is non-zero, the specified <parameter>level</parameter> of the texture object named If <parameter>texture</parameter> is non-zero, the specified <parameter>level</parameter> of the texture object named
<parameter>texture</parameter> is attached to the framebfufer attachment point named by <parameter>attachment</parameter>. <parameter>texture</parameter> is attached to the framebfufer attachment point named by <parameter>attachment</parameter>.
@ -158,6 +180,10 @@
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if zero is bound to <parameter>target</parameter>. <constant>GL_INVALID_OPERATION</constant> is generated if zero is bound to <parameter>target</parameter>.
</para> </para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>textarget</parameter> and <parameter>texture</parameter>
are not compatible.
</para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>

View file

@ -47,7 +47,7 @@
<para> <para>
Specifies the attachment point of the framebuffer. <parameter>attachment</parameter> must be Specifies the attachment point of the framebuffer. <parameter>attachment</parameter> must be
<constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>, <constant>GL_DEPTH_ATTACHMENT</constant>, <constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>, <constant>GL_DEPTH_ATTACHMENT</constant>,
<constant>GL_STENCIL_ATTACHMENT</constant> or <constant>GL_DEPTH_STENCIL_ATTACHMMENT</constant>. <constant>GL_STENCIL_ATTACHMENT</constant> or <constant>GL_DEPTH_STENCIL_ATTACHMENT</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>

View file

@ -66,11 +66,6 @@
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>n</parameter> is negative. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>n</parameter> is negative.
</para> </para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if <function>glGenQueries</function> is executed
between the execution of <citerefentry><refentrytitle>glBeginQuery</refentrytitle></citerefentry> and the corresponding
execution of <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry>.
</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glGenRenderbuffers"> <refentry id="glGenSamplers">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>

View file

@ -103,6 +103,26 @@
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<refsynopsisdiv><title>C Specification</title>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetFloati_v</function></funcdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLuint <parameter>index</parameter></paramdef>
<paramdef>GLfloat * <parameter>data</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsynopsisdiv><title>C Specification</title>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetDoublei_v</function></funcdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLuint <parameter>index</parameter></paramdef>
<paramdef>GLdouble * <parameter>data</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
@ -379,6 +399,176 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of active shader storage blocks that may be accessed by a compute shader.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum total number of active shader storage blocks that may be accessed by all active shaders.
</para>
</listitem>
</varlistentry>
<!-- // ARB_compute_shader -->
<varlistentry>
<term><constant>GL_MAX_COMPUTE_UNIFORM_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of uniform blocks per compute shader. The value must be at least 14.
See <citerefentry><refentrytitle>glUniformBlockBinding</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value, the maximum supported texture image units that
can be used to access texture maps from the compute shader. The value may be at least 16.
See <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_UNIFORM_COMPONENTS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of individual floating-point, integer, or boolean values that can be held
in uniform variable storage for a compute shader. The value must be at least 1024.
See <citerefentry><refentrytitle>glUniform</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to compute shaders.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counter buffers that may be accessed by a compute shader.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the number of words for compute shader uniform variables in all uniform
blocks (including default). The value must be at least 1.
See <citerefentry><refentrytitle>glUniform</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the number of invocations in a single local work group
(i.e., the product of the three dimensions) that may
be dispatched to a compute shader.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_WORK_GROUP_COUNT</constant></term>
<listitem>
<para>
</para>
<para>
Accepted by the indexed versions of <function>glGet</function>.
<parameter>params</parameter> the maximum number of work
groups that may be dispatched to a compute shader. Indices
0, 1, and 2 correspond to the X, Y and Z dimensions, respectively.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_COMPUTE_WORK_GROUP_SIZE</constant></term>
<listitem>
<para>
</para>
<para>
Accepted by the indexed versions of <function>glGet</function>.
<parameter>params</parameter> the maximum size of a work
groups that may be used during compilation of a compute shader. Indices
0, 1, and 2 correspond to the X, Y and Z dimensions, respectively.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_DISPATCH_INDIRECT_BUFFER_BINDING</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the name of the buffer object
currently bound to the target <constant>GL_DISPATCH_INDIRECT_BUFFER</constant>. If no buffer object
is bound to this target, 0 is returned. The initial value is 0.
See <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<!-- // ARB_compute_shader -->
<!-- ARB_debug_group -->
<varlistentry>
<term><constant>GL_MAX_DEBUG_GROUP_STACK_DEPTH</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum depth of the
debug message group stack.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_DEBUG_GROUP_STACK_DEPTH</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the current depth of the
debug message group stack.
</para>
</listitem>
</varlistentry>
<!-- // ARB_debug_group -->
<varlistentry> <varlistentry>
<term><constant>GL_CONTEXT_FLAGS</constant></term> <term><constant>GL_CONTEXT_FLAGS</constant></term>
<listitem> <listitem>
@ -548,7 +738,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_DRAW_FRAMEBFUFER_BINDING</constant></term> <term><constant>GL_DRAW_FRAMEBUFFER_BINDING</constant></term>
<listitem> <listitem>
<para> <para>
</para> </para>
@ -561,7 +751,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_READ_FRAMEBFUFER_BINDING</constant></term> <term><constant>GL_READ_FRAMEBUFFER_BINDING</constant></term>
<listitem> <listitem>
<para> <para>
</para> </para>
@ -681,31 +871,6 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_LINE_WIDTH_GRANULARITY</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the width difference between adjacent supported widths for antialiased lines.
See <citerefentry><refentrytitle>glLineWidth</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_LINE_WIDTH_RANGE</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns two values:
the smallest and largest supported widths for antialiased
lines.
See <citerefentry><refentrytitle>glLineWidth</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_LOGIC_OP_MODE</constant></term> <term><constant>GL_LOGIC_OP_MODE</constant></term>
<listitem> <listitem>
@ -778,6 +943,18 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<!-- ARB_shader_atomic_counters -->
<varlistentry>
<term><constant>GL_MAX_COMBINED_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to all active shaders.
</para>
</listitem>
</varlistentry>
<!-- // ARB_shader_atomic_counters -->
<varlistentry> <varlistentry>
<term><constant>GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS</constant></term> <term><constant>GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS</constant></term>
<listitem> <listitem>
@ -826,7 +1003,7 @@
</para> </para>
<para> <para>
<parameter>params</parameter> returns one value, <parameter>params</parameter> returns one value,
the maximum number of uniform blocks per program. The value must be at least 36. the maximum number of uniform blocks per program. The value must be at least 70.
See <citerefentry><refentrytitle>glUniformBlockBinding</refentrytitle></citerefentry>. See <citerefentry><refentrytitle>glUniformBlockBinding</refentrytitle></citerefentry>.
</para> </para>
</listitem> </listitem>
@ -884,7 +1061,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_MAX_DUALSOURCE_DRAW_BUFFERS</constant></term> <term><constant>GL_MAX_DUAL_SOURCE_DRAW_BUFFERS</constant></term>
<listitem> <listitem>
<para> <para>
</para> </para>
@ -920,6 +1097,29 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<!-- ARB_shader_atomic_counters -->
<varlistentry>
<term><constant>GL_MAX_FRAGMENT_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to fragment shaders.
</para>
</listitem>
</varlistentry>
<!-- // ARB_shader_atomic_counters -->
<varlistentry>
<term><constant>GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of active shader storage blocks that may be accessed by a fragment shader.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_MAX_FRAGMENT_INPUT_COMPONENTS</constant></term> <term><constant>GL_MAX_FRAGMENT_INPUT_COMPONENTS</constant></term>
<listitem> <listitem>
@ -971,6 +1171,77 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_MAX_FRAMEBUFFER_WIDTH</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum width for a framebuffer that has no attachments, which must be at least 16384.
See <citerefentry><refentrytitle>glFramebufferParameter</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_FRAMEBUFFER_HEIGHT</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum height for a framebuffer that has no attachments, which must be at least 16384.
See <citerefentry><refentrytitle>glFramebufferParameter</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_FRAMEBUFFER_LAYERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of layers for a framebuffer that has no attachments, which must be at least 2048.
See <citerefentry><refentrytitle>glFramebufferParameter</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_FRAMEBUFFER_SAMPLES</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum samples in a framebuffer that has no attachments, which must be at least 4.
See <citerefentry><refentrytitle>glFramebufferParameter</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<!-- ARB_shader_atomic_counter -->
<varlistentry>
<term><constant>GL_MAX_GEOMETRY_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to geometry shaders.
</para>
</listitem>
</varlistentry>
<!-- // ARB_shader_atomic_counter -->
<varlistentry>
<term><constant>GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of active shader storage blocks that may be accessed by a geometry shader.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_MAX_GEOMETRY_INPUT_COMPONENTS</constant></term> <term><constant>GL_MAX_GEOMETRY_INPUT_COMPONENTS</constant></term>
<listitem> <listitem>
@ -1041,6 +1312,32 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the minimum alignment in basic machine units of pointers returned from<citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>
and <citerefentry><refentrytitle>glMapBufferRange</refentrytitle></citerefentry>. This value must be a power of two and must
be at least 64.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_LABEL_LENGTH</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum length of a label that may be assigned to an object.
See <citerefentry><refentrytitle>glObjectLabel</refentrytitle></citerefentry> and
<citerefentry><refentrytitle>glObjectPtrLabel</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_MAX_PROGRAM_TEXEL_OFFSET</constant></term> <term><constant>GL_MAX_PROGRAM_TEXEL_OFFSET</constant></term>
<listitem> <listitem>
@ -1072,7 +1369,7 @@
<parameter>params</parameter> returns one value. <parameter>params</parameter> returns one value.
The value gives a rough estimate of the largest rectangular texture that The value gives a rough estimate of the largest rectangular texture that
the GL can handle. The value must be at least 1024. the GL can handle. The value must be at least 1024.
Use <constant>GL_PROXY_RECTANGLE_TEXTURE</constant> Use <constant>GL_PROXY_TEXTURE_RECTANGLE</constant>
to determine if a texture is too large. to determine if a texture is too large.
See <citerefentry><refentrytitle>glTexImage2D</refentrytitle></citerefentry>. See <citerefentry><refentrytitle>glTexImage2D</refentrytitle></citerefentry>.
</para> </para>
@ -1112,6 +1409,61 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of shader storage buffer binding points on the context, which must be at least 8.
</para>
</listitem>
</varlistentry>
<!-- ARB_shader_atomic_counters -->
<varlistentry>
<term><constant>GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to tessellation control shaders.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to tessellation evaluation shaders.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of active shader storage blocks that may be accessed by a tessellation control shader.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of active shader storage blocks that may be accessed by a tessellation evaluation shader.
</para>
</listitem>
</varlistentry>
<!-- // ARB_shader_atomic_counters -->
<varlistentry> <varlistentry>
<term><constant>GL_MAX_TEXTURE_BUFFER_SIZE</constant></term> <term><constant>GL_MAX_TEXTURE_BUFFER_SIZE</constant></term>
<listitem> <listitem>
@ -1186,6 +1538,17 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_MAX_UNIFORM_LOCATIONS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of explicitly assignable uniform locations, which must be at least 1024.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_MAX_VARYING_COMPONENTS</constant></term> <term><constant>GL_MAX_VARYING_COMPONENTS</constant></term>
<listitem> <listitem>
@ -1223,6 +1586,18 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<!-- ARB_shader_atomic_counters -->
<varlistentry>
<term><constant>GL_MAX_VERTEX_ATOMIC_COUNTERS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum number of atomic counters available to vertex shaders.
</para>
</listitem>
</varlistentry>
<!-- /ARB_shader_atomic_counters -->
<varlistentry> <varlistentry>
<term><constant>GL_MAX_VERTEX_ATTRIBS</constant></term> <term><constant>GL_MAX_VERTEX_ATTRIBS</constant></term>
<listitem> <listitem>
@ -1236,6 +1611,17 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns one value,
the maximum number of active shader storage blocks that may be accessed by a vertex shader.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS</constant></term> <term><constant>GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS</constant></term>
<listitem> <listitem>
@ -1561,6 +1947,21 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_PROGRAM_POINT_SIZE</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single boolean value indicating whether vertex
program point size mode is enabled. If enabled, then the
point size is taken from the shader built-in <code>gl_PointSize</code>. If disabled,
then the point size is taken from the point state as specified
by <citerefentry><refentrytitle>glPointSize</refentrytitle></citerefentry>.
The initial value is <constant>GL_FALSE</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_PROVOKING_VERTEX</constant></term> <term><constant>GL_PROVOKING_VERTEX</constant></term>
<listitem> <listitem>
@ -1835,6 +2236,62 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_SHADER_STORAGE_BUFFER_BINDING</constant></term>
<listitem>
<para>
</para>
<para>
When used with non-indexed variants of <function>glGet</function> (such as <function>glGetIntegerv</function>),
<parameter>params</parameter> returns a single value, the name of the buffer object
currently bound to the target <constant>GL_SHADER_STORAGE_BUFFER</constant>. If no buffer object
is bound to this target, 0 is returned.
When used with indexed variants of <function>glGet</function> (such as <function>glGetIntegeri_v</function>),
<parameter>params</parameter> returns a single value, the name of the buffer object
bound to the indexed shader storage buffer binding points. The initial value is 0 for all targets.
See <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glBindBufferBase</refentrytitle></citerefentry>, and
<citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the minimum required alignment
for shader storage buffer sizes and offset. The initial value is 1.
See <citerefentry><refentrytitle>glShaderStorateBlockBinding</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_SHADER_STORAGE_BUFFER_START</constant></term>
<listitem>
<para>
</para>
<para>
When used with indexed variants of <function>glGet</function> (such as <function>glGetInteger64i_v</function>),
<parameter>params</parameter> returns a single value, the start offset of the binding range for each
indexed shader storage buffer binding. The initial value is 0 for all bindings.
See <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_SHADER_STORAGE_BUFFER_SIZE</constant></term>
<listitem>
<para>
</para>
<para>
When used with indexed variants of <function>glGet</function> (such as <function>glGetInteger64i_v</function>),
<parameter>params</parameter> returns a single value, the size of the binding range for each
indexed shader storage buffer binding. The initial value is 0 for all bindings.
See <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_SMOOTH_LINE_WIDTH_RANGE</constant></term> <term><constant>GL_SMOOTH_LINE_WIDTH_RANGE</constant></term>
<listitem> <listitem>
@ -2244,17 +2701,29 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_TEXTURE_BUFFER_BINDING</constant></term> <term><constant>GL_TEXTURE_BINDING_BUFFER</constant></term>
<listitem> <listitem>
<para> <para>
</para> </para>
<para> <para>
<parameter>params</parameter> returns a single value, the name of the texture buffer object <parameter>params</parameter> returns a single value, the name of the buffer object
currently bound. The initial value is 0. currently bound to the <constant>GL_TEXTURE_BUFFER</constant> buffer binding point. The initial value is 0.
See <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>. See <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the minimum required alignment
for texture buffer sizes and offset. The initial value is 1.
See <citerefentry><refentrytitle>glUniformBlockBinding</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_TIMESTAMP</constant></term> <term><constant>GL_TIMESTAMP</constant></term>
<listitem> <listitem>
@ -2472,17 +2941,69 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_VERTEX_PROGRAM_POINT_SIZE</constant></term> <term><constant>GL_VERTEX_ARRAY_BINDING</constant></term>
<listitem> <listitem>
<para> <para>
</para> </para>
<para> <para>
<parameter>params</parameter> returns a single boolean value indicating whether vertex <parameter>params</parameter> returns a single value, the name of the vertex array object
program point size mode is enabled. If enabled, and a vertex shader is active, then the currently bound to the context. If no vertex array object
point size is taken from the shader built-in <code>gl_PointSize</code>. If disabled, is bound to the context, 0 is returned. The initial value is 0.
and a vertex shader is active, then the point size is taken from the point state as specified See <citerefentry><refentrytitle>glBindVertexArray</refentrytitle></citerefentry>.
by <citerefentry><refentrytitle>glPointSize</refentrytitle></citerefentry>. </para>
The initial value is <constant>GL_FALSE</constant>. </listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_VERTEX_BINDING_DIVISOR</constant></term>
<listitem>
<para>
</para>
<para>
Accepted by the indexed forms. <parameter>params</parameter> returns a single integer value representing the instance step
divisor of the first element in the bound buffer's data store for vertex attribute bound to <parameter>index</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_VERTEX_BINDING_OFFSET</constant></term>
<listitem>
<para>
</para>
<para>
Accepted by the indexed forms. <parameter>params</parameter> returns a single integer value representing the byte offset
of the first element in the bound buffer's data store for vertex attribute bound to <parameter>index</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_VERTEX_BINDING_STRIDE</constant></term>
<listitem>
<para>
</para>
<para>
Accepted by the indexed forms. <parameter>params</parameter> returns a single integer value representing the byte offset
between the start of each element in the bound buffer's data store for vertex attribute bound to <parameter>index</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single integer value containing the maximum offset that may be added to a vertex binding
offset.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_MAX_VERTEX_ATTRIB_BINDINGS</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single integer value containing the maximum number of vertex buffers that may be bound.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -2568,7 +3089,18 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
</variablelist> <varlistentry>
<term><constant>GL_MAX_ELEMENT_INDEX</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single value, the maximum index that may be specified during the
transfer of generic vertex attributes to the GL.
</para>
</listitem>
</varlistentry>
</variablelist>
<para> <para>
Many of the boolean parameters can also be queried more easily using Many of the boolean parameters can also be queried more easily using
<citerefentry><refentrytitle>glIsEnabled</refentrytitle></citerefentry>. <citerefentry><refentrytitle>glIsEnabled</refentrytitle></citerefentry>.
@ -2587,6 +3119,52 @@
and <constant>GL_VIEWPORT_INDEX_PROVOKING_VERTEX</constant> and <constant>GL_VIEWPORT_INDEX_PROVOKING_VERTEX</constant>
are available only if the GL version is 4.1 or greater. are available only if the GL version is 4.1 or greater.
</para> </para>
<para>
<constant>GL_MAX_VERTEX_ATOMIC_COUNTERS</constant>,
<constant>GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS</constant>,
<constant>GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS</constant>,
<constant>GL_MAX_GEOMETRY_ATOMIC_COUNTERS</constant>,
<constant>GL_MAX_FRAMGENT_ATOMIC_COUNTERS</constant>, and
<constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant> are accepted by <parameter>pname</parameter>
only if the GL version is 4.2 or greater.
</para>
<para>
<constant>GL_MAX_ELEMENT_INDEX</constant> is accepted by <parameter>pname</parameter> only
if the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_MAX_COMPUTE_UNIFORM_BLOCKS</constant>, <constant>GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS</constant>,
<constant>GL_MAX_COMPUTE_UNIFORM_COMPONENTS</constant>, <constant>GL_MAX_COMPUTE_ATOMIC_COUNTERS</constant>,
<constant>GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS</constant>, <constant>GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS</constant>,
<constant>GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS</constant>, <constant>GL_MAX_COMPUTE_WORK_GROUP_COUNT</constant>, and
<constant>GL_MAX_COMPUTE_WORK_GROUP_SIZE</constant> and <constant>GL_DISPATCH_INDIRECT_BUFFER_BINDING</constant> are available only if the GL version
is 4.3 or greater.
</para>
<para>
<constant>GL_MAX_DEBUG_GROUP_STACK_DEPTH</constant>, <constant>GL_DEBUG_GROUP_STACK_DEPTH</constant> and <constant>GL_MAX_LABEL_LENGTH</constant> are accepted only if
the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_MAX_UNIFORM_LOCATIONS</constant> is accepted only if the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_MAX_FRAMEBUFFER_WIDTH</constant>, <constant>GL_MAX_FRAMEBUFFER_HEIGHT</constant>, <constant>GL_MAX_FRAMEBUFFER_LAYERS</constant>,
and <constant>GL_MAX_FRAMEBUFFER_SAMPLES</constant> are available only if the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS</constant>, <constant>GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS</constant>,
<constant>GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS</constant>, <constant>GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS</constant>,
<constant>GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS</constant>, and <constant>GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS</constant> are available
only if the GL version is 4.3 or higher.
</para>
<para>
<constant>GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT</constant> is available only if the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_VERTEX_BINDING_DIVISOR</constant>, <constant>GL_VERTEX_BINDING_OFFSET</constant>, <constant>GL_VERTEX_BINDING_STRIDE</constant>,
<constant>GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET</constant> and <constant>GL_MAX_VERTEX_ATTRIB_BINDINGS</constant> are available only if
the GL version is 4.3 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -2628,9 +3206,9 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006 Silicon Graphics, Inc.
Silicon Graphics, Inc. This document is licensed under the SGI Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
Free Software B License. For details, see This document is licensed under the SGI Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>
</refsect1> </refsect1>

View file

@ -154,7 +154,7 @@
<constant>GL_INT_VEC2</constant>, <constant>GL_INT_VEC2</constant>,
<constant>GL_INT_VEC3</constant>, <constant>GL_INT_VEC3</constant>,
<constant>GL_INT_VEC4</constant>, <constant>GL_INT_VEC4</constant>,
<constant>GL_UNSIGNED_INT_VEC</constant>, <constant>GL_UNSIGNED_INT</constant>,
<constant>GL_UNSIGNED_INT_VEC2</constant>, <constant>GL_UNSIGNED_INT_VEC2</constant>,
<constant>GL_UNSIGNED_INT_VEC3</constant>, <constant>GL_UNSIGNED_INT_VEC3</constant>,
<constant>GL_UNSIGNED_INT_VEC4</constant>, <constant>GL_UNSIGNED_INT_VEC4</constant>,

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glGetActiveSubroutineName"> <refentry id="glGetActiveSubroutineUniform">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>

View file

@ -745,6 +745,255 @@
<constant>usampler2DRect</constant> <constant>usampler2DRect</constant>
</entry> </entry>
</row> </row>
<row>
<entry align="left">
<constant>GL_IMAGE_1D</constant>
</entry>
<entry align="left">
<constant>image1D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_2D</constant>
</entry>
<entry align="left">
<constant>image2D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_3D</constant>
</entry>
<entry align="left">
<constant>image3D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_2D_RECT</constant>
</entry>
<entry align="left">
<constant>image2DRect</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_CUBE</constant>
</entry>
<entry align="left">
<constant>imageCube</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_BUFFER</constant>
</entry>
<entry align="left">
<constant>imageBuffer</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_1D_ARRAY</constant>
</entry>
<entry align="left">
<constant>image1DArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_2D_ARRAY</constant>
</entry>
<entry align="left">
<constant>image2DArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_2D_MULTISAMPLE</constant>
</entry>
<entry align="left">
<constant>image2DMS</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_IMAGE_2D_MULTISAMPLE_ARRAY</constant>
</entry>
<entry align="left">
<constant>image2DMSArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_1D</constant>
</entry>
<entry align="left">
<constant>iimage1D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_2D</constant>
</entry>
<entry align="left">
<constant>iimage2D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_3D</constant>
</entry>
<entry align="left">
<constant>iimage3D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_2D_RECT</constant>
</entry>
<entry align="left">
<constant>iimage2DRect</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_CUBE</constant>
</entry>
<entry align="left">
<constant>iimageCube</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_BUFFER</constant>
</entry>
<entry align="left">
<constant>iimageBuffer</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_1D_ARRAY</constant>
</entry>
<entry align="left">
<constant>iimage1DArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_2D_ARRAY</constant>
</entry>
<entry align="left">
<constant>iimage2DArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_2D_MULTISAMPLE</constant>
</entry>
<entry align="left">
<constant>iimage2DMS</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY</constant>
</entry>
<entry align="left">
<constant>iimage2DMSArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_1D</constant>
</entry>
<entry align="left">
<constant>uimage1D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_2D</constant>
</entry>
<entry align="left">
<constant>uimage2D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_3D</constant>
</entry>
<entry align="left">
<constant>uimage3D</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_2D_RECT</constant>
</entry>
<entry align="left">
<constant>uimage2DRect</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_CUBE</constant>
</entry>
<entry align="left">
<constant>uimageCube</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_BUFFER</constant>
</entry>
<entry align="left">
<constant>uimageBuffer</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_1D_ARRAY</constant>
</entry>
<entry align="left">
<constant>uimage1DArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_2D_ARRAY</constant>
</entry>
<entry align="left">
<constant>uimage2DArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE</constant>
</entry>
<entry align="left">
<constant>uimage2DMS</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY</constant>
</entry>
<entry align="left">
<constant>uimage2DMSArray</constant>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_UNSIGNED_INT_ATOMIC_COUNTER</constant>
</entry>
<entry align="left">
<constant>atomic_uint</constant>
</entry>
</row>
</tbody> </tbody>
</tgroup> </tgroup>
</informaltable> </informaltable>
@ -805,6 +1054,43 @@
and <constant>GL_DOUBLE_MAT4x3</constant> are only available if the GL and <constant>GL_DOUBLE_MAT4x3</constant> are only available if the GL
version is 4.1 or higher. version is 4.1 or higher.
</para> </para>
<para>
The image types,
<constant>GL_IMAGE_1D</constant>,
<constant>GL_IMAGE_2D</constant>,
<constant>GL_IMAGE_3D</constant>,
<constant>GL_IMAGE_2D_RECT</constant>,
<constant>GL_IMAGE_CUBE</constant>,
<constant>GL_IMAGE_BUFFER</constant>,
<constant>GL_IMAGE_1D_ARRAY</constant>,
<constant>GL_IMAGE_2D_ARRAY</constant>,
<constant>GL_IMAGE_2D_MULTISAMPLE</constant>,
<constant>GL_IMAGE_2D_MULTISAMPLE_ARRAY</constant>,
<constant>GL_INT_IMAGE_1D</constant>,
<constant>GL_INT_IMAGE_2D</constant>,
<constant>GL_INT_IMAGE_3D</constant>,
<constant>GL_INT_IMAGE_2D_RECT</constant>,
<constant>GL_INT_IMAGE_CUBE</constant>,
<constant>GL_INT_IMAGE_BUFFER</constant>,
<constant>GL_INT_IMAGE_1D_ARRAY</constant>,
<constant>GL_INT_IMAGE_2D_ARRAY</constant>,
<constant>GL_INT_IMAGE_2D_MULTISAMPLE</constant>,
<constant>GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_1D</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_2D</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_3D</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_2D_RECT</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_CUBE</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_BUFFER</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_1D_ARRAY</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_2D_ARRAY</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE</constant>,
<constant>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY</constant>,
and the atomic counter type,
<constant>GL_UNSIGNED_INT_ATOMIC_COUNTER</constant>
are only available if the GL
version is 4.2 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para><constant>GL_INVALID_VALUE</constant> is generated if <para><constant>GL_INVALID_VALUE</constant> is generated if
@ -826,8 +1112,9 @@
<para><citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> <para><citerefentry><refentrytitle>glGet</refentrytitle></citerefentry>
with argument <constant>GL_MAX_VERTEX_UNIFORM_COMPONENTS</constant>, with argument <constant>GL_MAX_VERTEX_UNIFORM_COMPONENTS</constant>,
<constant>GL_MAX_GEOMETRY_UNIFORM_COMPONENTS</constant>, <constant>GL_MAX_GEOMETRY_UNIFORM_COMPONENTS</constant>,
<constant>GL_MAX_FRAGMENT_UNIFORM_COMPONENTS</constant>, or <constant>GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS</constant>,
<constant>GL_MAX_COMBINED_UNIFORM_COMPONENTS</constant>.</para> <constant>GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS</constant>,
<constant>GL_MAX_FRAGMENT_UNIFORM_COMPONENTS</constant>.</para>
<para><citerefentry><refentrytitle>glGetProgram</refentrytitle></citerefentry> <para><citerefentry><refentrytitle>glGetProgram</refentrytitle></citerefentry>
with argument <constant>GL_ACTIVE_UNIFORMS</constant> or with argument <constant>GL_ACTIVE_UNIFORMS</constant> or

View file

@ -23,7 +23,7 @@
<paramdef>GLuint <parameter>program</parameter></paramdef> <paramdef>GLuint <parameter>program</parameter></paramdef>
<paramdef>GLuint <parameter>uniformBlockIndex</parameter></paramdef> <paramdef>GLuint <parameter>uniformBlockIndex</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef> <paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLint <parameter>params</parameter></paramdef> <paramdef>GLint *<parameter>params</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -108,9 +108,12 @@
<parameter>params</parameter> is the value of <constant>GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS</constant> for <parameter>uniformBlockIndex</parameter>. <parameter>params</parameter> is the value of <constant>GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS</constant> for <parameter>uniformBlockIndex</parameter>.
</para> </para>
<para> <para>
If <parameter>pname</parameter> is <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER</constant>, <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER</constant>, If <parameter>pname</parameter> is <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER</constant>, <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER</constant>,
or <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER</constant>, then a boolean value indicating whether the uniform block identified by <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER</constant>, <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER</constant>,
<parameter>uniformBlockIndex</parameter> is referenced by the vertex, geometry, or fragment programming stages of program, respectively, is returned. <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER</constant>, or <constant>GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER</constant>
then a boolean value indicating whether the uniform block identified by
<parameter>uniformBlockIndex</parameter> is referenced by the vertex, tessellation control, tessellation evaluation, geometry, fragment or compute
programming stages of program, respectively, is returned.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
@ -130,6 +133,10 @@
<para> <para>
<function>glGetActiveUniformBlockiv</function> is available only if the GL version is 3.1 or greater. <function>glGetActiveUniformBlockiv</function> is available only if the GL version is 3.1 or greater.
</para> </para>
<para>
<constant>GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER</constant> is accepted only if the GL version is 4.3
or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
@ -140,7 +147,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -41,7 +41,7 @@
<term><parameter>count</parameter></term> <term><parameter>count</parameter></term>
<listitem> <listitem>
<para>Returns the number of names actually returned <para>Returns the number of names actually returned
in <parameter>objects</parameter>.</para> in <parameter>shaders</parameter>.</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>

View file

@ -25,6 +25,14 @@
<paramdef>GLint * <parameter>data</parameter></paramdef> <paramdef>GLint * <parameter>data</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetBufferParameteri64v</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>value</parameter></paramdef>
<paramdef>GLint64 * <parameter>data</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
@ -33,12 +41,18 @@
<listitem> <listitem>
<para> <para>
Specifies the target buffer object. Specifies the target buffer object.
The symbolic constant must be <constant>GL_ARRAY_BUFFER</constant>, The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -117,6 +131,15 @@
If an error is generated, If an error is generated,
no change is made to the contents of <parameter>data</parameter>. no change is made to the contents of <parameter>data</parameter>.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFER</constant> target is available only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -138,6 +161,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -33,12 +33,18 @@
<listitem> <listitem>
<para> <para>
Specifies the target buffer object. Specifies the target buffer object.
The symbolic constant must be <constant>GL_ARRAY_BUFFER</constant>, The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -79,6 +85,15 @@
<para> <para>
The initial value for the pointer is <constant>NULL</constant>. The initial value for the pointer is <constant>NULL</constant>.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFER</constant> target is available only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -98,6 +113,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2011-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -35,12 +35,17 @@
<listitem> <listitem>
<para> <para>
Specifies the target buffer object. Specifies the target buffer object.
The symbolic constant must be <constant>GL_ARRAY_BUFFER</constant>, The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_RESULT_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -89,6 +94,15 @@
If an error is generated, If an error is generated,
no change is made to the contents of <parameter>data</parameter>. no change is made to the contents of <parameter>data</parameter>.
</para> </para>
<para>
The <constant>GL_ATOMIC_COUNTER_BUFER</constant> target is available only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> target is available only if the GL version is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_RESULT_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -120,6 +134,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2011-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -116,6 +116,24 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_STACK_UNDERFLOW</constant></term>
<listitem>
<para>
An attempt has been made to perform an operation that would
cause an internal stack to underflow.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_STACK_OVERFLOW</constant></term>
<listitem>
<para>
An attempt has been made to perform an operation that would
cause an internal stack to overflow.
</para>
</listitem>
</varlistentry>
</variablelist> </variablelist>
<para> <para>
When an error flag is set, When an error flag is set,
@ -131,7 +149,10 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012
Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN" <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd"> "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glClampColor"> <refentry id="glGetFragDataLocation">
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>

View file

@ -19,7 +19,7 @@
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glGetFramebufferAttachmentParameter</function></funcdef> <funcdef>void <function>glGetFramebufferAttachmentParameteriv</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>attachment</parameter></paramdef> <paramdef>GLenum <parameter>attachment</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef> <paramdef>GLenum <parameter>pname</parameter></paramdef>
@ -66,7 +66,7 @@
</refsect1> </refsect1>
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glGetFramebufferAttachmentParameter</function> returns information about attachments of a bound framebuffer <function>glGetFramebufferAttachmentParameteriv</function> returns information about attachments of a bound framebuffer
object. <parameter>target</parameter> specifies the framebuffer binding point and must be <constant>GL_DRAW_FRAMEBUFFER</constant>, object. <parameter>target</parameter> specifies the framebuffer binding point and must be <constant>GL_DRAW_FRAMEBUFFER</constant>,
<constant>GL_READ_FRAMEBUFFER</constant> or <constant>GL_FRAMEBUFFER</constant>. <constant>GL_FRAMEBUFFER</constant> is equivalent <constant>GL_READ_FRAMEBUFFER</constant> or <constant>GL_FRAMEBUFFER</constant>. <constant>GL_FRAMEBUFFER</constant> is equivalent
to <constant>GL_DRAW_FRAMEBUFFER</constant>. to <constant>GL_DRAW_FRAMEBUFFER</constant>.
@ -218,7 +218,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -39,12 +39,14 @@
<constant>GL_VALIDATE_STATUS</constant>, <constant>GL_VALIDATE_STATUS</constant>,
<constant>GL_INFO_LOG_LENGTH</constant>, <constant>GL_INFO_LOG_LENGTH</constant>,
<constant>GL_ATTACHED_SHADERS</constant>, <constant>GL_ATTACHED_SHADERS</constant>,
<constant>GL_ACTIVE_ATOMIC_COUNTER_BUFFERS</constant>,
<constant>GL_ACTIVE_ATTRIBUTES</constant>, <constant>GL_ACTIVE_ATTRIBUTES</constant>,
<constant>GL_ACTIVE_ATTRIBUTE_MAX_LENGTH</constant>, <constant>GL_ACTIVE_ATTRIBUTE_MAX_LENGTH</constant>,
<constant>GL_ACTIVE_UNIFORMS</constant>, <constant>GL_ACTIVE_UNIFORMS</constant>,
<constant>GL_ACTIVE_UNIFORM_BLOCKS</constant>, <constant>GL_ACTIVE_UNIFORM_BLOCKS</constant>,
<constant>GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH</constant>, <constant>GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH</constant>,
<constant>GL_ACTIVE_UNIFORM_MAX_LENGTH</constant>, <constant>GL_ACTIVE_UNIFORM_MAX_LENGTH</constant>,
<constant>GL_COMPUTE_WORK_GROUP_SIZE</constant>
<constant>GL_PROGRAM_BINARY_LENGTH</constant>, <constant>GL_PROGRAM_BINARY_LENGTH</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER_MODE</constant>, <constant>GL_TRANSFORM_FEEDBACK_BUFFER_MODE</constant>,
<constant>GL_TRANSFORM_FEEDBACK_VARYINGS</constant>, <constant>GL_TRANSFORM_FEEDBACK_VARYINGS</constant>,
@ -135,6 +137,17 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_ACTIVE_ATOMIC_COUNTER_BUFFERS</constant></term>
<listitem>
<para>
</para>
<para> <parameter>params</parameter> returns the
number of active attribute atomic counter buffers used by
<parameter>program</parameter>.</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_ACTIVE_ATTRIBUTES</constant></term> <term><constant>GL_ACTIVE_ATTRIBUTES</constant></term>
<listitem> <listitem>
@ -201,6 +214,21 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_COMPUTE_WORK_GROUP_SIZE</constant></term>
<listitem>
<para>
</para>
<para> <parameter>params</parameter> returns an
array of three integers containing the local work group size of
the compute program as specified by its input layout qualifier(s).
<parameter>program</parameter> must be the name of a program object
that has been previously linked successfully and contains a binary
for the compute shader stage.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_TRANSFORM_FEEDBACK_BUFFER_MODE</constant></term> <term><constant>GL_TRANSFORM_FEEDBACK_BUFFER_MODE</constant></term>
<listitem> <listitem>
@ -277,6 +305,10 @@
and <constant>GL_GEOMETRY_OUTPUT_TYPE</constant> are accepted only if the GL and <constant>GL_GEOMETRY_OUTPUT_TYPE</constant> are accepted only if the GL
version is 3.2 or greater. version is 3.2 or greater.
</para> </para>
<para>
<constant>GL_COMPUTE_WORK_GROUP_SIZE</constant> is accepted only if the
GL version is 4.3 or greater.
</para>
<para>If an error is generated, no change is made to the <para>If an error is generated, no change is made to the
contents of <parameter>params</parameter>.</para> contents of <parameter>params</parameter>.</para>
@ -299,6 +331,10 @@
is generated if <parameter>pname</parameter> is generated if <parameter>pname</parameter>
is not an accepted value.</para> is not an accepted value.</para>
<para><constant>GL_INVALID_OPERATION</constant> is generated if <parameter>pname</parameter>
is <constant>GL_COMPUTE_WORK_GROUP_SIZE</constant> and <parameter>program</parameter>
does not contain a binary for the compute shader stage.</para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para><citerefentry><refentrytitle>glGetActiveAttrib</refentrytitle></citerefentry> <para><citerefentry><refentrytitle>glGetActiveAttrib</refentrytitle></citerefentry>
@ -327,7 +363,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2003-2005 3Dlabs Inc. Ltd. Copyright <trademark class="copyright"></trademark> 2003-2005 3Dlabs Inc. Ltd.
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -34,7 +34,7 @@
<listitem> <listitem>
<para> <para>
Specifies a query object target. Specifies a query object target.
Must be <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>, Must be <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>
<constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, <constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>,
<constant>GL_TIME_ELAPSED</constant>, or <constant>GL_TIMESTAMP</constant>. <constant>GL_TIME_ELAPSED</constant>, or <constant>GL_TIMESTAMP</constant>.
</para> </para>
@ -82,6 +82,9 @@
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
<para>
The target <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant> is available only if the GL version is 4.3 or greater.
</para>
<para> <para>
If an error is generated, If an error is generated,
no change is made to the contents of <parameter>params</parameter>. no change is made to the contents of <parameter>params</parameter>.

View file

@ -73,7 +73,10 @@
<term><parameter>params</parameter></term> <term><parameter>params</parameter></term>
<listitem> <listitem>
<para> <para>
Returns the requested data. If a buffer is bound to the <constant>GL_QUERY_RESULT_BUFFER</constant> target, then <parameter>params</parameter>
is treated as an offset to a location within that buffer's data store to receive the result of the query. If
no buffer is bound to <constant>GL_QUERY_RESULT_BUFFER</constant>, then <parameter>params</parameter> is
treated as an address in client memory of a variable to receive the resulting data.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -92,7 +95,18 @@
<term><constant>GL_QUERY_RESULT</constant></term> <term><constant>GL_QUERY_RESULT</constant></term>
<listitem> <listitem>
<para> <para>
<parameter>params</parameter> returns the value of the query object's passed samples counter. <parameter>params</parameter> returns the value of the query object's passed samples counter.
The initial value is 0.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_QUERY_RESULT_NO_WAIT</constant></term>
<listitem>
<para>
If the result of the query is available (that is, a query of <constant>GL_QUERY_RESULT_AVAILABLE</constant> would
return non-zero), then <parameter>params</parameter> returns the value of the query object's passed samples counter,
otherwise, the data referred to by <parameter>params</parameter> is not modified.
The initial value is 0. The initial value is 0.
</para> </para>
</listitem> </listitem>
@ -128,6 +142,14 @@
<function>glGetQueryObjecti64v</function> and <function>glGetQueryObjectui64v</function> are available only <function>glGetQueryObjecti64v</function> and <function>glGetQueryObjectui64v</function> are available only
if the GL version is 3.3 or greater. if the GL version is 3.3 or greater.
</para> </para>
<para>
<constant>GL_QUERY_RESULT_NO_WAIT</constant> is accepted for <parameter>pname</parameter> only if the
GL version is 4.4 or greater.
</para>
<para>
The <constant>GL_QUERY_RESULT_BUFFER</constant> target is available only if the GL version is 4.4 or higher.
On earlier versions of the GL, <parameter>params</parameter> is always an address in client memory.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -140,6 +162,11 @@
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>id</parameter> is the name of a currently active <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>id</parameter> is the name of a currently active
query object. query object.
</para> </para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if a buffer is currently bound to the
<constant>GL_QUERY_RESULT_BUFFER</constant> target and the command would cause data to be written beyond the bounds
of that buffer's data store.
</para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
@ -153,6 +180,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -33,7 +33,7 @@
<listitem> <listitem>
<para> <para>
Specifies a query object target. Specifies a query object target.
Must be <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>, Must be <constant>GL_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED</constant>, <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant>
<constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>, <constant>GL_PRIMITIVES_GENERATED</constant>, <constant>GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN</constant>,
<constant>GL_TIME_ELAPSED</constant>, or <constant>GL_TIMESTAMP</constant>. <constant>GL_TIME_ELAPSED</constant>, or <constant>GL_TIMESTAMP</constant>.
</para> </para>
@ -72,6 +72,9 @@
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
<para>
The target <constant>GL_ANY_SAMPLES_PASSED_CONSERVATIVE</constant> is available only if the GL version is 4.3 or greater.
</para>
<para> <para>
If an error is generated, If an error is generated,
no change is made to the contents of <parameter>params</parameter>. no change is made to the contents of <parameter>params</parameter>.

View file

@ -33,6 +33,22 @@
<paramdef>GLint * <parameter>params</parameter></paramdef> <paramdef>GLint * <parameter>params</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetSamplerParameterIiv</function></funcdef>
<paramdef>GLuint <parameter>sampler</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLint * <parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetSamplerParameterIuiv</function></funcdef>
<paramdef>GLuint <parameter>sampler</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLuint * <parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<!-- eqn: ignoring delim $$ --> <!-- eqn: ignoring delim $$ -->
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>

View file

@ -208,6 +208,10 @@
<para> <para>
<function>glGetTexImage</function> returns the texture image for the active texture unit. <function>glGetTexImage</function> returns the texture image for the active texture unit.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX</constant> is accepted for <parameter>format</parameter> only if the GL
version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -237,7 +241,7 @@
is the returned value of <constant>GL_MAX_TEXTURE_SIZE</constant>. is the returned value of <constant>GL_MAX_TEXTURE_SIZE</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is returned if <parameter>type</parameter> is one of <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>type</parameter> is one of
<constant>GL_UNSIGNED_BYTE_3_3_2</constant>, <constant>GL_UNSIGNED_BYTE_3_3_2</constant>,
<constant>GL_UNSIGNED_BYTE_2_3_3_REV</constant>, <constant>GL_UNSIGNED_BYTE_2_3_3_REV</constant>,
<constant>GL_UNSIGNED_SHORT_5_6_5</constant>, <constant>GL_UNSIGNED_SHORT_5_6_5</constant>,
@ -245,7 +249,7 @@
<constant>GL_UNSIGNED_INT_10F_11F_11F_REV</constant> and <parameter>format</parameter> is not <constant>GL_RGB</constant>. <constant>GL_UNSIGNED_INT_10F_11F_11F_REV</constant> and <parameter>format</parameter> is not <constant>GL_RGB</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is returned if <parameter>type</parameter> is one of <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>type</parameter> is one of
<constant>GL_UNSIGNED_SHORT_4_4_4_4</constant>, <constant>GL_UNSIGNED_SHORT_4_4_4_4</constant>,
<constant>GL_UNSIGNED_SHORT_4_4_4_4_REV</constant>, <constant>GL_UNSIGNED_SHORT_4_4_4_4_REV</constant>,
<constant>GL_UNSIGNED_SHORT_5_5_5_1</constant>, <constant>GL_UNSIGNED_SHORT_5_5_5_1</constant>,
@ -257,6 +261,11 @@
<constant>GL_UNSIGNED_INT_5_9_9_9_REV</constant> and <parameter>format</parameter> is neither <constant>GL_RGBA</constant> <constant>GL_UNSIGNED_INT_5_9_9_9_REV</constant> and <parameter>format</parameter> is neither <constant>GL_RGBA</constant>
or <constant>GL_BGRA</constant>. or <constant>GL_BGRA</constant>.
</para> </para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>format</parameter> is
<constant>GL_STENCIL_INDEX</constant> and the base internal format is not <constant>GL_STENCIL_INDEX</constant>
or <constant>GL_DEPTH_STENCIL</constant>.
</para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to the <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to the
<constant>GL_PIXEL_PACK_BUFFER</constant> target and the buffer object's data store is currently mapped. <constant>GL_PIXEL_PACK_BUFFER</constant> target and the buffer object's data store is currently mapped.
@ -305,7 +314,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010 Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010-2013
Khronos Group. This document is licensed under the SGI Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glGetTexLevelParameter</refentrytitle> <refentrytitle>glGetTexLevelParameter</refentrytitle>
@ -95,14 +95,14 @@
<constant>GL_TEXTURE_HEIGHT</constant>, <constant>GL_TEXTURE_HEIGHT</constant>,
<constant>GL_TEXTURE_DEPTH</constant>, <constant>GL_TEXTURE_DEPTH</constant>,
<constant>GL_TEXTURE_INTERNAL_FORMAT</constant>, <constant>GL_TEXTURE_INTERNAL_FORMAT</constant>,
<constant>GL_TEXTURE_BORDER</constant>,
<constant>GL_TEXTURE_RED_SIZE</constant>, <constant>GL_TEXTURE_RED_SIZE</constant>,
<constant>GL_TEXTURE_GREEN_SIZE</constant>, <constant>GL_TEXTURE_GREEN_SIZE</constant>,
<constant>GL_TEXTURE_BLUE_SIZE</constant>, <constant>GL_TEXTURE_BLUE_SIZE</constant>,
<constant>GL_TEXTURE_ALPHA_SIZE</constant>, <constant>GL_TEXTURE_ALPHA_SIZE</constant>,
<constant>GL_TEXTURE_DEPTH_SIZE</constant>, <constant>GL_TEXTURE_DEPTH_SIZE</constant>,
<constant>GL_TEXTURE_COMPRESSED</constant>, and <constant>GL_TEXTURE_COMPRESSED</constant>,
<constant>GL_TEXTURE_COMPRESSED_IMAGE_SIZE</constant> <constant>GL_TEXTURE_COMPRESSED_IMAGE_SIZE</constant>, and
<constant>GL_TEXTURE_BUFFER_OFFSET</constant>
are accepted. are accepted.
</para> </para>
</listitem> </listitem>
@ -139,8 +139,8 @@
<constant>GL_MAX_TEXTURE_SIZE</constant>, and <constant>GL_MAX_3D_TEXTURE_SIZE</constant> are not really <constant>GL_MAX_TEXTURE_SIZE</constant>, and <constant>GL_MAX_3D_TEXTURE_SIZE</constant> are not really
descriptive enough. descriptive enough.
It has to report the largest square texture image that can be It has to report the largest square texture image that can be
accommodated with mipmaps and borders, accommodated with mipmaps
but a long skinny texture, or a texture without mipmaps and borders, may but a long skinny texture, or a texture without mipmaps may
easily fit in texture memory. easily fit in texture memory.
The proxy targets allow the user to more accurately query The proxy targets allow the user to more accurately query
whether the GL can accommodate a texture of a given configuration. whether the GL can accommodate a texture of a given configuration.
@ -165,8 +165,7 @@
<para> <para>
<parameter>params</parameter> returns a single value, <parameter>params</parameter> returns a single value,
the width of the texture image. the width of the texture image.
This value includes the border of the texture image. The initial value is The initial value is 0.
0.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -178,8 +177,7 @@
<para> <para>
<parameter>params</parameter> returns a single value, <parameter>params</parameter> returns a single value,
the height of the texture image. the height of the texture image.
This value includes the border of the texture image. The initial value is The initial value is 0.
0.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -191,8 +189,7 @@
<para> <para>
<parameter>params</parameter> returns a single value, <parameter>params</parameter> returns a single value,
the depth of the texture image. the depth of the texture image.
This value includes the border of the texture image. The initial value is The initial value is 0.
0.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -299,6 +296,30 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_BUFFER_OFFSET</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single integer value, the offset into the
data store of the buffer bound to a buffer texture.
<citerefentry><refentrytitle>glTexBufferRange</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_BUFFER_SIZE</constant></term>
<listitem>
<para>
</para>
<para>
<parameter>params</parameter> returns a single integer value, the size of the range of a
data store of the buffer bound to a buffer texture.
<citerefentry><refentrytitle>glTexBufferRange</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
</variablelist> </variablelist>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
@ -309,6 +330,10 @@
<para> <para>
<function>glGetTexLevelParameter</function> returns the texture level parameters for the active texture unit. <function>glGetTexLevelParameter</function> returns the texture level parameters for the active texture unit.
</para> </para>
<para>
<constant>GL_TEXTURE_BUFFER_OFFSET</constant> and <constant>GL_TEXTURE_BUFFER_SIZE</constant> are available only
if the GL version is 4.3 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -361,7 +386,7 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010 Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010-2013
Khronos Group. This document is licensed under the SGI Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.

View file

@ -33,6 +33,22 @@
<paramdef>GLint * <parameter>params</parameter></paramdef> <paramdef>GLint * <parameter>params</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetTexParameterIiv</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLint * <parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glGetTexParameterIuiv</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLuint * <parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<!-- eqn: ignoring delim $$ --> <!-- eqn: ignoring delim $$ -->
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
@ -47,8 +63,9 @@
<constant>GL_TEXTURE_1D_ARRAY</constant>, <constant>GL_TEXTURE_1D_ARRAY</constant>,
<constant>GL_TEXTURE_2D_ARRAY</constant>, <constant>GL_TEXTURE_2D_ARRAY</constant>,
<constant>GL_TEXTURE_3D</constant>, <constant>GL_TEXTURE_3D</constant>,
<constant>GL_TEXTURE_RECTANGLE</constant>, and <constant>GL_TEXTURE_RECTANGLE</constant>,
<constant>GL_TEXTURE_CUBE_MAP</constant> <constant>GL_TEXTURE_CUBE_MAP</constant>, and
<constant>GL_TEXTURE_CUBE_MAP_ARRAY</constant>
are accepted. are accepted.
</para> </para>
</listitem> </listitem>
@ -58,10 +75,13 @@
<listitem> <listitem>
<para> <para>
Specifies the symbolic name of a texture parameter. Specifies the symbolic name of a texture parameter.
<constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant>,
<constant>GL_TEXTURE_BASE_LEVEL</constant>, <constant>GL_TEXTURE_BASE_LEVEL</constant>,
<constant>GL_TEXTURE_BORDER_COLOR</constant>, <constant>GL_TEXTURE_BORDER_COLOR</constant>,
<constant>GL_TEXTURE_COMPARE_MODE</constant>, <constant>GL_TEXTURE_COMPARE_MODE</constant>,
<constant>GL_TEXTURE_COMPARE_FUNC</constant>, <constant>GL_TEXTURE_COMPARE_FUNC</constant>,
<constant>GL_TEXTURE_IMMUTABLE_FORMAT</constant>,
<constant>GL_TEXTURE_IMMUTABLE_LEVELS</constant>,
<constant>GL_TEXTURE_LOD_BIAS</constant>, <constant>GL_TEXTURE_LOD_BIAS</constant>,
<constant>GL_TEXTURE_MAG_FILTER</constant>, <constant>GL_TEXTURE_MAG_FILTER</constant>,
<constant>GL_TEXTURE_MAX_LEVEL</constant>, <constant>GL_TEXTURE_MAX_LEVEL</constant>,
@ -73,6 +93,10 @@
<constant>GL_TEXTURE_SWIZZLE_B</constant>, <constant>GL_TEXTURE_SWIZZLE_B</constant>,
<constant>GL_TEXTURE_SWIZZLE_A</constant>, <constant>GL_TEXTURE_SWIZZLE_A</constant>,
<constant>GL_TEXTURE_SWIZZLE_RGBA</constant>, <constant>GL_TEXTURE_SWIZZLE_RGBA</constant>,
<constant>GL_TEXTURE_VIEW_MIN_LAYER</constant>,
<constant>GL_TEXTURE_VIEW_MIN_LEVEL</constant>,
<constant>GL_TEXTURE_VIEW_NUM_LAYERS</constant>,
<constant>GL_TEXTURE_VIEW_NUM_LEVELS</constant>,
<constant>GL_TEXTURE_WRAP_S</constant>, <constant>GL_TEXTURE_WRAP_S</constant>,
<constant>GL_TEXTURE_WRAP_T</constant>, and <constant>GL_TEXTURE_WRAP_T</constant>, and
<constant>GL_TEXTURE_WRAP_R</constant> <constant>GL_TEXTURE_WRAP_R</constant>
@ -100,13 +124,23 @@
<constant>GL_TEXTURE_3D</constant>, <constant>GL_TEXTURE_3D</constant>,
<constant>GL_TEXTURE_1D_ARRAY</constant>, <constant>GL_TEXTURE_1D_ARRAY</constant>,
<constant>GL_TEXTURE_2D_ARRAY</constant>, <constant>GL_TEXTURE_2D_ARRAY</constant>,
<constant>GL_TEXTURE_RECTANGLE</constant>, and <constant>GL_TEXTURE_RECTANGLE</constant>,
<constant>GL_TEXTURE_CUBE_MAP</constant> <constant>GL_TEXTURE_CUBE_MAP</constant>,
specify one-, two-, or three-dimensional, one-dimensional array, two-dimensional array, rectangle or cube-mapped texturing, respectively. <constant>GL_TEXTURE_CUBE_MAP_ARRAY</constant>
specify one-, two-, or three-dimensional, one-dimensional array, two-dimensional array, rectangle, cube-mapped or cube-mapped array texturing, respectively.
<parameter>pname</parameter> accepts the same symbols as <citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry>, <parameter>pname</parameter> accepts the same symbols as <citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry>,
with the same interpretations: with the same interpretations:
</para> </para>
<variablelist> <variablelist>
<varlistentry>
<term><constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant></term>
<listitem>
<para>
Returns the single-value depth stencil texture mode, a symbolic constant.
The initial value is <constant>GL_DEPTH_COMPONENT</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><constant>GL_TEXTURE_MAG_FILTER</constant></term> <term><constant>GL_TEXTURE_MAG_FILTER</constant></term>
<listitem> <listitem>
@ -278,6 +312,68 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_VIEW_MIN_LEVEL</constant></term>
<listitem>
<para>
Returns a single-valued base level of a texture view relative to its parent. The
initial value is 0. See <citerefentry><refentrytitle>glTextureView</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_VIEW_NUM_LEVELS</constant></term>
<listitem>
<para>
Returns a single-valued number of levels of detail of a texture view.
See <citerefentry><refentrytitle>glTextureView</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_VIEW_MIN_LAYER</constant></term>
<listitem>
<para>
Returns a single-valued first level of a texture array view relative to its parent.
See <citerefentry><refentrytitle>glTextureView</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_VIEW_NUM_LAYERS</constant></term>
<listitem>
<para>
Returns a single-valued number of layers in a texture array view.
See <citerefentry><refentrytitle>glTextureView</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_TEXTURE_IMMUTABLE_LEVELS</constant></term>
<listitem>
<para>
Returns a single-valued number of immutable texture levels in a texture view.
See <citerefentry><refentrytitle>glTextureView</refentrytitle></citerefentry>.
</para>
</listitem>
</varlistentry>
</variablelist>
<para>
In addition to the parameters that may be set with <citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry>,
<function>glGetTexParameter</function> accepts the following read-only parameters:
</para>
<variablelist>
<varlistentry>
<term><constant>GL_TEXTURE_IMMUTABLE_FORMAT</constant></term>
<listitem>
<para>
Returns non-zero if the texture has an immutable format. Textures become
immutable if their storage is specified with <citerefentry><refentrytitle>glTexStorage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexStorage2D</refentrytitle></citerefentry> or <citerefentry><refentrytitle>glTexStorage3D</refentrytitle></citerefentry>.
The initial value is <constant>GL_FALSE</constant>.
</para>
</listitem>
</varlistentry>
</variablelist> </variablelist>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
@ -285,6 +381,11 @@
If an error is generated, If an error is generated,
no change is made to the contents of <parameter>params</parameter>. no change is made to the contents of <parameter>params</parameter>.
</para> </para>
<para>
<constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant>, <constant>GL_TEXTURE_VIEW_MIN_LEVEL</constant>,
<constant>GL_TEXTURE_VIEW_NUM_LEVELS</constant>, <constant>GL_TEXTURE_VIEW_MIN_LAYER</constant>,
<constant>GL_TEXTURE_VIEW_NUM_LAYERS</constant> and <constant>GL_TEXTURE_IMMUTABLE_LEVELS</constant> are available only if the GL version is 4.3 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -294,13 +395,17 @@
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
<citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry> <citerefentry><refentrytitle>glTexParameter</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexStorage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexStorage2D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexStorage3D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTextureView</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010 Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010-2012
Khronos Group. This document is licensed under the SGI Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.

View file

@ -24,7 +24,7 @@
<paramdef>GLuint<parameter>index</parameter></paramdef> <paramdef>GLuint<parameter>index</parameter></paramdef>
<paramdef>GLsizei<parameter>bufSize</parameter></paramdef> <paramdef>GLsizei<parameter>bufSize</parameter></paramdef>
<paramdef>GLsizei *<parameter>length</parameter></paramdef> <paramdef>GLsizei *<parameter>length</parameter></paramdef>
<paramdef>GLsizei<parameter>size</parameter></paramdef> <paramdef>GLsizei *<parameter>size</parameter></paramdef>
<paramdef>GLenum *<parameter>type</parameter></paramdef> <paramdef>GLenum *<parameter>type</parameter></paramdef>
<paramdef>char *<parameter>name</parameter></paramdef> <paramdef>char *<parameter>name</parameter></paramdef>
</funcprototype> </funcprototype>
@ -99,7 +99,7 @@
variable selected by <parameter>index</parameter>. An <parameter>index</parameter> of 0 selects variable selected by <parameter>index</parameter>. An <parameter>index</parameter> of 0 selects
the first varying variable specified in the <parameter>varyings</parameter> array passed the first varying variable specified in the <parameter>varyings</parameter> array passed
to <citerefentry><refentrytitle>glTransformFeedbackVaryings</refentrytitle></citerefentry>, and to <citerefentry><refentrytitle>glTransformFeedbackVaryings</refentrytitle></citerefentry>, and
an <parameter>index</parameter> of <constant>GL_TRANSFORM_FEEDBACK_VARYINGS-1</constant> selects an <parameter>index</parameter> of <constant>GL_TRANSFORM_FEEDBACK_VARYINGS</constant> - 1 selects
the last such variable. the last such variable.
</para> </para>
<para> <para>
@ -152,7 +152,7 @@
</para> </para>
</refsect1> <refsect1 id="Copyright"><title>Copyright</title> </refsect1> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -26,6 +26,18 @@
<paramdef>GLint <parameter>location</parameter></paramdef> <paramdef>GLint <parameter>location</parameter></paramdef>
<paramdef>GLint *<parameter>params</parameter></paramdef> <paramdef>GLint *<parameter>params</parameter></paramdef>
</funcprototype> </funcprototype>
<funcprototype>
<funcdef>void <function>glGetUniformuiv</function></funcdef>
<paramdef>GLuint <parameter>program</parameter></paramdef>
<paramdef>GLint <parameter>location</parameter></paramdef>
<paramdef>GLuint *<parameter>params</parameter></paramdef>
</funcprototype>
<funcprototype>
<funcdef>void <function>glGetUniformdv</function></funcdef>
<paramdef>GLuint <parameter>program</parameter></paramdef>
<paramdef>GLint <parameter>location</parameter></paramdef>
<paramdef>GLdouble *<parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>

View file

@ -19,7 +19,7 @@
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>GLuint <function>glGetUniformIndices</function></funcdef> <funcdef>void <function>glGetUniformIndices</function></funcdef>
<paramdef>GLuint <parameter>program</parameter></paramdef> <paramdef>GLuint <parameter>program</parameter></paramdef>
<paramdef>GLsizei <parameter>uniformCount</parameter></paramdef> <paramdef>GLsizei <parameter>uniformCount</parameter></paramdef>
<paramdef>const GLchar **<parameter>uniformNames</parameter></paramdef> <paramdef>const GLchar **<parameter>uniformNames</parameter></paramdef>

View file

@ -48,8 +48,10 @@
an array of structures, or a subcomponent of a vector or a an array of structures, or a subcomponent of a vector or a
matrix. This function returns -1 if <parameter>name</parameter> matrix. This function returns -1 if <parameter>name</parameter>
does not correspond to an active uniform variable in does not correspond to an active uniform variable in
<parameter>program</parameter> or if <parameter>name</parameter> <parameter>program</parameter>, if <parameter>name</parameter>
starts with the reserved prefix &quot;gl_&quot;.</para> starts with the reserved prefix &quot;gl_&quot;, or if
<parameter>name</parameter> is associated with an atomic counter or
a named uniform block.</para>
<para>Uniform variables that are structures or arrays of <para>Uniform variables that are structures or arrays of
structures may be queried by calling structures may be queried by calling
@ -114,7 +116,8 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2003-2005 3Dlabs Inc. Ltd. Copyright <trademark class="copyright"></trademark> 2003-2005 3Dlabs Inc. Ltd.
<trademark class="copyright"></trademark> 2011 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -13,7 +13,7 @@
<manvolnum>3G</manvolnum> <manvolnum>3G</manvolnum>
</refmeta> </refmeta>
<refnamediv> <refnamediv>
<refname>glIsEnabled</refname> <refname>glIsEnabled, glIsEnabledi</refname>
<refpurpose>test whether a capability is enabled</refpurpose> <refpurpose>test whether a capability is enabled</refpurpose>
</refnamediv> </refnamediv>
<refsynopsisdiv><title>C Specification</title> <refsynopsisdiv><title>C Specification</title>
@ -23,6 +23,13 @@
<paramdef>GLenum <parameter>cap</parameter></paramdef> <paramdef>GLenum <parameter>cap</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>GLboolean <function>glIsEnabledi</function></funcdef>
<paramdef>GLenum <parameter>cap</parameter></paramdef>
<paramdef>GLuint <parameter>index</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<refsect1 id="parameters"><title>Parameters</title> <refsect1 id="parameters"><title>Parameters</title>
<variablelist> <variablelist>
@ -34,12 +41,22 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><parameter>index</parameter></term>
<listitem>
<para>
Specifies the index of the capability.
</para>
</listitem>
</varlistentry>
</variablelist> </variablelist>
</refsect1> </refsect1>
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glIsEnabled</function> returns <constant>GL_TRUE</constant> if <parameter>cap</parameter> is an enabled capability <function>glIsEnabled</function> returns <constant>GL_TRUE</constant> if <parameter>cap</parameter> is an enabled capability
and returns <constant>GL_FALSE</constant> otherwise. and returns <constant>GL_FALSE</constant> otherwise. Boolean states that are indexed may be tested with <function>glIsEnabledi</function>.
For <function>glIsEnabledi</function>, <parameter>index</parameter> specifies the index of the capability to test. <parameter>index</parameter>
must be between zero and the count of indexed capabilities for <parameter>cap</parameter>.
Initially all capabilities except <constant>GL_DITHER</constant> are disabled; Initially all capabilities except <constant>GL_DITHER</constant> are disabled;
<constant>GL_DITHER</constant> is initially enabled. <constant>GL_DITHER</constant> is initially enabled.
</para> </para>
@ -103,6 +120,22 @@
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry> <citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>
</entry> </entry>
</row> </row>
<row>
<entry align="left">
<constant>GL_DEBUG_OUTPUT</constant>
</entry>
<entry align="left">
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>
</entry>
</row>
<row>
<entry align="left">
<constant>GL_DEBUG_OUTPUT_SYNCHRONOUS</constant>
</entry>
<entry align="left">
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>
</entry>
</row>
<row> <row>
<entry align="left"> <entry align="left">
<constant>GL_DEPTH_TEST</constant> <constant>GL_DEPTH_TEST</constant>
@ -241,7 +274,7 @@
</row> </row>
<row> <row>
<entry align="left"> <entry align="left">
<constant>GL_TEXTURE_CUBEMAP_SEAMLESS</constant> <constant>GL_TEXTURE_CUBE_MAP_SEAMLESS</constant>
</entry> </entry>
<entry align="left"> <entry align="left">
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry> <citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>
@ -256,24 +289,33 @@
<refsect1 id="notes"><title>Notes</title> <refsect1 id="notes"><title>Notes</title>
<para> <para>
If an error is generated, If an error is generated,
<function>glIsEnabled</function> returns <constant>GL_FALSE</constant>. <function>glIsEnabled</function> and <function>glIsEnabledi</function> return <constant>GL_FALSE</constant>.
</para>
<para>
<constant>GL_DEBUG_OUTPUT</constant> and <constant>GL_DEBUG_OUTPUT_SYNCHRONOUS</constant> are available only if the GL version is 4.3 or greater.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>cap</parameter> is not an accepted value. <constant>GL_INVALID_ENUM</constant> is generated if <parameter>cap</parameter> is not an accepted value.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated by <function>glIsEnabledi</function> if <parameter>index</parameter> is outside the
valid range for the indexed state <parameter>cap</parameter>.
</para>
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glDisable</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc. Copyright <trademark class="copyright"></trademark> 2010-2011
Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -38,8 +38,8 @@
</refsect1> </refsect1>
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glIsVertexArray</function> returns <constant>GL_TRUE</constant> if <parameter>array</parameter> is currently the name of a renderbuffer <function>glIsVertexArray</function> returns <constant>GL_TRUE</constant> if <parameter>array</parameter> is currently the name of a vertex array
object. If <parameter>renderbuffer</parameter> is zero, or if <parameter>array</parameter> is not the name of a renderbuffer object, or if an error object. If <parameter>array</parameter> is zero, or if <parameter>array</parameter> is not the name of a vertex array object, or if an error
occurs, <function>glIsVertexArray</function> returns <constant>GL_FALSE</constant>. If <parameter>array</parameter> is a name returned by occurs, <function>glIsVertexArray</function> returns <constant>GL_FALSE</constant>. If <parameter>array</parameter> is a name returned by
<citerefentry><refentrytitle>glGenVertexArrays</refentrytitle></citerefentry>, by that has not yet been bound through a call to <citerefentry><refentrytitle>glGenVertexArrays</refentrytitle></citerefentry>, by that has not yet been bound through a call to
<citerefentry><refentrytitle>glBindVertexArray</refentrytitle></citerefentry>, then the name is not a vertex array object and <citerefentry><refentrytitle>glBindVertexArray</refentrytitle></citerefentry>, then the name is not a vertex array object and
@ -55,7 +55,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -165,7 +165,7 @@
<listitem> <listitem>
<para>The total number of components to capture in any transform feedback varying variable <para>The total number of components to capture in any transform feedback varying variable
is greater than the constant <constant>GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS</constant> is greater than the constant <constant>GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS</constant>
and the buffer mode is <constant>SEPARATE_ATTRIBS</constant>.</para> and the buffer mode is <constant>GL_SEPARATE_ATTRIBS</constant>.</para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>2005</year> <year>2013</year>
<holder>Sams Publishing</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glMapBuffer</refentrytitle> <refentrytitle>glMapBuffer</refentrytitle>
@ -34,11 +34,16 @@
Specifies the target buffer object being mapped. Specifies the target buffer object being mapped.
The symbolic constant must be The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>, <constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_QUERY_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -75,11 +80,15 @@
Specifies the target buffer object being unmapped. Specifies the target buffer object being unmapped.
The symbolic constant must be The symbolic constant must be
<constant>GL_ARRAY_BUFFER</constant>, <constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_DISPATCH_INDIRECT_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_SHADER_STORAGE_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or
<constant>GL_UNIFORM_BUFFER</constant>. <constant>GL_UNIFORM_BUFFER</constant>.
@ -95,6 +104,10 @@
the returned pointer, depending on the specified <parameter>access</parameter> policy. If the GL is unable to the returned pointer, depending on the specified <parameter>access</parameter> policy. If the GL is unable to
map the buffer object's data store, <function>glMapBuffer</function> generates an error and returns map the buffer object's data store, <function>glMapBuffer</function> generates an error and returns
<constant>NULL</constant>. This may occur for system-specific reasons, such as low virtual memory availability. <constant>NULL</constant>. This may occur for system-specific reasons, such as low virtual memory availability.
If no error occurs, the returned pointer will have an alignment of at least <constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant>
basic machine units. The value of <constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant> can be retrieved by calling
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with <parameter>pname</parameter> set to
<constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant> and must be a power of two that is at least 64.
</para> </para>
<para> <para>
If a mapped data store is accessed in a way inconsistent with the specified <parameter>access</parameter> policy, If a mapped data store is accessed in a way inconsistent with the specified <parameter>access</parameter> policy,
@ -128,19 +141,23 @@
Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated,
but results will be undefined and will likely vary across GL implementations. but results will be undefined and will likely vary across GL implementations.
</para> </para>
<para>
Alignment of the returned pointer is guaranteed only if the version
of the GL version is 4.2 or greater. Also, the <constant>GL_ATOMIC_COUNTER_BUFFER</constant>
target is accepted only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are available only if the GL version
is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not
<constant>GL_ARRAY_BUFFER</constant>, one of the accepted targets.
<constant>GL_COPY_READ_BUFFER</constant>,
<constant>GL_COPY_WRITE_BUFFER</constant>,
<constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>,
<constant>GL_PIXEL_UNPACK_BUFFER</constant>,
<constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or
<constant>GL_UNIFORM_BUFFER</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>access</parameter> is not <constant>GL_INVALID_ENUM</constant> is generated if <parameter>access</parameter> is not
@ -183,7 +200,8 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley. Copyright <trademark class="copyright"></trademark> 2005 Addison-Wesley.
Copyright <trademark class="copyright"></trademark> 2010-2011 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -5,7 +5,7 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>2010</year> <year>2013</year>
<holder>Khronos Group</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
@ -67,9 +67,11 @@
<para> <para>
<function>glMapBufferRange</function> maps all or part of the data store of a buffer object into the client's address <function>glMapBufferRange</function> maps all or part of the data store of a buffer object into the client's address
space. <parameter>target</parameter> specifies the target to which the buffer is bound and must be one of <constant>GL_ARRAY_BUFFER</constant>, space. <parameter>target</parameter> specifies the target to which the buffer is bound and must be one of <constant>GL_ARRAY_BUFFER</constant>,
<constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>, <constant>GL_ATOMIC_COUNTER_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_COPY_READ_BUFFER</constant>, <constant>GL_COPY_WRITE_BUFFER</constant>, <constant>GL_DRAW_INDIRECT_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, or <constant>GL_UNIFORM_BUFFER</constant>. <parameter>offset</parameter> and <constant>GL_DISPATCH_INDIRECT_BUFFER</constant>, <constant>GL_ELEMENT_ARRAY_BUFFER</constant>,
<constant>GL_PIXEL_PACK_BUFFER</constant>, <constant>GL_PIXEL_UNPACK_BUFFER</constant>, <constant>GL_QUERY_BUFFER</constant>, <constant>GL_TEXTURE_BUFFER</constant>,
<constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant>, <constant>GL_UNIFORM_BUFFER</constant> or <constant>GL_SHADER_STORAGE_BUFFER</constant>. <parameter>offset</parameter> and
<parameter>length</parameter> indicate the range of data in the buffer object htat is to be mapped, in terms of basic machine units. <parameter>length</parameter> indicate the range of data in the buffer object htat is to be mapped, in terms of basic machine units.
<parameter>access</parameter> is a bitfield containing flags which describe the requested mapping. These flags are described below. <parameter>access</parameter> is a bitfield containing flags which describe the requested mapping. These flags are described below.
</para> </para>
@ -141,10 +143,52 @@
but the result of such previous and any subsequent operations is undefined. but the result of such previous and any subsequent operations is undefined.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<constant>GL_MAP_PERSISTENT_BIT</constant> indicates that the mapping is to be made in a persistent
fassion and that the client intends to hold and use the returned pointer during subsequent GL operation. It is not
an error to call drawing commands (render) while buffers are mapped using this flag. It is an error to
specify this flag if the buffer's data store was not allocated through a call to the <citerefentry><refentrytitle>glBufferStorage</refentrytitle></citerefentry>
command in which the <constant>GL_MAP_PERSISTENT_BIT</constant> was also set.
</para>
</listitem>
<listitem>
<para>
<constant>GL_MAP_COHERENT_BIT</constant> indicates that a persistent mapping is also to be coherent.
Coherent maps guarantee that the effect of writes to a buffer's data store by either the client or server will
eventually become visible to the other without further intervention from the application. In the absence
of this bit, persistent mappings are not coherent and modified ranges of the buffer store must be explicitly
communicated to the GL, either by unmapping the buffer, or through a call to
<citerefentry><refentrytitle>glFlushMappedBufferRange</refentrytitle></citerefentry> or <citerefentry><refentrytitle>glMemoryBarrier</refentrytitle></citerefentry>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</para> </para>
<para> <para>
If an error occurs, <function>glMapBufferRange</function> returns a <code>NULL</code> pointer. If an error occurs, <function>glMapBufferRange</function> returns a <code>NULL</code> pointer.
If no error occurs, the returned pointer will reflect an alignment of at least <constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant>
basic machine units. The value of <constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant> can be retrieved by calling
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with <parameter>pname</parameter> set to
<constant>GL_MIN_MAP_BUFFER_ALIGNMENT</constant> and must be a power of two that is at least 64. Subtracting <parameter>offset</parameter>
from this returned pointed will always produce a multiple of <constant>GL_MIN_MAP_BUFFER_ALINMENT</constant>.
</para>
</refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
Alignment of the returned pointer is guaranteed only if the version
of the GL version is 4.2 or greater. Also, the <constant>GL_ATOMIC_COUNTER_BUFFER</constant>
target is accepted only if the GL version is 4.2 or greater.
</para>
<para>
The <constant>GL_DISPATCH_INDIRECT_BUFFER</constant> and <constant>GL_SHADER_STORAGE_BUFFER</constant> targets are accepted only if the
GL version is 4.3 or greater.
</para>
<para>
The <constant>GL_QUERY_BUFFER</constant> target is available only if the GL version is 4.4 or greater.
</para>
<para>
The <constant>GL_MAP_PERSISTENT_BIT</constant> and <constant>GL_MAP_COHERENT_BIT</constant> flags are available
only if the GL version is 4.4 or greater.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
@ -179,6 +223,13 @@
<constant>GL_MAP_FLUSH_EXPLICIT_BIT</constant> is set and <constant>GL_MAP_WRITE_BIT</constant> is not set. <constant>GL_MAP_FLUSH_EXPLICIT_BIT</constant> is set and <constant>GL_MAP_WRITE_BIT</constant> is not set.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Any of <constant>GL_MAP_READ_BIT</constant>, <constant>GL_MAP_WRITE_BIT</constant>, <constant>GL_MAP_PERSISTENT_BIT</constant>,
or <constant>GL_MAP_COHERENT_BIT</constant> are included in <parameter>access</parameter>, but the same bit
is not included in the buffer's storage flags.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</para> </para>
<para> <para>
@ -190,12 +241,13 @@
<para> <para>
<citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glFlushMappedBufferRange</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glFlushMappedBufferRange</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry> <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glBufferStorage</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glMultiDrawArrays</refentrytitle> <refentrytitle>glMultiDrawArrays</refentrytitle>
@ -23,7 +23,7 @@
<paramdef>GLenum <parameter>mode</parameter></paramdef> <paramdef>GLenum <parameter>mode</parameter></paramdef>
<paramdef>const GLint * <parameter>first</parameter></paramdef> <paramdef>const GLint * <parameter>first</parameter></paramdef>
<paramdef>const GLsizei * <parameter>count</parameter></paramdef> <paramdef>const GLsizei * <parameter>count</parameter></paramdef>
<paramdef>GLsizei <parameter>primcount</parameter></paramdef> <paramdef>GLsizei <parameter>drawcount</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -68,7 +68,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><parameter>primcount</parameter></term> <term><parameter>drawcount</parameter></term>
<listitem> <listitem>
<para> <para>
Specifies the size of the first and count Specifies the size of the first and count
@ -88,7 +88,7 @@
call to <function>glMultiDrawArrays</function>. call to <function>glMultiDrawArrays</function>.
</para> </para>
<para> <para>
<function>glMultiDrawArrays</function> behaves identically to <citerefentry><refentrytitle>glDrawArrays</refentrytitle></citerefentry> except that <parameter>primcount</parameter> <function>glMultiDrawArrays</function> behaves identically to <citerefentry><refentrytitle>glDrawArrays</refentrytitle></citerefentry> except that <parameter>drawcount</parameter>
separate ranges of elements are specified instead. separate ranges of elements are specified instead.
</para> </para>
<para> <para>
@ -118,7 +118,7 @@
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value. <constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>primcount</parameter> is negative. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>drawcount</parameter> is negative.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an
@ -134,7 +134,10 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2010-2013
Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glMultiDrawElements</refentrytitle> <refentrytitle>glMultiDrawElements</refentrytitle>
@ -23,8 +23,8 @@
<paramdef>GLenum <parameter>mode</parameter></paramdef> <paramdef>GLenum <parameter>mode</parameter></paramdef>
<paramdef>const GLsizei * <parameter>count</parameter></paramdef> <paramdef>const GLsizei * <parameter>count</parameter></paramdef>
<paramdef>GLenum <parameter>type</parameter></paramdef> <paramdef>GLenum <parameter>type</parameter></paramdef>
<paramdef>const GLvoid ** <parameter>indices</parameter></paramdef> <paramdef>const GLvoid * const * <parameter>indices</parameter></paramdef>
<paramdef>GLsizei <parameter>primcount</parameter></paramdef> <paramdef>GLsizei <parameter>drawcount</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -79,10 +79,10 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><parameter>primcount</parameter></term> <term><parameter>drawcount</parameter></term>
<listitem> <listitem>
<para> <para>
Specifies the size of the <parameter>count</parameter> array. Specifies the size of the <parameter>count</parameter> and <parameter>indices</parameter> arrays.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -98,7 +98,7 @@
</para> </para>
<para> <para>
<function>glMultiDrawElements</function> is identical in operation to <citerefentry><refentrytitle>glDrawElements</refentrytitle></citerefentry> except that <function>glMultiDrawElements</function> is identical in operation to <citerefentry><refentrytitle>glDrawElements</refentrytitle></citerefentry> except that
<parameter>primcount</parameter> separate lists of elements are specified. <parameter>drawcount</parameter> separate lists of elements are specified.
</para> </para>
<para> <para>
Vertex attributes that are modified by <function>glMultiDrawElements</function> have an Vertex attributes that are modified by <function>glMultiDrawElements</function> have an
@ -120,7 +120,7 @@
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value. <constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>primcount</parameter> is negative. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>drawcount</parameter> is negative.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an
@ -136,7 +136,10 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2010-2013
Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,7 +5,7 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>2010</year> <year>2010-2013</year>
<holder>Khronos Group</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
@ -23,9 +23,9 @@
<paramdef>GLenum <parameter>mode</parameter></paramdef> <paramdef>GLenum <parameter>mode</parameter></paramdef>
<paramdef>const GLsizei *<parameter>count</parameter></paramdef> <paramdef>const GLsizei *<parameter>count</parameter></paramdef>
<paramdef>GLenum <parameter>type</parameter></paramdef> <paramdef>GLenum <parameter>type</parameter></paramdef>
<paramdef>const GLvoid **<parameter>indices</parameter></paramdef> <paramdef>const GLvoid * const *<parameter>indices</parameter></paramdef>
<paramdef>GLsizei <parameter>primcount</parameter></paramdef> <paramdef>GLsizei <parameter>drawcount</parameter></paramdef>
<paramdef>GLint *<parameter>basevertex</parameter></paramdef> <paramdef>const GLint *<parameter>basevertex</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -80,10 +80,10 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term><parameter>primcount</parameter></term> <term><parameter>drawcount</parameter></term>
<listitem> <listitem>
<para> <para>
Specifies the size of the <parameter>count</parameter> array. Specifies the size of the <parameter>count</parameter>, <parameter>indices</parameter> and <parameter>basevertex</parameter> arrays.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -100,11 +100,11 @@
<refsect1 id="description"><title>Description</title> <refsect1 id="description"><title>Description</title>
<para> <para>
<function>glMultiDrawElementsBaseVertex</function> behaves identically to <citerefentry><refentrytitle>glDrawElementsBaseVertex</refentrytitle></citerefentry>, <function>glMultiDrawElementsBaseVertex</function> behaves identically to <citerefentry><refentrytitle>glDrawElementsBaseVertex</refentrytitle></citerefentry>,
except that <parameter>primcount</parameter> separate lists of elements are specifried instead. except that <parameter>drawcount</parameter> separate lists of elements are specifried instead.
</para> </para>
<para> <para>
It has the same effect as: It has the same effect as:
<programlisting> for (int i = 0; i &lt; <parameter>primcount</parameter>; i++) <programlisting> for (int i = 0; i &lt; <parameter>drawcount</parameter>; i++)
if (<parameter>count</parameter>[i] > 0) if (<parameter>count</parameter>[i] > 0)
glDrawElementsBaseVertex(<parameter>mode</parameter>, glDrawElementsBaseVertex(<parameter>mode</parameter>,
<parameter>count</parameter>[i], <parameter>count</parameter>[i],
@ -130,7 +130,7 @@
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value. <constant>GL_INVALID_ENUM</constant> is generated if <parameter>mode</parameter> is not an accepted value.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>primcount</parameter> is negative. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>drawcount</parameter> is negative.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to an

View file

@ -77,7 +77,10 @@
<citerefentry><refentrytitle>glReadPixels</refentrytitle></citerefentry> as well as the unpacking of <citerefentry><refentrytitle>glReadPixels</refentrytitle></citerefentry> as well as the unpacking of
texture patterns (see <citerefentry><refentrytitle>glTexImage1D</refentrytitle></citerefentry>, texture patterns (see <citerefentry><refentrytitle>glTexImage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexImage2D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage3D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexSubImage1D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage2D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage3D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexSubImage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexSubImage2D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexSubImage3D</refentrytitle></citerefentry>). <citerefentry><refentrytitle>glTexSubImage2D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexSubImage3D</refentrytitle></citerefentry>),
<citerefentry><refentrytitle>glCompressedTexImage1D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glCompressedTexImage2D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexImage3D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glCompressedTexSubImage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexSubImage2D</refentrytitle></citerefentry> or <citerefentry><refentrytitle>glCompressedTexSubImage1D</refentrytitle></citerefentry>.
</para> </para>
<para> <para>
<parameter>pname</parameter> is a symbolic constant indicating the parameter to be set, and <parameter>pname</parameter> is a symbolic constant indicating the parameter to be set, and
@ -1404,13 +1407,20 @@
<citerefentry><refentrytitle>glTexImage3D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexImage3D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexSubImage1D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexSubImage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexSubImage2D</refentrytitle></citerefentry>, <citerefentry><refentrytitle>glTexSubImage2D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glTexSubImage3D</refentrytitle></citerefentry> <citerefentry><refentrytitle>glTexSubImage3D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexImage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexImage2D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexImage3D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexSubImage1D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexSubImage2D</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glCompressedTexSubImage1D</refentrytitle></citerefentry>.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc. <trademark class="copyright"></trademark> 2011
Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -67,12 +67,6 @@
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_POINT_SIZE</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_POINT_SIZE</constant>
</para> </para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_POINT_SIZE_MIN</constant>
</para>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_POINT_SIZE_MAX</constant>
</para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_POINT_FADE_THRESHOLD_SIZE</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_POINT_FADE_THRESHOLD_SIZE</constant>
</para> </para>

View file

@ -38,8 +38,9 @@
<constant>GL_BACK_RIGHT</constant>, <constant>GL_BACK_RIGHT</constant>,
<constant>GL_FRONT</constant>, <constant>GL_FRONT</constant>,
<constant>GL_BACK</constant>, <constant>GL_BACK</constant>,
<constant>GL_LEFT</constant>, and <constant>GL_LEFT</constant>,
<constant>GL_RIGHT</constant>. <constant>GL_RIGHT</constant>, and the constants
<constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -60,6 +61,9 @@
<constant>GL_RIGHT</constant> name the front right buffer, and <constant>GL_RIGHT</constant> name the front right buffer, and
<constant>GL_BACK_LEFT</constant> and <constant>GL_BACK_LEFT</constant> and
<constant>GL_BACK</constant> name the back left buffer. <constant>GL_BACK</constant> name the back left buffer.
Further more, the constants <constant>GL_COLOR_ATTACHMENT<emphasis>i</emphasis></constant> may be used to indicate the
<emphasis>i</emphasis><superscript>th</superscript> color attachment where <emphasis>i</emphasis> ranges from zero to the
value of <constant>GL_MAX_COLOR_ATTACHMENTS</constant> minus one.
</para> </para>
<para> <para>
Nonstereo double-buffered configurations have only a front left and a Nonstereo double-buffered configurations have only a front left and a
@ -101,8 +105,9 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006 Silicon Graphics, Inc.
Silicon Graphics, Inc. This document is licensed under the SGI Copyright <trademark class="copyright"></trademark> 2011 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -191,11 +191,6 @@
<listitem> <listitem>
<para> <para>
Stencil values are read from the stencil buffer. Stencil values are read from the stencil buffer.
Each index is converted to fixed point,
shifted left or right depending on the value and sign of <constant>GL_INDEX_SHIFT</constant>,
and added to <constant>GL_INDEX_OFFSET</constant>.
If <constant>GL_MAP_STENCIL</constant> is <constant>GL_TRUE</constant>,
indices are replaced by their mappings in the table <constant>GL_PIXEL_MAP_S_TO_S</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -206,9 +201,7 @@
Depth values are read from the depth buffer. Depth values are read from the depth buffer.
Each component is converted to floating point such that the minimum depth Each component is converted to floating point such that the minimum depth
value maps to 0 and the maximum value maps to 1. value maps to 0 and the maximum value maps to 1.
Each component is then multiplied by <constant>GL_DEPTH_SCALE</constant>, Each component is clamped to the range
added to <constant>GL_DEPTH_BIAS</constant>,
and finally clamped to the range
<inlineequation><mml:math> <inlineequation><mml:math>
<!-- eqn: [0,1]: --> <!-- eqn: [0,1]: -->
<mml:mfenced open="[" close="]"> <mml:mfenced open="[" close="]">
@ -1164,9 +1157,6 @@
</para> </para>
</refsect1> </refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_INDEX_MODE</constant>
</para>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_PIXEL_PACK_BUFFER_BINDING</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_PIXEL_PACK_BUFFER_BINDING</constant>
</para> </para>

View file

@ -20,7 +20,7 @@
<funcsynopsis> <funcsynopsis>
<funcprototype> <funcprototype>
<funcdef>void <function>glSampleCoverage</function></funcdef> <funcdef>void <function>glSampleCoverage</function></funcdef>
<paramdef>GLclampf <parameter>value</parameter></paramdef> <paramdef>GLfloat <parameter>value</parameter></paramdef>
<paramdef>GLboolean <parameter>invert</parameter></paramdef> <paramdef>GLboolean <parameter>invert</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
@ -83,6 +83,15 @@
information, allowing those operations to be performed on each sample. information, allowing those operations to be performed on each sample.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
The type of the <parameter>value</parameter> parameter was
changed from GLclampf to GLfloat. This change is transparent
to user code and is described in detail on the
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
page.
</para>
</refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title> <refsect1 id="associatedgets"><title>Associated Gets</title>
<para> <para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_SAMPLE_COVERAGE_VALUE</constant> <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_SAMPLE_COVERAGE_VALUE</constant>
@ -105,7 +114,8 @@
</refsect1> </refsect1>
<refsect1 id="seealso"><title>See Also</title> <refsect1 id="seealso"><title>See Also</title>
<para> <para>
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry> <citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>removedTypes</refentrytitle></citerefentry>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>

View file

@ -91,6 +91,22 @@
<paramdef>const GLint * <parameter>params</parameter></paramdef> <paramdef>const GLint * <parameter>params</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glSamplerParameterIiv</function></funcdef>
<paramdef>GLuint <parameter>sampler</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>const GLint *<parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glSamplerParameterIuiv</function></funcdef>
<paramdef>GLuint <parameter>sampler</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>const GLuint *<parameter>params</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
<refsect1 id="parameters2"><title>Parameters</title> <refsect1 id="parameters2"><title>Parameters</title>
<variablelist> <variablelist>
@ -498,8 +514,8 @@
<para> <para>
Sets the wrap parameter for texture coordinate Sets the wrap parameter for texture coordinate
<inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>
to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_MIRRORED_REPEAT</constant>, or to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_MIRRORED_REPEAT</constant>,
<constant>GL_REPEAT</constant>. <constant>GL_CLAMP_TO_BORDER</constant> causes the <constant>GL_REPEAT</constant>, or <constant>GL_MIRROR_CLAMP_TO_EDGE</constant>. <constant>GL_CLAMP_TO_BORDER</constant> causes the
<inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>
coordinate to be clamped to the range coordinate to be clamped to the range
<inlineequation><mml:math> <inlineequation><mml:math>
@ -606,6 +622,9 @@
</mml:math></inlineequation> </mml:math></inlineequation>
represents the fractional part of represents the fractional part of
<inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>. <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>.
<constant>GL_MIRROR_CLAMP_TO_EDGE</constant> causes the the <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>
coordinate to be repeated as for <constant>GL_MIRRORED_REPEAT</constant> for one reptition of the texture,
at which point the coordinate to be clamped as in <constant>GL_CLAMP_TO_EDGE</constant>.
Initially, <constant>GL_TEXTURE_WRAP_S</constant> is set to <constant>GL_REPEAT</constant>. Initially, <constant>GL_TEXTURE_WRAP_S</constant> is set to <constant>GL_REPEAT</constant>.
</para> </para>
</listitem> </listitem>
@ -620,8 +639,8 @@
<para> <para>
Sets the wrap parameter for texture coordinate Sets the wrap parameter for texture coordinate
<inlineequation><mml:math><mml:mi mathvariant="italic">t</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">t</mml:mi></mml:math></inlineequation>
to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_MIRRORED_REPEAT</constant>, or to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_MIRRORED_REPEAT</constant>,
<constant>GL_REPEAT</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>. <constant>GL_REPEAT</constant>, or <constant>GL_MIRROR_CLAMP_TO_EDGE</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>.
Initially, <constant>GL_TEXTURE_WRAP_T</constant> is set to <constant>GL_REPEAT</constant>. Initially, <constant>GL_TEXTURE_WRAP_T</constant> is set to <constant>GL_REPEAT</constant>.
</para> </para>
</listitem> </listitem>
@ -632,8 +651,8 @@
<para> <para>
Sets the wrap parameter for texture coordinate Sets the wrap parameter for texture coordinate
<inlineequation><mml:math><mml:mi mathvariant="italic">r</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">r</mml:mi></mml:math></inlineequation>
to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_MIRRORED_REPEAT</constant>, or to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_MIRRORED_REPEAT</constant>,
<constant>GL_REPEAT</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>. <constant>GL_REPEAT</constant>, or <constant>GL_MIRROR_CLAMP_TO_EDGE</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>.
Initially, <constant>GL_TEXTURE_WRAP_R</constant> is set to <constant>GL_REPEAT</constant>. Initially, <constant>GL_TEXTURE_WRAP_R</constant> is set to <constant>GL_REPEAT</constant>.
</para> </para>
</listitem> </listitem>
@ -1091,6 +1110,9 @@
another. Thus, completeness can be considered a function of a sampler object and a texture object bound to a single another. Thus, completeness can be considered a function of a sampler object and a texture object bound to a single
texture unit, rather than a property of the texture object itself. texture unit, rather than a property of the texture object itself.
</para> </para>
<para>
<constant>GL_MIRROR_CLAMP_TO_EDGE</constant> is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>

View file

@ -9,7 +9,7 @@
<holder>Khronos Group</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glScissorArray</refentrytitle> <refentrytitle>glScissorIndexed</refentrytitle>
<manvolnum>3G</manvolnum> <manvolnum>3G</manvolnum>
</refmeta> </refmeta>
<refnamediv> <refnamediv>

View file

@ -22,7 +22,7 @@
<funcdef>void <function>glTexBuffer</function></funcdef> <funcdef>void <function>glTexBuffer</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>internalFormat</parameter></paramdef> <paramdef>GLenum <parameter>internalFormat</parameter></paramdef>
<paramdef>Gluint<parameter>buffer</parameter></paramdef> <paramdef>GLuint <parameter>buffer</parameter></paramdef>
</funcprototype> </funcprototype>
</funcsynopsis> </funcsynopsis>
</refsynopsisdiv> </refsynopsisdiv>
@ -489,7 +489,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -60,39 +60,9 @@
<listitem> <listitem>
<para> <para>
Specifies the number of color components in the texture. Specifies the number of color components in the texture.
Must be one of the following symbolic constants: Must be one of base internal formats given in Table 1,
<constant>GL_COMPRESSED_RED</constant>, one of the sized internal formats given in Table 2, or one
<constant>GL_COMPRESSED_RG</constant>, of the compressed internal formats given in Table 3, below.
<constant>GL_COMPRESSED_RGB</constant>,
<constant>GL_COMPRESSED_RGBA</constant>,
<constant>GL_COMPRESSED_SRGB</constant>,
<constant>GL_COMPRESSED_SRGB_ALPHA</constant>,
<constant>GL_DEPTH_COMPONENT</constant>,
<constant>GL_DEPTH_COMPONENT16</constant>,
<constant>GL_DEPTH_COMPONENT24</constant>,
<constant>GL_DEPTH_COMPONENT32</constant>,
<constant>GL_R3_G3_B2</constant>,
<constant>GL_RED</constant>,
<constant>GL_RG</constant>,
<constant>GL_RGB</constant>,
<constant>GL_RGB4</constant>,
<constant>GL_RGB5</constant>,
<constant>GL_RGB8</constant>,
<constant>GL_RGB10</constant>,
<constant>GL_RGB12</constant>,
<constant>GL_RGB16</constant>,
<constant>GL_RGBA</constant>,
<constant>GL_RGBA2</constant>,
<constant>GL_RGBA4</constant>,
<constant>GL_RGB5_A1</constant>,
<constant>GL_RGBA8</constant>,
<constant>GL_RGB10_A2</constant>,
<constant>GL_RGBA12</constant>,
<constant>GL_RGBA16</constant>,
<constant>GL_SRGB</constant>,
<constant>GL_SRGB8</constant>,
<constant>GL_SRGB_ALPHA</constant>, or
<constant>GL_SRGB8_ALPHA8</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -124,8 +94,17 @@
<constant>GL_RG</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant>, <constant>GL_RGB</constant>,
<constant>GL_BGR</constant>, <constant>GL_BGR</constant>,
<constant>GL_RGBA</constant>, and <constant>GL_RGBA</constant>,
<constant>GL_BGRA</constant>. <constant>GL_BGRA</constant>,
<constant>GL_RED_INTEGER</constant>,
<constant>GL_RG_INTEGER</constant>,
<constant>GL_RGB_INTEGER</constant>,
<constant>GL_BGR_INTEGER</constant>,
<constant>GL_RGBA_INTEGER</constant>,
<constant>GL_BGRA_INTEGER</constant>,
<constant>GL_STENCIL_INDEX</constant>,
<constant>GL_DEPTH_COMPONENT</constant>,
<constant>GL_DEPTH_STENCIL</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -235,9 +214,7 @@
Each element is a single red component. Each element is a single red component.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 0 for green and blue, and 1 for alpha. by attaching 0 for green and blue, and 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -248,9 +225,7 @@
Each element is a single red/green double Each element is a single red/green double
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 0 for blue, and 1 for alpha. by attaching 0 for blue, and 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -266,9 +241,7 @@
Each element is an RGB triple. Each element is an RGB triple.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 1 for alpha. by attaching 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -282,9 +255,7 @@
<listitem> <listitem>
<para> <para>
Each element contains all four components. Each element contains all four components.
Each component is multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -293,9 +264,7 @@
<listitem> <listitem>
<para> <para>
Each element is a single depth value. Each element is a single depth value.
The GL converts it to floating point, multiplies by the signed scale factor The GL converts it to floating point and clamps to the range [0,1].
<constant>GL_DEPTH_SCALE</constant>, adds the signed bias <constant>GL_DEPTH_BIAS</constant>,
and clamps to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -309,6 +278,27 @@
(The representations specified by <constant>GL_RED</constant>, <constant>GL_RG</constant>, (The representations specified by <constant>GL_RED</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant> and <constant>GL_RGBA</constant> must match exactly.) <constant>GL_RGB</constant> and <constant>GL_RGBA</constant> must match exactly.)
</para> </para>
<para>
<parameter>internalFormat</parameter> may be one of the base internal formats shown in
Table 1, below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="baseformattable.xml" />
</para>
<para>
<parameter>internalFormat</parameter> may also be one of the sized internal formats
shown in Table 2, below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="internalformattable.xml" />
</para>
<para>
Finally, <parameter>internalFormat</parameter> may also be one of the generic or compressed
compressed texture formats shown in Table 3 below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="compressedformattable.xml" />
</para>
<para> <para>
If the <parameter>internalFormat</parameter> parameter is one of the generic compressed formats, If the <parameter>internalFormat</parameter> parameter is one of the generic compressed formats,
<constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RG</constant>, <constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RG</constant>,
@ -453,6 +443,10 @@
<function>glTexImage1D</function> specifies the one-dimensional texture for the current texture unit, <function>glTexImage1D</function> specifies the one-dimensional texture for the current texture unit,
specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>. specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX</constant> may be used for <parameter>format</parameter> only if the GL
version is 4.4 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -495,27 +489,7 @@
or greater than <constant>GL_MAX_TEXTURE_SIZE</constant>. or greater than <constant>GL_MAX_TEXTURE_SIZE</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if non-power-of-two textures are not supported and the <parameter>width</parameter> cannot be represented as <constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0.
<inlineequation><mml:math>
<!-- eqn: 2 sup n + 2(border): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some integer value of <emphasis>n</emphasis>.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0 or 1.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>type</parameter> is one of <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>type</parameter> is one of
@ -591,8 +565,9 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006 Silicon Graphics, Inc.
Silicon Graphics, Inc. This document is licensed under the SGI Copyright <trademark class="copyright"></trademark> 2011-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -72,39 +72,9 @@
<listitem> <listitem>
<para> <para>
Specifies the number of color components in the texture. Specifies the number of color components in the texture.
Must be one of the following symbolic constants: Must be one of base internal formats given in Table 1,
<constant>GL_COMPRESSED_RED</constant>, one of the sized internal formats given in Table 2, or one
<constant>GL_COMPRESSED_RG</constant>, of the compressed internal formats given in Table 3, below.
<constant>GL_COMPRESSED_RGB</constant>,
<constant>GL_COMPRESSED_RGBA</constant>,
<constant>GL_COMPRESSED_SRGB</constant>,
<constant>GL_COMPRESSED_SRGB_ALPHA</constant>,
<constant>GL_DEPTH_COMPONENT</constant>,
<constant>GL_DEPTH_COMPONENT16</constant>,
<constant>GL_DEPTH_COMPONENT24</constant>,
<constant>GL_DEPTH_COMPONENT32</constant>,
<constant>GL_R3_G3_B2</constant>,
<constant>GL_RED</constant>,
<constant>GL_RG</constant>,
<constant>GL_RGB</constant>,
<constant>GL_RGB4</constant>,
<constant>GL_RGB5</constant>,
<constant>GL_RGB8</constant>,
<constant>GL_RGB10</constant>,
<constant>GL_RGB12</constant>,
<constant>GL_RGB16</constant>,
<constant>GL_RGBA</constant>,
<constant>GL_RGBA2</constant>,
<constant>GL_RGBA4</constant>,
<constant>GL_RGB5_A1</constant>,
<constant>GL_RGBA8</constant>,
<constant>GL_RGB10_A2</constant>,
<constant>GL_RGBA12</constant>,
<constant>GL_RGBA16</constant>,
<constant>GL_SRGB</constant>,
<constant>GL_SRGB8</constant>,
<constant>GL_SRGB_ALPHA</constant>, or
<constant>GL_SRGB8_ALPHA8</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -148,8 +118,17 @@
<constant>GL_RG</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant>, <constant>GL_RGB</constant>,
<constant>GL_BGR</constant>, <constant>GL_BGR</constant>,
<constant>GL_RGBA</constant>, and <constant>GL_RGBA</constant>,
<constant>GL_BGRA</constant>. <constant>GL_BGRA</constant>,
<constant>GL_RED_INTEGER</constant>,
<constant>GL_RG_INTEGER</constant>,
<constant>GL_RGB_INTEGER</constant>,
<constant>GL_BGR_INTEGER</constant>,
<constant>GL_RGBA_INTEGER</constant>,
<constant>GL_BGRA_INTEGER</constant>,
<constant>GL_STENCIL_INDEX</constant>,
<constant>GL_DEPTH_COMPONENT</constant>,
<constant>GL_DEPTH_STENCIL</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -255,9 +234,7 @@
Each element is a single red component. Each element is a single red component.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 0 for green and blue, and 1 for alpha. by attaching 0 for green and blue, and 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -268,9 +245,7 @@
Each element is a red/green double. Each element is a red/green double.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 0 for blue, and 1 for alpha. by attaching 0 for blue, and 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -286,9 +261,7 @@
Each element is an RGB triple. Each element is an RGB triple.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 1 for alpha. by attaching 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -302,9 +275,7 @@
<listitem> <listitem>
<para> <para>
Each element contains all four components. Each element contains all four components.
Each component is multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -313,9 +284,7 @@
<listitem> <listitem>
<para> <para>
Each element is a single depth value. Each element is a single depth value.
The GL converts it to floating point, multiplies by the signed scale factor The GL converts it to floating point and clamps to the range [0,1].
<constant>GL_DEPTH_SCALE</constant>, adds the signed bias <constant>GL_DEPTH_BIAS</constant>,
and clamps to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -340,6 +309,27 @@
<constant>GL_RG</constant>, <constant>GL_RGB</constant>, <constant>GL_RG</constant>, <constant>GL_RGB</constant>,
and <constant>GL_RGBA</constant> must match exactly.) and <constant>GL_RGBA</constant> must match exactly.)
</para> </para>
<para>
<parameter>internalFormat</parameter> may be one of the base internal formats shown in
Table 1, below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="baseformattable.xml" />
</para>
<para>
<parameter>internalFormat</parameter> may also be one of the sized internal formats
shown in Table 2, below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="internalformattable.xml" />
</para>
<para>
Finally, <parameter>internalFormat</parameter> may also be one of the generic or compressed
compressed texture formats shown in Table 3 below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="compressedformattable.xml" />
</para>
<para> <para>
If the <parameter>internalFormat</parameter> parameter is one of the generic compressed formats, If the <parameter>internalFormat</parameter> parameter is one of the generic compressed formats,
<constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RG</constant>, <constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RG</constant>,
@ -489,6 +479,10 @@
<function>glTexImage2D</function> specifies the two-dimensional texture for the current texture unit, <function>glTexImage2D</function> specifies the two-dimensional texture for the current texture unit,
specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>. specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX</constant> may be used for <parameter>format</parameter> only if the GL
version is 4.4 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -552,27 +546,6 @@
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>width</parameter> or <parameter>height</parameter> is less than 0 <constant>GL_INVALID_VALUE</constant> is generated if <parameter>width</parameter> or <parameter>height</parameter> is less than 0
or greater than <constant>GL_MAX_TEXTURE_SIZE</constant>. or greater than <constant>GL_MAX_TEXTURE_SIZE</constant>.
</para> </para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if non-power-of-two textures are not supported and the <parameter>width</parameter> or <parameter>height</parameter> cannot be represented as
<inlineequation><mml:math>
<!-- eqn: 2 sup k + 2(border): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some
integer value of <emphasis>k</emphasis>.
</para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0.
</para> </para>
@ -664,8 +637,9 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006 Silicon Graphics, Inc.
Silicon Graphics, Inc. This document is licensed under the SGI Copyright <trademark class="copyright"></trademark> 2011-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -5,7 +5,7 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>2010</year> <year>2013</year>
<holder>Khronos Group</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
@ -22,7 +22,7 @@
<funcdef>void <function>glTexImage2DMultisample</function></funcdef> <funcdef>void <function>glTexImage2DMultisample</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLsizei <parameter>samples</parameter></paramdef> <paramdef>GLsizei <parameter>samples</parameter></paramdef>
<paramdef>GLint <parameter>internalformat</parameter></paramdef> <paramdef>GLenum <parameter>internalformat</parameter></paramdef>
<paramdef>GLsizei <parameter>width</parameter></paramdef> <paramdef>GLsizei <parameter>width</parameter></paramdef>
<paramdef>GLsizei <parameter>height</parameter></paramdef> <paramdef>GLsizei <parameter>height</parameter></paramdef>
<paramdef>GLboolean <parameter>fixedsamplelocations</parameter></paramdef> <paramdef>GLboolean <parameter>fixedsamplelocations</parameter></paramdef>
@ -138,7 +138,7 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. Copyright <trademark class="copyright"></trademark> 2010-2013 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999. the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>. <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.

View file

@ -5,8 +5,8 @@
<refmeta> <refmeta>
<refmetainfo> <refmetainfo>
<copyright> <copyright>
<year>1991-2006</year> <year>2013</year>
<holder>Silicon Graphics, Inc.</holder> <holder>Khronos Group</holder>
</copyright> </copyright>
</refmetainfo> </refmetainfo>
<refentrytitle>glTexImage3D</refentrytitle> <refentrytitle>glTexImage3D</refentrytitle>
@ -72,68 +72,9 @@
<listitem> <listitem>
<para> <para>
Specifies the number of color components in the texture. Specifies the number of color components in the texture.
Must be one of the following symbolic constants: Must be one of base internal formats given in Table 1,
<constant>GL_RGBA32F</constant>, one of the sized internal formats given in Table 2, or one
<constant>GL_RGBA32I</constant>, of the compressed internal formats given in Table 3, below.
<constant>GL_RGBA32UI</constant>,
<constant>GL_RGBA16</constant>,
<constant>GL_RGBA16F</constant>,
<constant>GL_RGBA16I</constant>,
<constant>GL_RGBA16UI</constant>,
<constant>GL_RGBA8</constant>,
<constant>GL_RGBA8UI</constant>,
<constant>GL_SRGB8_ALPHA8</constant>,
<constant>GL_RGB10_A2</constant>,
<constant>GL_RGBA10_A2UI</constant>,
<constant>GL_R11_G11_B10F</constant>,
<constant>GL_RG32F</constant>,
<constant>GL_RG32I</constant>,
<constant>GL_RG32UI</constant>,
<constant>GL_RG16</constant>,
<constant>GL_RG16F</constant>,
<constant>GL_RGB16I</constant>,
<constant>GL_RGB16UI</constant>,
<constant>GL_RG8</constant>,
<constant>GL_RG8I</constant>,
<constant>GL_RG8UI</constant>,
<constant>GL_R23F</constant>,
<constant>GL_R32I</constant>,
<constant>GL_R32UI</constant>,
<constant>GL_R16F</constant>,
<constant>GL_R16I</constant>,
<constant>GL_R16UI</constant>,
<constant>GL_R8</constant>,
<constant>GL_R8I</constant>,
<constant>GL_R8UI</constant>,
<constant>GL_RGBA16_UNORM</constant>,
<constant>GL_RGBA8_SNORM</constant>,
<constant>GL_RGB32F</constant>,
<constant>GL_RGB32I</constant>,
<constant>GL_RGB32UI</constant>,
<constant>GL_RGB16_SNORM</constant>,
<constant>GL_RGB16F</constant>,
<constant>GL_RGB16I</constant>,
<constant>GL_RGB16UI</constant>,
<constant>GL_RGB16</constant>,
<constant>GL_RGB8_SNORM</constant>,
<constant>GL_RGB8</constant>,
<constant>GL_RGB8I</constant>,
<constant>GL_RGB8UI</constant>,
<constant>GL_SRGB8</constant>,
<constant>GL_RGB9_E5</constant>,
<constant>GL_RG16_SNORM</constant>,
<constant>GL_RG8_SNORM</constant>,
<constant>GL_COMPRESSED_RG_RGTC2</constant>,
<constant>GL_COMPRESSED_SIGNED_RG_RGTC2</constant>,
<constant>GL_R16_SNORM</constant>,
<constant>GL_R8_SNORM</constant>,
<constant>GL_COMPRESSED_RED_RGTC1</constant>,
<constant>GL_COMPRESSED_SIGNED_RED_RGTC1</constant>,
<constant>GL_DEPTH_COMPONENT32F</constant>,
<constant>GL_DEPTH_COMPONENT24</constant>,
<constant>GL_DEPTH_COMPONENT16</constant>,
<constant>GL_DEPTH32F_STENCIL8</constant>,
<constant>GL_DEPTH24_STENCIL8</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -185,8 +126,17 @@
<constant>GL_RG</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant>, <constant>GL_RGB</constant>,
<constant>GL_BGR</constant>, <constant>GL_BGR</constant>,
<constant>GL_RGBA</constant>, and <constant>GL_RGBA</constant>,
<constant>GL_BGRA</constant>. <constant>GL_BGRA</constant>,
<constant>GL_RED_INTEGER</constant>,
<constant>GL_RG_INTEGER</constant>,
<constant>GL_RGB_INTEGER</constant>,
<constant>GL_BGR_INTEGER</constant>,
<constant>GL_RGBA_INTEGER</constant>,
<constant>GL_BGRA_INTEGER</constant>,
<constant>GL_STENCIL_INDEX</constant>,
<constant>GL_DEPTH_COMPONENT</constant>,
<constant>GL_DEPTH_STENCIL</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -300,9 +250,7 @@
Each element is a single red component. Each element is a single red component.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 0 for green and blue, and 1 for alpha. by attaching 0 for green and blue, and 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -313,9 +261,7 @@
Each element is a red and green pair. Each element is a red and green pair.
The GL converts each to floating point and assembles it into an RGBA element The GL converts each to floating point and assembles it into an RGBA element
by attaching 0 for blue, and 1 for alpha. by attaching 0 for blue, and 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -331,9 +277,7 @@
Each element is an RGB triple. Each element is an RGB triple.
The GL converts it to floating point and assembles it into an RGBA element The GL converts it to floating point and assembles it into an RGBA element
by attaching 1 for alpha. by attaching 1 for alpha.
Each component is then multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -347,9 +291,7 @@
<listitem> <listitem>
<para> <para>
Each element contains all four components. Each element contains all four components.
Each component is multiplied by the signed scale factor <constant>GL_c_SCALE</constant>, Each component is clamped to the range [0,1].
added to the signed bias <constant>GL_c_BIAS</constant>,
and clamped to the range [0,1].
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -363,6 +305,27 @@
(The representations specified by <constant>GL_RED</constant>, <constant>GL_RG</constant>, <constant>GL_RGB</constant>, (The representations specified by <constant>GL_RED</constant>, <constant>GL_RG</constant>, <constant>GL_RGB</constant>,
and <constant>GL_RGBA</constant> must match exactly.) and <constant>GL_RGBA</constant> must match exactly.)
</para> </para>
<para>
<parameter>internalFormat</parameter> may be one of the base internal formats shown in
Table 1, below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="baseformattable.xml" />
</para>
<para>
<parameter>internalFormat</parameter> may also be one of the sized internal formats
shown in Table 2, below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="internalformattable.xml" />
</para>
<para>
Finally, <parameter>internalFormat</parameter> may also be one of the generic or compressed
compressed texture formats shown in Table 3 below
</para>
<para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="compressedformattable.xml" />
</para>
<para> <para>
If the <parameter>internalFormat</parameter> parameter is one of the generic compressed formats, If the <parameter>internalFormat</parameter> parameter is one of the generic compressed formats,
<constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RG</constant>, <constant>GL_COMPRESSED_RED</constant>, <constant>GL_COMPRESSED_RG</constant>,
@ -507,6 +470,10 @@
<function>glTexImage3D</function> specifies the three-dimensional texture for the current texture unit, <function>glTexImage3D</function> specifies the three-dimensional texture for the current texture unit,
specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>. specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX</constant> may be used for <parameter>format</parameter> only if the GL
version is 4.4 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -548,28 +515,7 @@
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>width</parameter>, <parameter>height</parameter>, or <parameter>depth</parameter> is less than 0 or greater than <constant>GL_MAX_TEXTURE_SIZE</constant>. <constant>GL_INVALID_VALUE</constant> is generated if <parameter>width</parameter>, <parameter>height</parameter>, or <parameter>depth</parameter> is less than 0 or greater than <constant>GL_MAX_TEXTURE_SIZE</constant>.
</para> </para>
<para> <para>
<constant>GL_INVALID_VALUE</constant> is generated if non-power-of-two textures are not supported and the <parameter>width</parameter>, <parameter>height</parameter>, or <parameter>depth</parameter> cannot be represented as <constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0.
<inlineequation><mml:math>
<!-- eqn: 2 sup k + 2( border ): -->
<mml:mrow>
<mml:msup><mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&af;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mi mathvariant="italic">border</mml:mi>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math></inlineequation>
for some
integer value of <emphasis>k</emphasis>.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>border</parameter> is not 0 or 1.
</para> </para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>type</parameter> is one of <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>type</parameter> is one of
@ -645,8 +591,9 @@
</refsect1> </refsect1>
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006 Silicon Graphics, Inc.
Silicon Graphics, Inc. This document is licensed under the SGI Copyright <trademark class="copyright"></trademark> 2011-2013 Khronos Group.
This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -22,7 +22,7 @@
<funcdef>void <function>glTexImage3DMultisample</function></funcdef> <funcdef>void <function>glTexImage3DMultisample</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef> <paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLsizei <parameter>samples</parameter></paramdef> <paramdef>GLsizei <parameter>samples</parameter></paramdef>
<paramdef>GLint <parameter>internalformat</parameter></paramdef> <paramdef>GLenum <parameter>internalformat</parameter></paramdef>
<paramdef>GLsizei <parameter>width</parameter></paramdef> <paramdef>GLsizei <parameter>width</parameter></paramdef>
<paramdef>GLsizei <parameter>height</parameter></paramdef> <paramdef>GLsizei <parameter>height</parameter></paramdef>
<paramdef>GLsizei <parameter>depth</parameter></paramdef> <paramdef>GLsizei <parameter>depth</parameter></paramdef>

View file

@ -55,6 +55,7 @@
<para> <para>
Specifies the symbolic name of a single-valued texture parameter. Specifies the symbolic name of a single-valued texture parameter.
<parameter>pname</parameter> can be one of the following: <parameter>pname</parameter> can be one of the following:
<constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant>,
<constant>GL_TEXTURE_BASE_LEVEL</constant>, <constant>GL_TEXTURE_BASE_LEVEL</constant>,
<constant>GL_TEXTURE_COMPARE_FUNC</constant>, <constant>GL_TEXTURE_COMPARE_FUNC</constant>,
<constant>GL_TEXTURE_COMPARE_MODE</constant>, <constant>GL_TEXTURE_COMPARE_MODE</constant>,
@ -138,6 +139,7 @@
<para> <para>
Specifies the symbolic name of a texture parameter. Specifies the symbolic name of a texture parameter.
<parameter>pname</parameter> can be one of the following: <parameter>pname</parameter> can be one of the following:
<constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant>,
<constant>GL_TEXTURE_BASE_LEVEL</constant>, <constant>GL_TEXTURE_BASE_LEVEL</constant>,
<constant>GL_TEXTURE_BORDER_COLOR</constant>, <constant>GL_TEXTURE_BORDER_COLOR</constant>,
<constant>GL_TEXTURE_COMPARE_FUNC</constant>, <constant>GL_TEXTURE_COMPARE_FUNC</constant>,
@ -179,6 +181,23 @@
<constant>GL_TEXTURE_2D_ARRAY</constant>, <constant>GL_TEXTURE_RECTANGLE</constant>, or <constant>GL_TEXTURE_3D</constant>. <constant>GL_TEXTURE_2D_ARRAY</constant>, <constant>GL_TEXTURE_RECTANGLE</constant>, or <constant>GL_TEXTURE_3D</constant>.
The following symbols are accepted in <parameter>pname</parameter>: The following symbols are accepted in <parameter>pname</parameter>:
</para> </para>
<variablelist>
<varlistentry>
<term><constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant></term>
<listitem>
<para>
Specifies the mode used to read from depth-stencil format textures. <parameter>params</parameter>
must be one of <constant>GL_DEPTH_COMPONENT</constant> or <constant>GL_STENCIL_COMPONENT</constant>.
If the depth stencil mode is <constant>GL_DEPTH_COMPONENT</constant>, then reads from depth-stencil
format textures will return the depth component of the texel in
<inlineequation><mml:math><mml:msub><mml:mi>R</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:math></inlineequation> and the stencil component
will be discarded. If the depth stencil mode is <constant>GL_STENCIL_COMPONENT</constant> then
the stencil component is returned in <inlineequation><mml:math><mml:msub><mml:mi>R</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:math></inlineequation>
and the depth component is discarded. The initial value is <constant>GL_DEPTH_COMPONENT</constant>.
</para>
</listitem>
</varlistentry>
</variablelist>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term><constant>GL_TEXTURE_BASE_LEVEL</constant></term> <term><constant>GL_TEXTURE_BASE_LEVEL</constant></term>
@ -1169,8 +1188,8 @@
Sets the wrap parameter for texture coordinate Sets the wrap parameter for texture coordinate
<inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>
to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_CLAMP_TO_BORDER</constant>, to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_CLAMP_TO_BORDER</constant>,
<constant>GL_MIRRORED_REPEAT</constant>, or <constant>GL_MIRRORED_REPEAT</constant>,
<constant>GL_REPEAT</constant>. <constant>GL_CLAMP_TO_EDGE</constant> causes <constant>GL_REPEAT</constant>, or <constant>GL_MIRROR_CLAMP_TO_EDGE</constant>. <constant>GL_CLAMP_TO_EDGE</constant> causes
<inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>
coordinates to be clamped to the coordinates to be clamped to the
range range
@ -1250,6 +1269,9 @@
</mml:math></inlineequation> </mml:math></inlineequation>
represents the fractional part of represents the fractional part of
<inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>. <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>.
<constant>GL_MIRROR_CLAMP_TO_EDGE</constant> causes the the <inlineequation><mml:math><mml:mi mathvariant="italic">s</mml:mi></mml:math></inlineequation>
coordinate to be repeated as for <constant>GL_MIRRORED_REPEAT</constant> for one reptition of the texture,
at which point the coordinate to be clamped as in <constant>GL_CLAMP_TO_EDGE</constant>.
Initially, <constant>GL_TEXTURE_WRAP_S</constant> is set to <constant>GL_REPEAT</constant>. Initially, <constant>GL_TEXTURE_WRAP_S</constant> is set to <constant>GL_REPEAT</constant>.
</para> </para>
</listitem> </listitem>
@ -1265,8 +1287,8 @@
Sets the wrap parameter for texture coordinate Sets the wrap parameter for texture coordinate
<inlineequation><mml:math><mml:mi mathvariant="italic">t</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">t</mml:mi></mml:math></inlineequation>
to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_CLAMP_TO_BORDER</constant>, to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_CLAMP_TO_BORDER</constant>,
<constant>GL_MIRRORED_REPEAT</constant>, or <constant>GL_MIRRORED_REPEAT</constant>, <constant>GL_REPEAT</constant>, or
<constant>GL_REPEAT</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>. <constant>GL_MIRROR_CLAMP_TO_EDGE</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>.
Initially, <constant>GL_TEXTURE_WRAP_T</constant> is set to <constant>GL_REPEAT</constant>. Initially, <constant>GL_TEXTURE_WRAP_T</constant> is set to <constant>GL_REPEAT</constant>.
</para> </para>
</listitem> </listitem>
@ -1282,8 +1304,8 @@
Sets the wrap parameter for texture coordinate Sets the wrap parameter for texture coordinate
<inlineequation><mml:math><mml:mi mathvariant="italic">r</mml:mi></mml:math></inlineequation> <inlineequation><mml:math><mml:mi mathvariant="italic">r</mml:mi></mml:math></inlineequation>
to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_CLAMP_TO_BORDER</constant>, to either <constant>GL_CLAMP_TO_EDGE</constant>, <constant>GL_CLAMP_TO_BORDER</constant>,
<constant>GL_MIRRORED_REPEAT</constant>, or <constant>GL_MIRRORED_REPEAT</constant>, <constant>GL_REPEAT</constant>, or
<constant>GL_REPEAT</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>. <constant>GL_MIRROR_CLAMP_TO_EDGE</constant>. See the discussion under <constant>GL_TEXTURE_WRAP_S</constant>.
Initially, <constant>GL_TEXTURE_WRAP_R</constant> is set to <constant>GL_REPEAT</constant>. Initially, <constant>GL_TEXTURE_WRAP_R</constant> is set to <constant>GL_REPEAT</constant>.
</para> </para>
</listitem> </listitem>
@ -1311,6 +1333,12 @@
<function>glTexParameter</function> specifies the texture parameters for the active texture unit, specified <function>glTexParameter</function> specifies the texture parameters for the active texture unit, specified
by calling <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>. by calling <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>.
</para> </para>
<para>
<constant>GL_DEPTH_STENCIL_TEXTURE_MODE</constant> is available only if the GL version is 4.3 or greater.
</para>
<para>
<constant>GL_MIRROR_CLAMP_TO_EDGE</constant> is available only if the GL version is 4.4 or greater.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -1352,7 +1380,9 @@
<refsect1 id="Copyright"><title>Copyright</title> <refsect1 id="Copyright"><title>Copyright</title>
<para> <para>
Copyright <trademark class="copyright"></trademark> 1991-2006 Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI Silicon Graphics, Inc.
Copyright <trademark class="copyright"></trademark> 2012-2013
Khronos Group. This document is licensed under the SGI
Free Software B License. For details, see Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>. <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para> </para>

View file

@ -80,8 +80,9 @@
<constant>GL_RG</constant>, <constant>GL_RG</constant>,
<constant>GL_RGB</constant>, <constant>GL_RGB</constant>,
<constant>GL_BGR</constant>, <constant>GL_BGR</constant>,
<constant>GL_RGBA</constant>, and <constant>GL_RGBA</constant>,
<constant>GL_BGRA</constant>. <constant>GL_DEPTH_COMPONENT</constant>, and
<constant>GL_STENCIL_INDEX</constant>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -165,6 +166,10 @@
<function>glTexSubImage1D</function> specifies a one-dimensional subtexture for the current texture unit, <function>glTexSubImage1D</function> specifies a one-dimensional subtexture for the current texture unit,
specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>. specified with <citerefentry><refentrytitle>glActiveTexture</refentrytitle></citerefentry>.
</para> </para>
<para>
<constant>GL_STENCIL_INDEX</constant> is accepted for <parameter>format</parameter> only if the GL version
is 4.4 or higher.
</para>
</refsect1> </refsect1>
<refsect1 id="errors"><title>Errors</title> <refsect1 id="errors"><title>Errors</title>
<para> <para>
@ -265,6 +270,10 @@
<constant>GL_UNSIGNED_INT_2_10_10_10_REV</constant> <constant>GL_UNSIGNED_INT_2_10_10_10_REV</constant>
and <parameter>format</parameter> is neither <constant>GL_RGBA</constant> nor <constant>GL_BGRA</constant>. and <parameter>format</parameter> is neither <constant>GL_RGBA</constant> nor <constant>GL_BGRA</constant>.
</para> </para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if <parameter>format</parameter> is <constant>GL_STENCIL_INDEX</constant>
and the base internal format is not <constant>GL_STENCIL_INDEX</constant>.
</para>
<para> <para>
<constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to the <constant>GL_INVALID_OPERATION</constant> is generated if a non-zero buffer object name is bound to the
<constant>GL_PIXEL_UNPACK_BUFFER</constant> target and the buffer object's data store is currently mapped. <constant>GL_PIXEL_UNPACK_BUFFER</constant> target and the buffer object's data store is currently mapped.

Some files were not shown because too many files have changed in this diff Show more