]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - irrlicht/scene.scm
call remote procs from guile code
[guile-irrlicht.git] / irrlicht / scene.scm
index 17437fe80e7cfeb1b6d02cb7612e5f7d2a32a416..e5cd4225fe1b386c93fea5dd1a6010d84725c3ea 100644 (file)
@@ -1,5 +1,5 @@
 ;;; guile-irrlicht --- FFI bindings for Irrlicht Engine
-;;; Copyright (C) 2019 Javier Sancho <jsf@jsancho.org>
+;;; Copyright (C) 2020 Javier Sancho <jsf@jsancho.org>
 ;;;
 ;;; This file is part of guile-irrlicht.
 ;;;
 
 
 (define-module (irrlicht scene)
-  #:export (add-animated-mesh-scene-node
-            get-mesh))
+  #:use-module (oop goops)
+  #:use-module (irrlicht foreign)
+  #:use-module (irrlicht irr))
 
-(load-extension "libguile-irrlicht" "init_guile_irrlicht")
 
-(define irr-add-animated-mesh-scene-node add-animated-mesh-scene-node)
-(define* (add-animated-mesh-scene-node scene-manager mesh
-                                       #:key
-                                       (parent #f)
-                                       (id -1)
-                                       (position '(0 0 0))
-                                       (rotation '(0 0 0))
-                                       (scale '(1 1 1))
-                                       (also-add-if-mesh-pointer-zero #f))
-  (irr-add-animated-mesh-scene-node scene-manager
-                                    mesh
-                                    parent
-                                    id
-                                    position
-                                    rotation
-                                    scale
-                                    also-add-if-mesh-pointer-zero))
+;; ISceneManager
+(define-class <scene-manager> (<reference-counted>)
+  (irr-class #:init-value "ISceneManager" #:getter irr-class))
+
+(export <scene-manager>)