Documentation de Gambas - /comp/gb.opengl/gl/copyteximage1d

/comp/gb.opengl/gl/copyteximage1d

# Gl.CopyTexImage1D (gb.opengl)

Static Sub CopyTexImage1D ( Target As Integer, Level As Integer, Format As Integer, X As Integer, Y As Integer, Width As Integer, Border As Integer )

Copie des pixels dans une image de texture 1D.

### Paramètres

target

  Spécifie la texture cible. Ce doit être une Gl.TEXTURE_1D.

level

  Spécifie le numéro de niveau de détail. Le niveau 0 est le niveau de l’image de base. Le niveau n est la nième image de réduction mipmap.

internalformat

  Spécifie le format interne de la texture. Ce doit être l’une des constantes symboliques suivantes : Gl.COMPRESSED_RED, Gl.COMPRESSED_RG, Gl.COMPRESSED_RGB, Gl.COMPRESSED_RGBA. Gl.COMPRESSED_SRGB, Gl.COMPRESSED_SRGB_ALPHA. Gl.DEPTH_COMPONENT, Gl.DEPTH_COMPONENT16, Gl.DEPTH_COMPONENT24, Gl.DEPTH_COMPONENT32, Gl.RED, Gl.RG, Gl.RGB, Gl.R3_G3_B2, Gl.RGB4, Gl.RGB5, Gl.RGB8, Gl.RGB10, Gl.RGB12, Gl.RGB16, Gl.RGBA, Gl.RGBA2, Gl.RGBA4, Gl.RGB5_A1, Gl.RGBA8, Gl.RGB10_A2, Gl.RGBA12, Gl.RGBA16, Gl.SRGB, Gl.SRGB8, Gl.SRGB_ALPHA, or Gl.SRGB8_ALPHA8.

x, y

  Spécifie les coordonnées fenêtre du coin gauche de la rangée de pixels à recopier.

width

  Spécifie la largeur de l’ image de texture. Doit être 0 ou 2 n + 2 ⁡ border pour un entier n. La hauteur de l’ image de texture est 1.

border

  Spécifie la largeur de l’encadrement. Doit valoir 0 ou 1.

### Description

Gl.CopyTexImage1D définit une image de texture mono-dimensionnelle avec les pixels extraits du Gl.READ_BUFFER (tampon lecture) en cours.

La rangée de pixels alignés à l’écran dont le coin gauche est à x y et dont la longueur est width + 2 ⁡ border définissent le tableau de texture au niveau mipmap spécifié par level. internalformat spécifie le format interne du tableau de texture.

Les pixels de la rangées sont traités exactement comme si Gl.ReadPixels avait été appelé, mais le processus s’arrête immédiatement avant la conversion finale. A ce point, toutes les valeurs de composante de pixel sont interpolées dans le domaine 0 1 puis convertis au format interne de texture pour stockage dans le tableau de texels.

L’ordre des pixels est tel que la plus petite x coordonnée écran correspond à la plus petite coordonnée de texture.

Si des pixels de la rangée spécifiée du Gl.READ_BUFFER en cours sont hors de la fenêtre associée au contexte de rendu en cours, les valeurs obtenues pour ces pixels sont indéfinies.

Gl.CopyTexImage1D définit une image de texture mono-dimensionnelle avec les pixels de Gl.READ_BUFFER.

Quand internalformat est l’un des types de sRGB , GL ne convertit pas automatiquement les pixels sources dans l’espace couleur sRGB. Dans ce cas, la fonction Gl.PixelMap peut être utilisée pour réaliser la conversion.

### Notes

1, 2, 3, et 4 ne sont pas des valeurs acceptées pour internalformat.

Une image de largeur 0 indique une texture NULLe.

### Erreurs

Gl.INVALID_ENUM est générée si target n’est pas l’une des valeurs autorisées.

Gl.INVALID_VALUE est générée si level est négatif.

Gl.INVALID_VALUE peut être générée si level est supérieur à log 2 ⁢ max , where max is the returned value of Gl.MAX_TEXTURE_SIZE.

Gl.INVALID_VALUE est générée si internalformat n’est pas l’une des valeurs autorisées.

Gl.INVALID_VALUE est générée si width est négative ou plus grande que Gl.MAX_TEXTURE_SIZE.

Gl.INVALID_VALUE est générée si les textures qui ne sont pas des puissances de deux ne sont pas prises en comptes et si width ne peut pas être représentée sous forme 2 n + 2 ⁡ border pour certaines valeurs entières de n.

Gl.INVALID_VALUE est générée si border n’est pas 0 ou 1.

Gl.INVALID_OPERATION est générée si internalformat est Gl.DEPTH_COMPONENT, Gl.DEPTH_COMPONENT16, Gl.DEPTH_COMPONENT24, ou Gl.DEPTH_COMPONENT32 et qu’il n’y a pas de tampon de profondeur.

### Gets Associés

Gl.GetTexImage

### Voir aussi

- Gl.CopyTexImage2D,

Gl.CopyTexSubImage1D, Gl.CopyTexSubImage2D, Gl.PixelStore,

- Gl.TexImage1D,

- Gl.TexImage2D,

Gl.TexSubImage1D, Gl.TexSubImage2D, Gl.TexParameter

Voir documentation originale sur le site OpenGL