función glNormalPointer

La función glNormalPointer define una matriz de normales.

Sintaxis

void WINAPI glNormalPointer(
         GLenum  type,
         GLsizei stride,
   const GLvoid  *pointer
);

Parámetros

type

Tipo de datos de cada coordenada de la matriz mediante las siguientes constantes simbólicas: GL_BYTE, GL_SHORT, GL_INT, GL_FLOAT y GL_DOUBLE.

Paso

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

pointer

Puntero al primer normal de la matriz.

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_ENUM
type no era un valor aceptado.
GL_INVALID_OPERATION
stride o count fue negativo.

Comentarios

La función glNormalPointer especifica la ubicación y los datos de una matriz de normales que se van a usar al representar. El parámetro type especifica el tipo de datos de cada coordenada normal. El parámetro stride determina el desplazamiento de bytes de una normal a la siguiente, lo que permite el empaquetado de vértices y atributos en una sola matriz o almacenamiento en matrices independientes. En algunas implementaciones, almacenar los vértices y atributos en una sola matriz puede ser más eficaz que usar matrices independientes; consulte glInterleavedArrays para obtener más información.

Cuando se especifica la constante GL_NORMAL_ARRAY con glEnableClientState, se habilita una matriz normal. Cuando se habilita, glDrawArrays, glDrawElements y glArrayElement usan la matriz normal. De forma predeterminada, la matriz normal está deshabilitada.

No se puede incluir glNormalPointer en las listas para mostrar.

Cuando se especifica una matriz normal mediante glNormalPointer, los valores de todos los parámetros de matriz normales de la función se guardan en un estado del lado cliente. Dado que los parámetros de matriz normales se guardan en un estado del lado cliente, sus valores no se guardan ni restauran mediante glPushAttrib y glPopAttrib.

Aunque no se genera ningún error al llamar a glNormalPointer dentro de los pares glBegin y glEnd , los resultados no están definidos.

Las siguientes funciones están asociadas a glNormalPointer:

glGet con GL_NORMAL_ARRAY_STRIDE de argumentos

glGet con GL_NORMAL_ARRAY_COUNT de argumentos

glGet con GL_NORMAL_ARRAY_TYPE de argumentos

glGetPointerv con GL_NORMAL_ARRAY_POINTER de argumentos

glIsEnabled con GL_NORMAL_ARRAY de argumentos

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

glColorPointer

glDrawElements

glDrawArrays

glEnable

glEdgeFlagPointer

glGetPointerv

glIndexPointer

glIsEnabled

glInterleavedArrays

glTexCoordPointer

glVertexPointer

glGetString