add high-level gl bindings for fragment and framebuffer operations
[clinton/guile-figl.git] / examples / glut / demo.scm
CommitLineData
216f9972
AW
1#!/usr/bin/env guile
2!#
3
ea80f801 4(use-modules (figl glut low-level)
216f9972 5 (figl glut)
ea80f801 6 (figl gl)
216f9972
AW
7 (system foreign))
8
216f9972 9(define (render-scene)
ea80f801
DH
10 (gl-clear (clear-buffer-mask color-buffer depth-buffer))
11 (gl-begin (begin-mode triangles)
12 (gl-vertex -0.5 -0.5 0.0)
13 (gl-vertex 0.5 0.0 0.0)
14 (gl-vertex 0.0 0.5 0.0))
216f9972
AW
15 (glutSwapBuffers))
16
17(glutInitWindowSize 320 200)
71f7fffd 18(glutInitDisplayMode (display-mode rgb double depth))
216f9972
AW
19
20(glut-init (program-arguments))
21
22(define main-window (glutCreateWindow "glut"))
23
24(glutDisplayFunc (procedure->pointer void render-scene (list)))
25(glutMainLoop)