Firefox Tomorrow

web api instance method

WebGL2RenderingContext: texImage3D() method

View on MDN ↗

Available in workers

The texImage3D() method of the WebGL2RenderingContext interface of the WebGL API specifies a three-dimensional texture image.

Syntax

texImage3D(target, level, internalformat, width, height, depth, border, format, type, srcData)
texImage3D(target, level, internalformat, width, height, depth, border, format, type, srcData, srcOffset)
texImage3D(target, level, internalformat, width, height, depth, border, format, type, source)
texImage3D(target, level, internalformat, width, height, depth, border, format, type, offset)

Parameters

  • target
    • : A GLenum specifying the binding point (target) of the active texture. Possible values:
      • gl.TEXTURE_3D: A three-dimensional texture.
      • gl.TEXTURE_2D_ARRAY: A two-dimensional array texture.
  • level
    • : A GLint specifying the level of detail. Level 0 is the base image level and level n is the n-th mipmap reduction level.
  • internalformat
    • : A GLenum specifying how the texture should be stored after it’s loaded.
  • width
    • : A GLsizei specifying the width of the texture in texels.
  • height
    • : A GLsizei specifying the height of the texture in texels.
  • depth
    • : A GLsizei specifying the depth of the texture/the number of textures in a TEXTURE_2D_ARRAY.
  • border
    • : A GLint specifying the width of the border. Must be 0.
  • format
    • : A GLenum specifying how each integer element in the raw texel data should be interpreted as color components.
  • type
    • : A GLenum specifying the size of each integer element in the raw texel data.

      The internalformat, format, and type values must be compatible with each other. For all valid combinations, see texImage2D().

The texture source can be provided in one of three ways: from an ArrayBuffer (possibly shared) using srcData and srcOffset; from a DOM pixel source; or from gl.PIXEL_UNPACK_BUFFER using offset.

Return value

None (undefined).

Examples

gl.texImage3D(
  gl.TEXTURE_3D,
  0, // level
  gl.RGBA, // internalFormat
  1, // width
  1, // height
  1, // depth
  0, // border
  gl.RGBA, // format
  gl.UNSIGNED_BYTE, // type
  new Uint8Array([0xff, 0x00, 0x00, 0x00]),
); // data

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also