manpagez: man pages & more
man glCopyTexSubImage3D(3)
Home | html | info | man
glCopyTexSubImage3D(3)                                glCopyTexSubImage3D(3)




NAME

       glCopyTexSubImage3D - copy a three-dimensional texture subimage



C SPECIFICATION

       void glCopyTexSubImage3D( GLenum target,
                                 GLint level,
                                 GLint xoffset,
                                 GLint yoffset,
                                 GLint zoffset,
                                 GLint x,
                                 GLint y,
                                 GLsizei width,
                                 GLsizei height )



PARAMETERS

       target   Specifies the target texture.  Must be GL_TEXTURE_3D

       level    Specifies  the  level-of-detail  number.   Level 0 is the base
                image level.  Level n is the nth mipmap reduction image.

       xoffset  Specifies a texel offset in the x direction within the texture
                array.

       yoffset  Specifies a texel offset in the y direction within the texture
                array.

       zoffset  Specifies a texel offset in the z direction within the texture
                array.

       x, y     Specify the window coordinates of the lower left corner of the
                rectangular region of pixels to be copied.

       width    Specifies the width of the texture subimage.

       height   Specifies the height of the texture subimage.


DESCRIPTION

       glCopyTexSubImage3D replaces a rectangular portion  of  a  three-dimen-
       sional  texture  image  with  pixels  from  the  current GL_READ_BUFFER
       (rather than from main memory, as is the case for glTexSubImage3D).

       The screen-aligned pixel rectangle with lower left corner at (x, y) and
       with  width width and height height replaces the portion of the texture
       array with x indices xoffset through xoffset+width-1, inclusive, and  y
       indices yoffset through yoffset+height-1, inclusive, at z index zoffset
       and at the mipmap level specified by level.

       The pixels in the rectangle are processed exactly  as  if  glCopyPixels
       had  been  called,  but the process stops just before final conversion.
       At this point, all pixel component values  are  clamped  to  the  range
       [0, 1] and then converted to the texture's internal  for storage in the
       texel array.

       The destination rectangle in the texture array may not include any tex-
       els  outside  the  texture array as it was originally specified.  It is
       not an error to specify a subtexture with zero  width  or  height,  but
       such a specification has no effect.

       If  any  of  the  pixels  within the specified rectangle of the current
       GL_READ_BUFFER are outside the read window associated with the  current
       rendering  context, then the values obtained for those pixels are unde-
       fined.

       No change is made to the internalformat, width, height, depth, or  bor-
       der  parameters  of the specified texture array or to texel values out-
       side the specified subregion.


NOTES

       glCopyTexSubImage3D is available only if  the  GL  version  is  1.2  or
       greater.

       Texturing has no effect in color index mode.

       glPixelStore and glPixelTransfer modes affect texture images in exactly
       the way they affect glDrawPixels.

       When the GL_ARB_imaging extension is  supported,  the  RGBA  components
       copied  from  the framebuffer may be processed by the imaging pipeline,
       as if they were a two-dimensional texture.  See glTexImage2D  for  spe-
       cific details.


ERRORS

       GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D.

       GL_INVALID_OPERATION  is  generated  if  the texture array has not been
       defined by a previous glTexImage3D operation.

       GL_INVALID_VALUE is generated if level is less than 0.

       GL_INVALID_VALUE may be generated if level is greater  than  log2(max),
       where max is the returned value of GL_MAX_3D_TEXTURE_SIZE.

       GL_INVALID_VALUE  is  generated  if x < -b or if y < -b, where b is the
       border width of the texture array.

       GL_INVALID_VALUE is generated if xoffset < -b, (xoffset+width)>(w  -b),
       yoffset< -b, (yoffset+height) >(h -b), zoffset< -b, or zoffset >(d -b),
       where w is the GL_TEXTURE_WIDTH, h is the  GL_TEXTURE_HEIGHT, d is  the
       GL_TEXTURE_DEPTH,  and  b is the GL_TEXTURE_BORDER of the texture image
       being modified.  Note that w, h, and d include twice the border  width.

       GL_INVALID_OPERATION  is  generated  if glCopyTexSubImage3D is executed
       between the execution of glBegin and  the  corresponding  execution  of
       glEnd.


ASSOCIATED GETS

       glGetTexImage
       glIsEnabled with argument GL_TEXTURE_3D


SEE ALSO

       glCopyPixels(3), glCopyTexImage1D(3), glCopyTexImage2D(3),
       glCopyTexSubImage1D(3), glCopyTexSubImage2D(3), glPixelStore(3),
       glPixelTransfer(3), glReadBuffer(3), glTexEnv(3), glTexGen(3),
       glTexImage1D(3), glTexImage2D(3), glTexImage3D(3), glTexParameter(3),
       glTexSubImage1D(3), glTexSubImage2D(3), glTexSubImage3D(3)



                                                       glCopyTexSubImage3D(3)

Mac OS X 10.6 - Generated Thu Sep 17 20:20:17 CDT 2009
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.