<function>glClearBufferSubData</function> fills a specified region of a buffer object's
data store with data from client memory. <parameter>offset</parameter> and <parameter>size</parameter>
demark the extent of the region within the data store of the buffer object bound to
<parameter>target</parameter> to fill with data. Data, initially supplied in a format
specified by <parameter>format</parameter> in data type <parameter>type</parameter> is
read from the memory address given by <parameter>data</parameter> and converted into
the internal representation given by <parameter>internalforamt</parameter>.
This converted data is then replicated throughout the specified region of the buffer object's
data store.
</para>
<para>
If <parameter>data</parameter> is NULL, then the subrange of the buffer's data store
is filled with zeros.
</para>
</refsect1>
<refsect1id="errors"><title>Errors</title>
<para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> not one of the generic buffer binding targets.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if no buffer is bound to <parameter>target</parameter>.
</para>
<para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>internalformat</parameter> is not a sized internal format.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>offset</parameter> or <parameter>range</parameter> are not multiples of
the number of basic machine units per-element for the internal format specified by
<parameter>internalformat</parameter>.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>offset</parameter> or <parameter>size</parameter> is less than zero, or if
<parameter>offset</parameter> + <parameter>size</parameter> is greater than the value of <constant>GL_BUFFER_SIZE</constant> for the buffer bound to <parameter>target</parameter>.
</para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if any part of the specified buffer range is
mapped with <citerefentry><refentrytitle>glMapBufferRange</refentrytitle></citerefentry> or <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>.