Exemple #1
0
    def run(self):
        # Initialize the library
        if not glfw.init():
            return
        # Create a windowed mode window and its OpenGL context
        self.window = glfw.create_window(640, 480, "Hello World", None, None)
        if not self.window:
            glfw.terminate()
            return

        renderer = RiftGLRendererCompatibility()
        # Paint a triangle in the center of the screen
        renderer.append(TriangleDrawerCompatibility())

        # Make the window's context current
        glfw.make_context_current(self.window)

        # Initialize Oculus Rift
        renderer.init_gl()
        renderer.rift.recenter_pose()

        glfw.set_key_callback(self.window, self.key_callback)

        # Loop until the user closes the window
        while not glfw.window_should_close(self.window):
            # Render here, e.g. using pyOpenGL
            renderer.display_rift_gl()

            # Swap front and back buffers
            glfw.swap_buffers(self.window)

            # Poll for and process events
            glfw.poll_events()

        glfw.terminate()
Exemple #2
0
 def __init__(self):
     super(DemoWidget, self).__init__()
     self.renderer = RiftGLRendererCompatibility()
     # Paint a triangle in the center of the screen
     self.renderer.append(TriangleDrawerCompatibility())
     # Update Rift outside of normal paintGL() sequence,
     # so we don't have to worry about vsync or monitor frame rate.
     self.riftTimer = QTimer(self)
     self.riftTimer.setSingleShot(True)
     self.riftTimer.setInterval(0)
     self.riftTimer.timeout.connect(self.renderRift)
Exemple #3
0
 def __init__(self):
     self.renderer = RiftGLRendererCompatibility()
     self.renderer.append(TriangleDrawerCompatibility())
     glutInit()
     glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE)
     glutInitWindowSize(400, 400)
     glutInitWindowPosition(50, 50)
     win = glutCreateWindow("Just a triangle")
     glutDisplayFunc(self.display)
     glutIdleFunc(self.renderer.display_gl)
     glutReshapeFunc(self.renderer.resize_gl)
     glutKeyboardFunc(self.key_press)
     self.renderer.init_gl()
     self.renderer.rift.recenter_pose()
     glutMainLoop()