Compartir a través de


función glColorPointer

La función glColorPointer define una matriz de colores.

Sintaxis

void WINAPI glColorPointer(
         GLint   size,
         GLenum  type,
         GLsizei stride,
   const GLvoid  *pointer
);

Parámetros

size

Número de componentes por color. El valor debe ser 3 o 4.

type

Tipo de datos de cada componente de color en una matriz de colores. Los tipos de datos aceptables se especifican con las siguientes constantes: GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT o GL_DOUBLE.

Paso

Desplazamiento de bytes entre colores consecutivos. Cuando el paso es cero, los colores se empaquetan estrechamente en la matriz.

pointer

Puntero al primer componente del primer elemento de color de una matriz de colores.

Valor devuelto

Esta función no devuelve ningún valor.

Códigos de error

La función glGetError puede recuperar los siguientes códigos de error.

Nombre Significado
GL_INVALID_VALUE
el tamaño no era 3 o 4.
GL_INVALID_ENUM
type no era un valor aceptado.
GL_INVALID_VALUE
stride o count fue negativo.

Comentarios

La función glColorPointer especifica la ubicación y el formato de datos de una matriz de componentes de color que se van a usar al representar. El parámetro stride determina el desplazamiento de bytes de un color al siguiente, lo que permite el empaquetado de atributos de vértice en una sola matriz o almacenamiento en matrices independientes. En algunas implementaciones, el almacenamiento de atributos de vértice en una sola matriz puede ser más eficaz que el uso de matrices independientes.

Habilite la matriz de colores especificando la constante GL_COLOR_ARRAY con glEnableClientState. Al llamar a glArrayElement, glDrawElements o glDrawArrays , se usa la matriz de colores que, por tanto, está habilitada. De forma predeterminada, la matriz de colores está deshabilitada. Las llamadas glColorPointer no se pueden escribir en listas para mostrar.

Cuando se especifica una matriz de colores mediante glColorPointer, los valores de todos los parámetros de matriz de colores de la función se guardan en un estado del lado cliente y se pueden almacenar en caché elementos de matriz estáticos. Dado que los parámetros de la matriz de colores están en un estado del lado cliente, glPushAttrib y glPopAttrib no guardan ni restauran los valores de los parámetros.

Aunque especificar la matriz de colores en pares glBegin y glend no genera un error, los resultados no están definidos.

Las siguientes funciones recuperan información relacionada con la función glColorPointer :

glIsEnabled con GL_COLOR_ARRAY de argumento

glGet con GL_COLOR_ARRAY_SIZE de argumentos

glGet con GL_COLOR_ARRAY_TYPE de argumentos

glGet con GL_COLOR_ARRAY_STRIDE de argumentos

glGet con GL_COLOR_ARRAY_COUNT de argumentos

glGetPointerv con GL_COLOR_ARRAY_POINTER de argumento

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Gl.h
Biblioteca
Opengl32.lib
Archivo DLL
Opengl32.dll

Consulte también

glArrayElement

glBegin

glDrawArrays

glEdgeFlagPointer

glEnableClientState

glEnd

glGet

glGetString

glGetPointerv

glIndexPointer

glIsEnabled

glNormalPointer

glPopAttrib

glPushAttrib

glTexCoordPointer

glVertexPointer