include more low-level bindings
[clinton/guile-figl.git] / upstream-man-pages / man3 / glBindBufferBase.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="glBindBufferBase">
5 <refmeta>
6 <refmetainfo>
7 <copyright>
8 <year>2010</year>
9 <holder>Khronos Group</holder>
10 </copyright>
11 </refmetainfo>
12 <refentrytitle>glBindBufferBase</refentrytitle>
13 <manvolnum>3G</manvolnum>
14 </refmeta>
15 <refnamediv>
16 <refname>glBindBufferBase</refname>
17 <refpurpose>bind a buffer object to an indexed buffer target</refpurpose>
18 </refnamediv>
19 <refsynopsisdiv><title>C Specification</title>
20 <funcsynopsis>
21 <funcprototype>
22 <funcdef>void <function>glBindBufferBase</function></funcdef>
23 <paramdef>GLenum <parameter>target</parameter></paramdef>
24 <paramdef>GLuint <parameter>index</parameter></paramdef>
25 <paramdef>GLuint <parameter>buffer</parameter></paramdef>
26 </funcprototype>
27 </funcsynopsis>
28 </refsynopsisdiv>
29 <refsect1 id="parameters"><title>Parameters</title>
30 <variablelist>
31 <varlistentry>
32 <term><parameter>target</parameter></term>
33 <listitem>
34 <para>
35 Specify the target of the bind operation. <parameter>target</parameter> must be
36 either <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>.
37 </para>
38 </listitem>
39 </varlistentry>
40 <varlistentry>
41 <term><parameter>index</parameter></term>
42 <listitem>
43 <para>
44 Specify the index of the binding point within the array specified by <parameter>target</parameter>.
45 </para>
46 </listitem>
47 </varlistentry>
48 <varlistentry>
49 <term><parameter>buffer</parameter></term>
50 <listitem>
51 <para>
52 The name of a buffer object to bind to the specified binding point.
53 </para>
54 </listitem>
55 </varlistentry>
56 </variablelist>
57 </refsect1>
58 <refsect1 id="description"><title>Description</title>
59 <para>
60 <function>glBindBufferBase</function> binds the buffer object <parameter>buffer</parameter>
61 to the binding point at index <parameter>index</parameter> of the array of targets specified
62 by <parameter>target</parameter>. Each <parameter>target</parameter> represents an indexed
63 array of buffer binding points, as well as a single general binding point that can be used by
64 other buffer manipulation functions such as <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>
65 or <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>. In addition to binding
66 <parameter>buffer</parameter> to the indexed buffer binding target, <function>glBindBufferBase</function>
67 also binds <parameter>buffer</parameter> to the generic buffer binding point specified by <parameter>target</parameter>.
68 </para>
69 </refsect1>
70 <refsect1 id="notes"><title>Notes</title>
71 <para>
72 Calling <function>glBindBufferBase</function> is equivalent to calling
73 <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry> with <parameter>offset</parameter>
74 zero and <parameter>size</parameter> equal to the size of the buffer.
75 </para>
76 </refsect1>
77 <refsect1 id="errors"><title>Errors</title>
78 <para>
79 <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not
80 <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>.
81 </para>
82 <para>
83 <constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater
84 than or equal to the number of <parameter>target</parameter>-specific indexed binding points.
85 </para>
86 <para>
87 <constant>GL_INVALID_VALUE</constant> is generated if <parameter>buffer</parameter> does
88 not have an associated data store, or if the size of that store is zero.
89 </para>
90 </refsect1>
91 <refsect1 id="seealso"><title>See Also</title>
92 <para>
93 <citerefentry><refentrytitle>glGenBuffers</refentrytitle></citerefentry>,
94 <citerefentry><refentrytitle>glDeleteBuffers</refentrytitle></citerefentry>,
95 <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>,
96 <citerefentry><refentrytitle>glBindBufferRange</refentrytitle></citerefentry>,
97 <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>,
98 <citerefentry><refentrytitle>glUnmapBuffer</refentrytitle></citerefentry>,
99 </para>
100 </refsect1> <refsect1 id="Copyright"><title>Copyright</title>
101 <para>
102 Copyright <trademark class="copyright"></trademark> 2010 Khronos Group.
103 This material may be distributed subject to the terms and conditions set forth in
104 the Open Publication License, v 1.0, 8 June 1999.
105 <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.
106 </para>
107 </refsect1>
108 </refentry>