Compartilhar via


Função glEdgeFlagPointer

A função glEdgeFlagPointer define uma matriz de sinalizadores de borda.

Sintaxe

void WINAPI glEdgeFlagPointer(
         GLsizei stride,
   const GLvoid  *pointer
);

Parâmetros

Passo

O deslocamento de bytes entre sinalizadores de borda consecutivos. Quando stride é zero, os sinalizadores de borda são firmemente empacotados na matriz.

pointer

Um ponteiro para o primeiro sinalizador de borda na matriz.

Retornar valor

Essa função não retorna um valor.

Códigos de erro

O código de erro a seguir pode ser recuperado pela função glGetError .

Nome Significado
GL_INVALID_ENUM
stride ou count foi negativo.

Comentários

A função glEdgeFlagPointer especifica o local e os dados de uma matriz de sinalizadores de borda boolianos a serem usados durante a renderização. O parâmetro stride determina o deslocamento de bytes de um sinalizador de borda para o próximo, o que permite 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.

Uma matriz de sinalizador de borda é habilitada quando você especifica a constante GL_EDGE_FLAG_ARRAY com glEnableClientState. Quando habilitado, glDrawArrays ou glArrayElement usa a matriz de sinalizador de borda. Por padrão, a matriz de sinalizador de borda está desabilitada.

Use glDrawArrays para construir uma sequência de primitivos (todos do mesmo tipo) a partir de matrizes de atributos de vértice e vértice pré-especificadas. Use glArrayElement para especificar primitivos indexando vértices e atributos de vértice e glDrawElements para construir uma sequência de primitivos indexando vértices e atributos de vértice.

Não é possível incluir glEdgeFlagPointer em listas de exibição.

Quando você especifica uma matriz de sinalizador de borda usando glEdgeFlagPointer, os valores de todos os parâmetros de matriz de sinalizador de borda da função são salvos em um estado do lado do cliente e elementos de matriz estáticos podem ser armazenados em cache. Como os parâmetros de matriz de sinalizador de borda estão em um estado do lado do cliente, glPushAttrib e glPopAttrib não salvam nem restauram seus valores.

Embora chamar glEdgeFlagPointer dentro de um par glBegin/glend não gere um erro, os resultados são indefinidos.

As seguintes funções recuperam informações relacionadas à função glEdgeFlagPointer :

glGet com GL_EDGE_FLAG_ARRAY_STRIDE de argumento

glGet com GL_EDGE_FLAG_ARRAY_COUNT de argumento

glGetPointerv com GL_EDGE_FLAG_ARRAY_POINTER de argumento

glIsEnabled com argumento GL_EDGE_FLAG_ARRAY

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
Gl.h
Biblioteca
Opengl32.lib
DLL
Opengl32.dll

Confira também

glArrayElement

glBegin

glColorPointer

glDrawArrays

glEnableClientState

glEnd

glGet

glGetPointerv

glGetString

glIndexPointer

glIsEnabled

glNormalPointer

glPopAttrib

glPushAttrib

glTexCoordPointer

glVertexPointer