Пиглет, поверхность не показывает

Я пробую кое-что в PyGlet и столкнулся с проблемой, которую не могу решить самостоятельно.

import pyglet
from pyglet import gl


win = pyglet.window.Window()


@win.event
def on_draw():
    gl.glClear(gl.GL_COLOR_BUFFER_BIT)

    z = 0

    gl.glBegin(gl.GL_QUADS)

    gl.glColor3ub(0xff, 0x00, 0x00)
    gl.glVertex3d(50, 50, z)
    gl.glVertex3d(50, 100, z)
    gl.glVertex3d(100, 100, z)
    gl.glVertex3d(100, 50, z)

    gl.glEnd()


pyglet.app.run()

Этот код рисует квадрат на экране. Но если я установлю z как что-то другое, чем -1, 0 или 1, квадрат не будет отображаться.

Я хотел бы построить вращающийся куб, поэтому мне нужна эта ось Z.

Любая помощь в этом?

Спасибо

1 ответ

Без каких-либо дополнительных настроек OpenGL допустимым диапазоном для Z является любое значение с плавающей точкой только в диапазоне (-1,0, 1,0). Ваши вершины будут игнорироваться, если координата z находится снаружи.

Другие вопросы по тегам