]> git.jsancho.org Git - guile-irrlicht.git/commitdiff
Return #f if device creation fails
authorJavier Sancho <jsf@jsancho.org>
Sun, 6 Oct 2019 14:59:10 +0000 (16:59 +0200)
committerJavier Sancho <jsf@jsancho.org>
Sun, 6 Oct 2019 14:59:10 +0000 (16:59 +0200)
examples/hello.scm
irrlicht.scm

index 11c9bb8a9aa9fb17ed6a46c716fdec8af45c6bff..283462ddc6a733a5c3c5a1aea9c7b838b552705a 100644 (file)
 
 (use-modules (irrlicht))
 
-(define device (create-device 'opengl))
+;; Create device
+(define device (create-device 'software '(640 480) 16 #f #f #f))
+(when (not device)
+  (exit #f))
+
 (define driver (get-video-driver device))
 (define scene-manager (get-scene-manager device))
 
index 5b405e3bfded66439a11999a9899353331324886..0ff6e3a6083358af344f25911a9f21b2be555abb 100644 (file)
                        ('opengl ffi-video:EDT_OPENGL)
                        ('count ffi-video:EDT_COUNT)))
         (wsize (make-c-struct ffi-core:dimension2d window-size)))
-    (ffi:create-device driver wsize bits
-                       (if fullscreen 1 0)
-                       (if stencilbuffer 1 0)
-                       (if vsync 1 0))))
+    (let ((device (ffi:create-device driver wsize bits
+                                     (if fullscreen 1 0)
+                                     (if stencilbuffer 1 0)
+                                     (if vsync 1 0))))
+      (if (null-pointer? device) #f device))))
 
 (define (get-video-driver device)
   (ffi:get-video-driver device))