Пример #1
0
    def draw(self):
        """The OpenGL draw routine."""

        # sys.stderr.write("Start GLUTContext.draw\n")
        GL.glClearColor(self.background_color[0], self.background_color[1],
                        self.background_color[2], self.background_color[3])
        GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT)
        GL.glEnable(GL.GL_DEPTH_TEST)

        # sys.stderr.write("About to draw collections\n")
        for collection in self.object_collections:
            collection.draw()

            err = GL.glGetError()
            if err != GL.GL_NO_ERROR:
                sys.stderr.write("Error {} drawing: {}\n".format(
                    err, gluErrorString(err)))
                sys.exit(-1)

        GLUT.glutSwapBuffers()
        # sys.stderr.write("Done drawing collections.\n")

        Rater.get().set()
        # sys.stderr.write("End GLUTContext.draw\n")

        self.framecount += 1