Pergunta

Estou criando um fundo simples inclinação pelo desenho de um quad da seguinte forma:

 glMatrixMode GL.GL_PROJECTION
 glLoadIdentity

 glMatrixMode GL.GL_MODELVIEW
 glLoadIdentity

 ***glPolygonMode GL_FRONT_AND_BACK, GL_LINE*** 

 glDisable glcDepthTest

   glBegin bmQuads

     glColor4d 1, 0, 0, 1

     glVertex2i -1, -1
     glVertex2i 1, -1

     glColor4d 0, 0, 1, 1

     glVertex2i 1, 1
     glVertex2i -1, 1

    GL.glEnd

  GL.glEnable glcDepthTest

Em seguida, levante as minhas matrizes de visualização e tirar a minha cena 3D. Isso funciona como esperado quando o modo polígono (da cena) está definido para GL_FILL, mas quando eu definir o modo de polígono (da cena) para GL_LINE ou GL_POINT, as desaparece fundo quad eo fundo é desenhado como a cor especificada em < em> glClearColor .

Eu tentei várias opções diferentes de mistura (incluindo desativá-lo completamente), então eu não acho que o problema é blend mode relacionados.

EDIT: Adicionando o seguinte modo de polígono para resolve código acima esta questão

glPolygonMode GL_FRONT_AND_BACK, GL_LINE

Foi útil?

Solução

Você precisa empurrar o modo polígono de GL_FILL na pilha antes de desenhar seu polígono fundo, em seguida, colocá-la de volta para fora da pilha.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top