Função glNormalPointer
A função glNormalPointer define uma matriz de normais.
Sintaxe
void WINAPI glNormalPointer(
GLenum type,
GLsizei stride,
const GLvoid *pointer
);
Parâmetros
-
tipo
-
O tipo de dados de cada coordenada na matriz usando as seguintes constantes simbólicas: GL_BYTE, GL_SHORT, GL_INT, GL_FLOAT e GL_DOUBLE.
-
Passo
-
O deslocamento de bytes entre normais consecutivos. Quando o passo é zero, os normais são bem embalados na matriz.
-
pointer
-
Um ponteiro para o primeiro normal na matriz.
Retornar valor
Essa função não retorna um valor.
Códigos de erro
Os códigos de erro a seguir podem ser recuperados pela função glGetError .
Nome | Significado |
---|---|
|
type não era um valor aceito. |
|
stride ou count foi negativo. |
Comentários
A função glNormalPointer especifica o local e os dados de uma matriz de normais a serem usados durante a renderização. O parâmetro type especifica o tipo de dados de cada coordenada normal. O parâmetro stride determina o deslocamento de bytes de um normal para o próximo, permitindo o empacotamento de vértices e atributos em uma única matriz ou armazenamento em matrizes separadas. Em algumas implementações, armazenar os vértices e atributos em uma única matriz pode ser mais eficiente do que usar matrizes separadas; consulte glInterleavedArrays para obter detalhes.
Uma matriz normal é habilitada quando você especifica a constante GL_NORMAL_ARRAY com glEnableClientState. Quando habilitado, glDrawArrays, glDrawElements e glArrayElement usam a matriz normal. Por padrão, a matriz normal está desabilitada.
Você não pode incluir glNormalPointer em listas de exibição.
Quando você especifica uma matriz normal usando glNormalPointer, os valores de todos os parâmetros de matriz normais da função são salvos em um estado do lado do cliente. Como os parâmetros de matriz normais são salvos em um estado do lado do cliente, seus valores não são salvos ou restaurados por glPushAttrib e glPopAttrib.
Embora nenhum erro seja gerado quando você chama glNormalPointer em pares glBegin e glEnd , os resultados são indefinidos.
As seguintes funções estão associadas ao glNormalPointer:
glGet com GL_NORMAL_ARRAY_STRIDE de argumento
glGet com GL_NORMAL_ARRAY_COUNT de argumento
glGet com GL_NORMAL_ARRAY_TYPE de argumento
glGetPointerv com GL_NORMAL_ARRAY_POINTER de argumento
glIsEnabled com GL_NORMAL_ARRAY de argumento
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho |
|
Biblioteca |
|
DLL |
|