<parameter>level</parameter> must be greater than or equal to zero and be
less than the base 2 logarithm of the maximum texture width, height, or depth.
<parameter>xoffset</parameter>, <parameter>yoffset</parameter> and <parameter>zoffset</parameter>
must be greater than or equal to zero and be less than the width, height or depth
of the image, respectively. Furthermore, <parameter>xoffset</parameter> + <parameter>width</parameter>,
<parameter>yoffset</parameter> + <parameter>height</parameter>, and
<parameter>zoffset</parameter> + <parameter>depth</parameter> must be less
than or equal to the width, height or depth of the image, respectively.
</para>
<para>
For textures of targets <constant>GL_TEXTURE_RECTANGLE</constant>, <constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_2D_MULTISAMPLE</constant>, or
<constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant>, level must be zero.
</para>
</refsect1>
<refsect1id="errors"><title>Errors</title>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>xoffset</parameter>,
<parameter>yoffset</parameter> or <parameter>zoffset</parameter> is less than zero,
or if any of them is greater than the size of the image in the corresponding dimension.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>level</parameter> is
less than zero or if it is greater or equal to the base 2 logarithm of the maximum texture width, height, or depth.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if the target of <parameter>texture</parameter>
is any of <constant>GL_TEXTURE_RECTANGLE</constant>, <constant>GL_TEXTURE_BUFFER</constant>, <constant>GL_TEXTURE_2D_MULTISAMPLE</constant>, or
<constant>GL_TEXTURE_2D_MULTISAMPLE_ARRAY</constant> and <parameter>level</parameter> is not zero.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>texture</parameter> is not the