Mientras se da cuenta de que esto va a tomar un largo ... tiempo:
pyglet.graphics.draw
lata dibujado uno o más puntos cuando pasan pyglet.gl.GL_POINTS
, y se puede pasar atributos tales como el color, así como coordenadas Por ejemplo:
for i in range(50):
for j in range(50):
color = int(2.56 * (i + j))
pyglet.graphics.draw(1, pyglet.gl.GL_POINTS,
('v2i', (i, j)),
('c3B', (color, color, color))
)
dibuja un cuadrado de 50 por 50 con un gradiente diagonal de negro a blanco-ish. Simplemente no esperes que sea particularmente rápido para hacer eso ;-) - GL está realmente orientado a gráficos con un nivel de abstracción mucho más alto, no a la pintura "píxel por píxel".
Puede obtener un mínimo de velocidad extra computando (digamos) una fila a la vez, y dibujando eso, en lugar de dibujar píxeles en forma individual. ¡Pero aún así no será súper rápido! -)
¿Necesita usar pyglet? pygame haría esto mucho más fácil –
@gnibbler: Sí, mi código fue escrito originalmente en pygame y funcionó (al menos en casa). Pero tenía que ejecutarlo en mi universidad y no podía hacer virtualenv para apoyar pygame ... Así que fui por pyglet –