]> git.jsancho.org Git - gacela.git/commitdiff
Composing scenes
authorJavier Sancho <jsf@jsancho.org>
Mon, 24 Apr 2017 15:48:12 +0000 (17:48 +0200)
committerJavier Sancho <jsf@jsancho.org>
Mon, 24 Apr 2017 15:48:12 +0000 (17:48 +0200)
gacela/image.scm

index e6c8f4ef74a38fbf24a59213656ec51d8645facf..2af2b4b732ab98685fe349488b4ecb0bcf01a749 100644 (file)
@@ -25,7 +25,8 @@
   #:use-module (gl)
   #:export (image
             move
-            scale))
+            scale
+            over))
 
 (define (calculate proc-or-value)
   (if (procedure? proc-or-value)
    (lambda ()
      (gl-scale x y z)
      (display-scene scene))))
+
+(define (over . scenes)
+  (make-scene
+   "over"
+   (lambda ()
+     (let display ((sc scenes))
+       (cond ((not (null? sc))
+              (with-gl-push-matrix
+               (display-scene (car sc)))
+              (display (cdr sc))))))))