pyglet for dado: opengl ahoy! good luck!
By: a guest | Mar 20th, 2010 | Syntax:
Python | Size: 1.36 KB | Hits: 72 | Expires: Never
import pyglet
# stvori prozor defaultne veličine
window = pyglet.window.Window()
# definiraj funkciju koja će biti pozvana svaki puta
# kada pyglet odluči da se na ekranu nešto mora nacrtati
# (this will probably happen every time you drag or
# obscure the window by other windows, or even just
# 60 times every second - who knows, doesn't matter).
@window.event
def on_draw():
# obriši cijeli prozor (paint it black)
window.clear()
# nacrtaj liniju pomoću dvije točke, gdje je prva
# u donjem lijevom kutu (10,15), a druga je
# definirana putem globalnih varijabli x i y
pyglet.graphics.draw(2, pyglet.gl.GL_LINES,
('v2i', (10, 15, x, y))
)
x, y = 20, 20 # globalne varijable, označuju kraj linije
# ovu ćemo funkciju pozivati svaku ~desetinu sekunde,
# dok će argument dt biti točan iznos vremena proteklog
# od zadnjeg poziva funkcije. (odnosno, dt će težiti
# jednoj desetini sekunde, ali zbog OS-specific stuff
# it may be smaller or larger. usually you don't have
# to worry about it.)
def povecaj_liniju(dt):
global x, y # x i y se odnose na globalne varijable
x, y = x+1, y+1 # uvećavamo ih
# svaku desetinu sekunde pozovi povecaj_liniju(delta_t)
pyglet.clock.schedule_interval(povecaj_liniju, 0.1)
# pokreni pyglet-aplikaciju opisanu gornjim funkcijama
pyglet.app.run()