--- title: WebGLRenderingContext.texImage2D() slug: Web/API/WebGLRenderingContext/texImage2D tags: - API - Méthode - Reference - Textures - WebGL - WebGLRenderingContext translation_of: Web/API/WebGLRenderingContext/texImage2D ---
La méthode WebGLRenderingContext.texImage2D() de l'API WebGL spécifie une image de texture bidimensionnelle.
// WebGL1: void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, ArrayBufferView? pixels); void gl.texImage2D(cible, niveau, formatinterne, format, type, ImageData? pixels); void gl.texImage2D(cible, niveau, formatinterne, format, type, HTMLImageElement? pixels); void gl.texImage2D(cible, niveau, formatinterne, format, type, HTMLCanvasElement? pixels); void gl.texImage2D(cible, niveau, formatinterne, format, type, HTMLVideoElement? pixels); void gl.texImage2D(cible, niveau, formatinterne, format, type, ImageBitmap? pixels); // WebGL2: void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, GLintptr decalage); void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, HTMLCanvasElement source); void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, HTMLImageElement source); void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, HTMLVideoElement source); void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, ImageBitmap source); void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, ImageData source); void gl.texImage2D(cible, niveau, formatinterne, largeur, hauteur, bordure, format, type, ArrayBufferView donneesSrc, decalageSrc);
cibleUn {{domxref ("GLenum")}} indiquant le point de liaison (cible) de la texture active. Valeurs possibles :
gl.TEXTURE_2D : une texture bidimensionnelle ;gl.TEXTURE_CUBE_MAP_POSITIVE_X : face X positive pour une texture mappée sur un cube ;gl.TEXTURE_CUBE_MAP_NEGATIVE_X : face X négative pour une texture mappée sur un cube ;gl.TEXTURE_CUBE_MAP_POSITIVE_Y : face Y positive pour une texture mappée sur un cube ;gl.TEXTURE_CUBE_MAP_NEGATIVE_Y : face Y négative pour une texture mappée sur un cube ;gl.TEXTURE_CUBE_MAP_POSITIVE_Z : face Z positive pour une texture mappée sur un cube ;gl.TEXTURE_CUBE_MAP_NEGATIVE_Z : face Z négative pour une texture mappée sur un cube.niveauformatinterneUn {{domxref ("GLint")}} indiquant les composantes de couleur dans la texture. Valeurs possibles :
gl.ALPHA : ignore les composantes rouge, vert et bleu, et lit la composante alpha ;gl.RGB : ignore la composante alpha et lit les composantes rouge, vert et bleu ;gl.RGBA : les composantes rouge, vert, bleu et alpha sont lues à partir du tampon des couleurs ;gl.LUMINANCE : chaque composante de couleur est une composante de luminance, alpha vaut 1,0 ;gl.LUMINANCE_ALPHA : chaque composante est une composante de luminance/alpha ;gl.DEPTH_COMPONENTgl.DEPTH_STENCILext.SRGB_EXText.SRGB_ALPHA_EXTgl.R8gl.R16Fgl.R32Fgl.R8UIgl.RG8gl.RG16Fgl.RG32Fgl.RG8UIgl.RG16UIgl.RG32UIgl.RGB8gl.SRGB8gl.RGB565gl.R11F_G11F_B10Fgl.RGB9_E5gl.RGB16Fgl.RGB32Fgl.RGB8UIgl.RGBA8gl.SRGB8_APLHA8gl.RGB5_A1gl.RGB10_A2gl.RGBA4gl.RGBA16Fgl.RGBA32Fgl.RGBA8UIlargeurhauteurbordureformatformatinterne (voir ci-dessus). En WebGL 2, les combinaisons sont répertoriées dans ce tableau.typeUn {{domxref("GLenum")}} indiquant le type de données des données de texel. Valeurs possibles :
gl.UNSIGNED_BYTE : 8 bits par canal pour gl.RGBA ;gl.UNSIGNED_SHORT_5_6_5 : 5 bits de rouge, 6 bits de vert, 5 bits de bleu ;gl.UNSIGNED_SHORT_4_4_4_4 : 4 bits de rouge, 4 bits de vert, 4 bits de bleu, 4 bits d'alpha ;gl.UNSIGNED_SHORT_5_5_5_1 : 5 bits de rouge, 5 bits de vert, 5 bits de bleu, 1 bit d'alpha ;gl.UNSIGNED_SHORTgl.UNSIGNED_INText.UNSIGNED_INT_24_8_WEBGL (constante fournie par l'extension)gl.FLOAText.HALF_FLOAT_OES (constante fournie par l'extension)gl.BYTEgl.UNSIGNED_SHORTgl.SHORTgl.UNSIGNED_INTgl.INTgl.HALF_FLOATgl.FLOATgl.UNSIGNED_INT_2_10_10_10_REVgl.UNSIGNED_INT_10F_11F_11F_REVgl.UNSIGNED_INT_5_9_9_9_REVgl.UNSIGNED_INT_24_8gl.FLOAT_32_UNSIGNED_INT_24_8_REV (les pixels doivent être {{jsxref("null")}})pixelsL'un des objets suivants peut être utilisé comme source de pixels pour la texture :
type est gl.UNSIGNED_BYTE ;type est gl.UNSIGNED_SHORT_5_6_5, gl.UNSIGNED_SHORT_4_4_4_4, gl.UNSIGNED_SHORT_5_5_5_1, gl.UNSIGNED_SHORT ou ext.HALF_FLOAT_OES ;type est gl.UNSIGNED_INT ou ext.UNSIGNED_INT_24_8_WEBGL ;type est gl.FLOAT ;decalageWebGLBuffer lié à la cible PIXEL_UNPACK_BUFFER.Aucune.
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);
| Spécification | Statut | Commentaire |
|---|---|---|
| {{SpecName('WebGL', "#5.14.8", "texImage2D")}} | {{Spec2('WebGL')}} |
Définition initiale pour WebGL. |
| {{SpecName('OpenGL ES 2.0', "glTexImage2D.xml", "glTexImage2D")}} | {{Spec2('OpenGL ES 2.0')}} |
Page man de l’API OpenGL ES 2.0 (similaire). |
| {{SpecName('WebGL2', "#3.7.6", "texImage2D")}} | {{Spec2('WebGL2')}} | Définition mise à jour pour WebGL. |
| {{SpecName('OpenGL ES 3.0', "glTexImage2D.xhtml", "glTexImage2D")}} | {{Spec2('OpenGL ES 3.0')}} | Page man de l’API OpenGL ES 3.0 (similaire). |
{{Compat("api.WebGLRenderingContext.texImage2D")}}