1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd">
2 <!-- saved from url=(0013)about:internet -->
3 <?xml-stylesheet type=
"text/xsl" href=
"mathml.xsl"?><html xmlns=
"http://www.w3.org/1999/xhtml" xmlns:
pref=
"http://www.w3.org/2002/Math/preference" pref:
renderer=
"mathplayer-dl"><head><meta http-equiv=
"Content-Type" content=
"text/html; charset=UTF-8" /><title>glCopyTexSubImage3D
</title><meta name=
"generator" content=
"DocBook XSL Stylesheets V1.73.2" /></head><body><div class=
"refentry" lang=
"en" xml:
lang=
"en"><a id=
"glCopyTexSubImage3D"></a><div class=
"titlepage"></div><div class=
"refnamediv"><h2>Name
</h2><p>glCopyTexSubImage3D — copy a three-dimensional texture subimage
</p></div><div class=
"refsynopsisdiv"><h2>C Specification
</h2><div class=
"funcsynopsis"><table border=
"0" summary=
"Function synopsis" cellspacing=
"0" cellpadding=
"0"><tr><td><code class=
"funcdef">void
<b class=
"fsfunc">glCopyTexSubImage3D
</b>(
</code></td><td>GLenum
</td><td><var class=
"pdparam">target
</var>,
</td></tr><tr><td> </td><td>GLint
</td><td><var class=
"pdparam">level
</var>,
</td></tr><tr><td> </td><td>GLint
</td><td><var class=
"pdparam">xoffset
</var>,
</td></tr><tr><td> </td><td>GLint
</td><td><var class=
"pdparam">yoffset
</var>,
</td></tr><tr><td> </td><td>GLint
</td><td><var class=
"pdparam">zoffset
</var>,
</td></tr><tr><td> </td><td>GLint
</td><td><var class=
"pdparam">x
</var>,
</td></tr><tr><td> </td><td>GLint
</td><td><var class=
"pdparam">y
</var>,
</td></tr><tr><td> </td><td>GLsizei
</td><td><var class=
"pdparam">width
</var>,
</td></tr><tr><td> </td><td>GLsizei
</td><td><var class=
"pdparam">height
</var><code>)
</code>;
</td></tr></table></div></div><p>
4 </p><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"parameters"></a><h2>Parameters
</h2><div class=
"variablelist"><dl><dt><span class=
"term"><em class=
"parameter"><code>target
</code></em></span></dt><dd><p>
5 Specifies the target texture.
6 Must be
<code class=
"constant">GL_TEXTURE_3D
</code>
7 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>level
</code></em></span></dt><dd><p>
8 Specifies the level-of-detail number.
9 Level
0 is the base image level.
10 Level
<span class=
"emphasis"><em>n
</em></span> is the
<span class=
"emphasis"><em>n
</em></span>th mipmap reduction image.
11 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>xoffset
</code></em></span></dt><dd><p>
12 Specifies a texel offset in the x direction within the texture array.
13 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>yoffset
</code></em></span></dt><dd><p>
14 Specifies a texel offset in the y direction within the texture array.
15 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>zoffset
</code></em></span></dt><dd><p>
16 Specifies a texel offset in the z direction within the texture array.
17 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>x
</code></em>,
</span><span class=
"term"><em class=
"parameter"><code>y
</code></em></span></dt><dd><p>
18 Specify the window coordinates of the lower left corner
19 of the rectangular region of pixels to be copied.
20 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>width
</code></em></span></dt><dd><p>
21 Specifies the width of the texture subimage.
22 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>height
</code></em></span></dt><dd><p>
23 Specifies the height of the texture subimage.
24 </p></dd></dl></div></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"description"></a><h2>Description
</h2><p>
25 <code class=
"function">glCopyTexSubImage3D
</code> replaces a rectangular portion of a three-dimensional
26 texture image with pixels from the current
<code class=
"constant">GL_READ_BUFFER
</code> (rather
27 than from main memory, as is the case for
<a class=
"citerefentry" href=
"glTexSubImage3D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexSubImage3D
</span></span></a>).
29 The screen-aligned pixel rectangle with lower left corner at
30 (
<em class=
"parameter"><code>x
</code></em>,\
<em class=
"parameter"><code>y
</code></em>) and with
31 width
<em class=
"parameter"><code>width
</code></em> and height
<em class=
"parameter"><code>height
</code></em> replaces the portion of the
32 texture array with x indices
<em class=
"parameter"><code>xoffset
</code></em> through
33 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
36 <mml:mi mathvariant=
"italic">xoffset
</mml:mi>
38 <mml:mi mathvariant=
"italic">width
</mml:mi>
43 inclusive, and y indices
<em class=
"parameter"><code>yoffset
</code></em> through
44 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
47 <mml:mi mathvariant=
"italic">yoffset
</mml:mi>
49 <mml:mi mathvariant=
"italic">height
</mml:mi>
54 inclusive, at z index
<em class=
"parameter"><code>zoffset
</code></em> and at the mipmap level specified by
<em class=
"parameter"><code>level
</code></em>.
56 The pixels in the rectangle are processed exactly as if
57 <a class=
"citerefentry" href=
"glCopyPixels.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glCopyPixels
</span></span></a> had been called, but the process stops just before
59 At this point, all pixel component values are clamped to the range
60 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
62 <mml:mfenced open=
"[" close=
"]">
67 and then converted to the texture's internal format for storage in the texel
70 The destination rectangle in the texture array may not include any texels
71 outside the texture array as it was originally specified.
72 It is not an error to specify a subtexture with zero width or height, but
73 such a specification has no effect.
75 If any of the pixels within the specified rectangle of the current
76 <code class=
"constant">GL_READ_BUFFER
</code> are outside the read window associated with the current
77 rendering context, then the values obtained for those pixels are undefined.
79 No change is made to the
<span class=
"emphasis"><em>internalformat
</em></span>,
<span class=
"emphasis"><em>width
</em></span>,
80 <span class=
"emphasis"><em>height
</em></span>,
<span class=
"emphasis"><em>depth
</em></span>, or
<span class=
"emphasis"><em>border
</em></span> parameters of the specified texture
81 array or to texel values outside the specified subregion.
82 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"notes"></a><h2>Notes
</h2><p>
83 <code class=
"function">glCopyTexSubImage3D
</code> is available only if the GL version is
1.2 or greater.
85 Texturing has no effect in color index mode.
87 <a class=
"citerefentry" href=
"glPixelStore.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPixelStore
</span></span></a> and
<a class=
"citerefentry" href=
"glPixelTransfer.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPixelTransfer
</span></span></a> modes affect texture images
88 in exactly the way they affect
<a class=
"citerefentry" href=
"glDrawPixels.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glDrawPixels
</span></span></a>.
90 When the
<code class=
"code">ARB_imaging
</code> extension is supported, the RGBA components
91 copied from the framebuffer may be processed by the imaging pipeline, as
92 if they were a two-dimensional texture. See
<a class=
"citerefentry" href=
"glTexImage2D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexImage2D
</span></span></a> for
94 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"errors"></a><h2>Errors
</h2><p>
95 <code class=
"constant">GL_INVALID_ENUM
</code> is generated if /
<em class=
"parameter"><code>target
</code></em> is not
<code class=
"constant">GL_TEXTURE_3D
</code>.
97 <code class=
"constant">GL_INVALID_OPERATION
</code> is generated if the texture array has not
98 been defined by a previous
<a class=
"citerefentry" href=
"glTexImage3D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexImage3D
</span></span></a> operation.
100 <code class=
"constant">GL_INVALID_VALUE
</code> is generated if
<em class=
"parameter"><code>level
</code></em> is less than
0.
102 <code class=
"constant">GL_INVALID_VALUE
</code> may be generated if
103 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
106 <mml:mi mathvariant=
"italic">level
</mml:mi>
107 <mml:mo>></mml:mo>
109 <mml:msub><mml:mi mathvariant=
"italic">log
</mml:mi>
113 <mml:mfenced open=
"(" close=
")">
114 <mml:mi mathvariant=
"italic">max
</mml:mi>
120 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">max
</mml:mi></mml:math>
121 is the returned value of
<code class=
"constant">GL_MAX_3D_TEXTURE_SIZE
</code>.
123 <code class=
"constant">GL_INVALID_VALUE
</code> is generated if
124 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
127 <mml:mi mathvariant=
"italic">xoffset
</mml:mi>
128 <mml:mo><</mml:mo>
131 <mml:mi mathvariant=
"italic">b
</mml:mi>
135 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
138 <mml:mfenced open=
"(" close=
")">
140 <mml:mi mathvariant=
"italic">xoffset
</mml:mi>
142 <mml:mi mathvariant=
"italic">width
</mml:mi>
145 <mml:mo>></mml:mo>
146 <mml:mfenced open=
"(" close=
")">
148 <mml:mi mathvariant=
"italic">w
</mml:mi>
150 <mml:mi mathvariant=
"italic">b
</mml:mi>
155 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
158 <mml:mi mathvariant=
"italic">yoffset
</mml:mi>
159 <mml:mo><</mml:mo>
162 <mml:mi mathvariant=
"italic">b
</mml:mi>
166 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
169 <mml:mfenced open=
"(" close=
")">
171 <mml:mi mathvariant=
"italic">yoffset
</mml:mi>
173 <mml:mi mathvariant=
"italic">height
</mml:mi>
176 <mml:mo>></mml:mo>
177 <mml:mfenced open=
"(" close=
")">
179 <mml:mi mathvariant=
"italic">h
</mml:mi>
181 <mml:mi mathvariant=
"italic">b
</mml:mi>
186 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
189 <mml:mi mathvariant=
"italic">zoffset
</mml:mi>
190 <mml:mo><</mml:mo>
193 <mml:mi mathvariant=
"italic">b
</mml:mi>
198 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
201 <mml:mfenced open=
"(" close=
")">
203 <mml:mi mathvariant=
"italic">zoffset
</mml:mi>
208 <mml:mo>></mml:mo>
209 <mml:mfenced open=
"(" close=
")">
211 <mml:mi mathvariant=
"italic">d
</mml:mi>
213 <mml:mi mathvariant=
"italic">b
</mml:mi>
219 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">w
</mml:mi></mml:math>
220 is the
<code class=
"constant">GL_TEXTURE_WIDTH
</code>,
221 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">h
</mml:mi></mml:math>
222 is the
<code class=
"constant">GL_TEXTURE_HEIGHT
</code>,
223 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">d
</mml:mi></mml:math>
224 is the
<code class=
"constant">GL_TEXTURE_DEPTH
</code>,
226 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">b
</mml:mi></mml:math>
227 is the
<code class=
"constant">GL_TEXTURE_BORDER
</code>
228 of the texture image being modified.
230 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">w
</mml:mi></mml:math>,
231 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">h
</mml:mi></mml:math>,
233 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">d
</mml:mi></mml:math>
234 include twice the border width.
236 <code class=
"constant">GL_INVALID_OPERATION
</code> is generated if
<code class=
"function">glCopyTexSubImage3D
</code> is executed
237 between the execution of
<a class=
"citerefentry" href=
"glBegin.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glBegin
</span></span></a> and the corresponding
238 execution of
<a class=
"citerefentry" href=
"glEnd.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glEnd
</span></span></a>.
239 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"associatedgets"></a><h2>Associated Gets
</h2><p>
240 <a class=
"citerefentry" href=
"glGetTexImage.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glGetTexImage
</span></span></a>
242 <a class=
"citerefentry" href=
"glIsEnabled.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glIsEnabled
</span></span></a> with argument
<code class=
"constant">GL_TEXTURE_3D
</code>
243 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"seealso"></a><h2>See Also
</h2><p>
244 <a class=
"citerefentry" href=
"glCopyPixels.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glCopyPixels
</span></span></a>,
245 <a class=
"citerefentry" href=
"glCopyTexImage1D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glCopyTexImage1D
</span></span></a>,
246 <a class=
"citerefentry" href=
"glCopyTexImage2D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glCopyTexImage2D
</span></span></a>,
247 <a class=
"citerefentry" href=
"glCopyTexSubImage1D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glCopyTexSubImage1D
</span></span></a>,
248 <a class=
"citerefentry" href=
"glCopyTexSubImage2D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glCopyTexSubImage2D
</span></span></a>,
249 <a class=
"citerefentry" href=
"glPixelStore.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPixelStore
</span></span></a>,
250 <a class=
"citerefentry" href=
"glPixelTransfer.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPixelTransfer
</span></span></a>,
251 <a class=
"citerefentry" href=
"glReadBuffer.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glReadBuffer
</span></span></a>,
252 <a class=
"citerefentry" href=
"glTexEnv.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexEnv
</span></span></a>,
253 <a class=
"citerefentry" href=
"glTexGen.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexGen
</span></span></a>,
254 <a class=
"citerefentry" href=
"glTexImage1D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexImage1D
</span></span></a>,
255 <a class=
"citerefentry" href=
"glTexImage2D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexImage2D
</span></span></a>,
256 <a class=
"citerefentry" href=
"glTexImage3D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexImage3D
</span></span></a>,
257 <a class=
"citerefentry" href=
"glTexParameter.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexParameter
</span></span></a>,
258 <a class=
"citerefentry" href=
"glTexSubImage1D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexSubImage1D
</span></span></a>,
259 <a class=
"citerefentry" href=
"glTexSubImage2D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexSubImage2D
</span></span></a>,
260 <a class=
"citerefentry" href=
"glTexSubImage3D.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTexSubImage3D
</span></span></a>
261 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"Copyright"></a><h2>Copyright
</h2><p>
262 Copyright
<span class=
"trademark"></span>©
1991-
2006
263 Silicon Graphics, Inc. This document is licensed under the SGI
264 Free Software B License. For details, see
265 <a class=
"ulink" href=
"http://oss.sgi.com/projects/FreeB/" target=
"_top">http://oss.sgi.com/projects/FreeB/
</a>.
266 </p></div></div></body></html>