Python OpenGL模块 - 无法渲染基本三角形

0 投票
1 回答
1111 浏览
提问于 2025-04-16 01:53

我正在尝试用Python使用OpenGL模块。

这是我的代码:

pygame.init()
screen = pygame.display.set_mode((800, 600), HWSURFACE|OPENGL|DOUBLEBUF)


def init():
        glEnable(GL_DEPTH_TEST)

        glShadeModel(GL_FLAT)
        glClearColor(1.0, 1.0, 1.0, 0.0)

        glEnable(GL_COLOR_MATERIAL)

        glEnable(GL_LIGHTING)
        glEnable(GL_LIGHT0)        
        glLight(GL_LIGHT0, GL_POSITION,  (0, 1, 1, 0)) 


def draw():
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)
    glLoadIdentity()
    glColor3fv((25, 123, 180))
    glBegin(GL_TRIANGLES)       

    glVertex3f( 0.0, 10.0, 0.0) 
    glVertex3f(-10.0,-10.0, 0.0)
    glVertex3f( 10.0,-10.0, 0.0)
    glEnd()


def run():   
    init()    
    while True:
        draw()
        pygame.display.flip()

run()

有没有人能看出哪里出错了?我只是想画一个简单的三角形顶点,但屏幕上什么都没有显示。有时候屏幕会变成亮粉色。我相信这只是个基础错误。

1 个回答

1

撰写回答