Partage
  • Partager sur Facebook
  • Partager sur Twitter

[OpenGL/Pygame] On voit a travers les QUADS.

Sujet résolu
    16 juillet 2019 à 19:06:06

    Bonjour, je débute en OpenGL avec Pygame et j'ai un petit problème... Lorsque j'affiche des "LINES" derrière des "QUADS" on voit quand même les "LINES" à travers les "QUADS".

    Je ne sais pas si je suis assez précis donc voici mon code et une image du résultat.

    def render(self, type="linesquads", rotation=1):
            glMatrixMode(GL_MODELVIEW)
            glPushMatrix()
    
            glTranslatef(self.coo[0], self.coo[1], self.coo[2])
            glRotatef(self.rotation[0], self.rotation[1], self.rotation[2], self.rotation[3])
            if self.rotation[0]:
                self.rotation[0]+=rotation
    
            if "quads" in type:
                glColor4f(0, 0, 0, 1)
                glBegin(GL_QUADS)
                for tuple in self.quads:
                    for index in tuple:
                        glVertex3fv(self.vertices[index])
                glEnd()
    
            if "lines" in type:
                glBegin(GL_LINES)
                glColor4f(1, 1, 1, 1)
                for tuple in self.lines:
                    for index in tuple:
                        glVertex3fv(self.vertices[index])
                glEnd()
    
            glPopMatrix()

    Je pense que le problème vient du fait que j'affiche les "LINES" après les "QUADS" et que comme en pygame on voit les dernier truc affiché, mais je ne sais pas trop comment faire pour pouvoir obtenir ce résultat :

    Merci d'avance :)

    • Partager sur Facebook
    • Partager sur Twitter
      16 juillet 2019 à 19:07:49

      Backface culling
      • Partager sur Facebook
      • Partager sur Twitter

      1 - Make it work
      2 - Make it right
      3 - Make it simple
      4 - Make it fun

        16 juillet 2019 à 19:14:28

        Merci, juste histoire d'être sur c'est bien ça ?

        glEnable( GL_CULL_FACE )
        glCullFace( GL_BACK )



        • Partager sur Facebook
        • Partager sur Twitter
          16 juillet 2019 à 20:39:52

          J'en sais rien pour etre honnête je n'ai jamais fait de culling. Par contre je connaissait le principe ( mon ancien poste etait game framework dev pour des jeux dans le domaine aerien ) .. mais j'y ai jamais touché.

          Mais vu les noms , tu doit etre sur la bonne piste.
          • Partager sur Facebook
          • Partager sur Twitter

          1 - Make it work
          2 - Make it right
          3 - Make it simple
          4 - Make it fun

          [OpenGL/Pygame] On voit a travers les QUADS.

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          • Editeur
          • Markdown