glGetTexImage fonction)

La fonction glGetTexImage retourne une image de texture.

Syntaxe

void WINAPI glGetTexImage(
   GLenum target,
   GLint  level,
   GLenum format,
   GLenum type,
   GLvoid *pixels
);

Paramètres

cible

Spécifie la texture à obtenir. La _ texture GL _ 1D et la _ texture GL _ 2D sont acceptées.

level

Numéro de niveau de détail de l’image souhaitée. Le niveau 0 est le niveau d’image de base. Le niveau n est la n ième image de réduction mipmap.

format

Format de pixel pour les données retournées. Les formats pris en charge sont GL _ Red, GL _ Green, GL _ Blue, GL _ alpha, GL _ RGB, GL _ RVBA, GL _ luminance, GL _ BGR _ ext, GL _ BGRA _ ext et GL _ luminance _ alpha.

type

Type de pixel pour les données retournées. Les types pris en charge sont _ octets non signés GL _ , _ octet GL, GL _ non signé _ short, GL _ short, GL _ unsigned _ int, GL _ int et GL _ float.

pixels

Retourne l’image de texture. Doit être un pointeur vers un tableau du type spécifié par type.

Valeur renvoyée

Cette fonction ne retourne pas de valeur.

Codes d’erreur

Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .

Name Signification
_enum GL non valide _
la cible, le format ou le type n’était pas une valeur acceptée.
_valeur non valide du GL _
le niveau est inférieur à zéro ou supérieur au Journal 2 (Max), où Max est la valeur retournée de la taille de _ texture max GL _ _ .
_opération non valide du GL _
La fonction a été appelée entre un appel à glBegin et l’appel correspondant à glEnd .

Remarques

La fonction glGetTexImage retourne une image de texture en pixels. Le paramètre Target spécifie si l’image de texture souhaitée est spécifiée par glTexImage1D( texture GL _ _ 1D ) ou par glTexImage2D( texture GL _ _ 2D ). Le paramètre Level spécifie le numéro de niveau de détail de l’image souhaitée. Les paramètres de type et de format spécifient le format et le type du tableau d’images souhaité. Pour obtenir une description des valeurs acceptables pour les paramètres de type et de format , consultez glTexImage1D et glDrawPixels.

L’opération de glGetTexImage est mieux comprise en considérant que l’image de texture à quatre composants interne sélectionnée est une mémoire tampon RVBA de la taille de l’image. La sémantique des glGetTexImage est alors identique à celle de glReadPixels appelée avec le même format et le même type, si x et y ont la valeur zéro, la largeur est égale à la largeur de l’image de texture (y compris la bordure si elle a été spécifiée) et la hauteur est définie sur une pour les images 1D, ou à la hauteur de l’image de texture (y compris la bordure, si elle a été spécifiée) pour les images 2D.

Étant donné que l’image de texture interne est une image RVBA, les formats de pixels de l' _ index de couleur GL _ , de l’index de _ stencils GL _ et de la profondeur du GL ne _ _ sont pas acceptés, et le type de pixel de la _ bitmap GL n’est pas accepté.

Si l’image de texture sélectionnée ne contient pas quatre composants, les mappages suivants sont appliqués. Les textures à un seul composant sont traitées comme des tampons RVBA avec la couleur rouge définie sur la valeur à composant unique, et les valeurs vert, bleu et alpha définies sur zéro.

Les textures à deux composants sont traitées comme des tampons RVBA, avec le rouge défini sur la valeur du composant zéro, alpha défini sur la valeur du composant 1 et le vert et le bleu définis sur zéro. Enfin, les textures à trois composants sont traitées comme des tampons RVBA avec le rouge défini sur le composant zéro, le vert défini sur le composant 1, le bleu défini sur le deuxième composant et alpha défini sur zéro.

Pour déterminer la taille requise des pixels, utilisez glGetTexLevelParameter pour déterminer les dimensions de l’image de texture interne, puis mettez à l’échelle le nombre requis de pixels par le stockage requis pour chaque pixel, en fonction du format et du type. Veillez à prendre en compte les paramètres de stockage en pixels, en particulier l' _ alignement du Pack GL _ .

Si une erreur est générée, aucune modification n’est apportée au contenu des pixels.

Les fonctions suivantes récupèrent les informations relatives à glGetTexImage:

glGet avec l’argument with GL _ Pack _ alignment et autres

glGetTexLevelParameter avec l’argument _ largeur de la texture GL _

glGetTexLevelParameter avec argument _ taille de texture de la comptabilité _

glGetTexLevelParameter avec argument GL _ texture _ Border

glGetTexLevelParameter avec les _ composants de texture GL d’argument _

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel - [Applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server - [Applications de bureau uniquement]
En-tête
GL. h
Bibliothèque
Opengl32. lib
DLL
Opengl32.dll

Voir aussi

glBegin

glDrawPixels

glEnd

glGetTexLevelParameter

glReadPixels

glTexImage1D

glTexImage2D