3b0ab922b1ac33459d40f6913baa6942afd185d8
[clinton/guile-figl.git] / upstream-man-pages / man2 / glEnableVertexAttribArray.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
3 "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
4 <refentry id="glEnableVertexAttribArray">
5 <refmeta>
6 <refentrytitle>glEnableVertexAttribArray</refentrytitle>
7 <manvolnum>3G</manvolnum>
8 </refmeta>
9 <refnamediv>
10 <refdescriptor>glEnableVertexAttribArray</refdescriptor>
11 <refname>glEnableVertexAttribArray</refname>
12 <refname>glDisableVertexAttribArray</refname>
13 <refpurpose>Enable or disable a generic vertex attribute array</refpurpose>
14 </refnamediv>
15 <refsynopsisdiv><title>C Specification</title>
16 <funcsynopsis>
17 <funcprototype>
18 <funcdef>void <function>glEnableVertexAttribArray</function></funcdef>
19 <paramdef>GLuint <parameter>index</parameter></paramdef>
20 </funcprototype>
21 <funcprototype>
22 <funcdef>void <function>glDisableVertexAttribArray</function></funcdef>
23 <paramdef>GLuint <parameter>index</parameter></paramdef>
24 </funcprototype>
25 </funcsynopsis>
26 </refsynopsisdiv>
27 <refsect1 id="parameters"><title>Parameters</title>
28 <variablelist>
29 <varlistentry>
30 <term><parameter>index</parameter></term>
31 <listitem>
32 <para>Specifies the index of the generic vertex
33 attribute to be enabled or disabled.</para>
34 </listitem>
35 </varlistentry>
36 </variablelist>
37 </refsect1>
38 <refsect1 id="description"><title>Description</title>
39 <para><function>glEnableVertexAttribArray</function> enables the
40 generic vertex attribute array specified by
41 <parameter>index</parameter>.
42 <function>glDisableVertexAttribArray</function> disables the
43 generic vertex attribute array specified by
44 <parameter>index</parameter>. By default, all client-side
45 capabilities are disabled, including all generic vertex
46 attribute arrays. If enabled, the values in the generic vertex
47 attribute array will be accessed and used for rendering when
48 calls are made to vertex array commands such as
49 <citerefentry><refentrytitle>glDrawArrays</refentrytitle></citerefentry>,
50 <citerefentry><refentrytitle>glDrawElements</refentrytitle></citerefentry>,
51 <citerefentry><refentrytitle>glDrawRangeElements</refentrytitle></citerefentry>,
52 <citerefentry><refentrytitle>glArrayElement</refentrytitle></citerefentry>,
53 <citerefentry><refentrytitle>glMultiDrawElements</refentrytitle></citerefentry>,
54 or
55 <citerefentry><refentrytitle>glMultiDrawArrays</refentrytitle></citerefentry>.</para>
56 </refsect1>
57 <refsect1 id="notes"><title>Notes</title>
58 <para><function>glEnableVertexAttribArray</function> and
59 <function>glDisableVertexAttribArray </function> are available
60 only if the GL version is 2.0 or greater.</para>
61 </refsect1>
62 <refsect1 id="errors"><title>Errors</title>
63 <para><constant>GL_INVALID_VALUE</constant> is generated if
64 <parameter>index</parameter> is greater than or equal to
65 <constant>GL_MAX_VERTEX_ATTRIBS</constant>.</para>
66
67 <para><constant>GL_INVALID_OPERATION</constant> is generated if either
68 <function>glEnableVertexAttribArray </function> or
69 <function>glDisableVertexAttribArray </function> is executed
70 between the execution of
71 <citerefentry><refentrytitle>glBegin</refentrytitle></citerefentry>
72 and the corresponding execution of
73 <citerefentry><refentrytitle>glEnd</refentrytitle></citerefentry>.</para>
74 </refsect1>
75 <refsect1 id="associatedgets"><title>Associated Gets</title>
76 <para><citerefentry><refentrytitle>glGet</refentrytitle></citerefentry>
77 with argument <constant>GL_MAX_VERTEX_ATTRIBS</constant></para>
78
79 <para><citerefentry><refentrytitle>glGetVertexAttrib</refentrytitle></citerefentry>
80 with arguments <parameter>index</parameter> and
81 <constant>GL_VERTEX_ATTRIB_ARRAY_ENABLED</constant>
82 <parameter></parameter></para>
83
84 <para><citerefentry><refentrytitle>glGetVertexAttribPointerv</refentrytitle></citerefentry>
85 with arguments <parameter>index</parameter> and
86 <constant>GL_VERTEX_ATTRIB_ARRAY_POINTER</constant></para>
87 </refsect1>
88 <refsect1 id="seealso"><title>See Also</title>
89 <para><citerefentry><refentrytitle>glArrayElement</refentrytitle></citerefentry>,
90 <citerefentry><refentrytitle>glBindAttribLocation</refentrytitle></citerefentry>,
91 <citerefentry><refentrytitle>glDrawArrays</refentrytitle></citerefentry>,
92 <citerefentry><refentrytitle>glDrawElements</refentrytitle></citerefentry>,
93 <citerefentry><refentrytitle>glDrawRangeElements</refentrytitle></citerefentry>,
94 <citerefentry><refentrytitle>glMultiDrawElements</refentrytitle></citerefentry>,
95 <citerefentry><refentrytitle>glPopClientAttrib</refentrytitle></citerefentry>,
96 <citerefentry><refentrytitle>glPushClientAttrib</refentrytitle></citerefentry>,
97 <citerefentry><refentrytitle>glVertexAttrib</refentrytitle></citerefentry>,
98 <citerefentry><refentrytitle>glVertexAttribPointer</refentrytitle></citerefentry>
99 </para>
100 </refsect1>
101 <refsect1 id="Copyright"><title>Copyright</title>
102 <para>
103 Copyright <trademark class="copyright"></trademark> 2003-2005 3Dlabs Inc. Ltd.
104 This material may be distributed subject to the terms and conditions set forth in
105 the Open Publication License, v 1.0, 8 June 1999.
106 <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.
107 </para>
108 </refsect1>
109 </refentry>