X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;ds=sidebyside;f=irrlicht%2Fscene.scm;h=cd8e4d45a134c6c9df35c34ac4b41c9ab5e6e1bd;hb=8ab48666239b37a357944d2928a31aaf37578892;hp=7e9b8d23dddcc1cc7d22c2503600e5cb009d7e59;hpb=2a0373b3eda4407e2e41a4e8fc3a7333bb789a89;p=guile-irrlicht.git diff --git a/irrlicht/scene.scm b/irrlicht/scene.scm index 7e9b8d2..cd8e4d4 100644 --- a/irrlicht/scene.scm +++ b/irrlicht/scene.scm @@ -26,10 +26,12 @@ #:use-module ((irrlicht bindings video) #:prefix ffi-video:) #:use-module (irrlicht util) #:export (add-animated-mesh-scene-node + add-animator! add-camera-scene-node! add-camera-scene-node-fps! add-custom-scene-node! add-octree-scene-node + create-rotation-animator get-mesh get-root-scene-node scene-draw-all @@ -57,6 +59,9 @@ (bool->integer also-add-if-mesh-pointer-zero)))) (if (null-pointer? node) #f node))) +(define (add-animator! node animator) + (ffi-scene:add-animator node animator)) + (define* (add-camera-scene-node! scene-manager #:key (parent %null-pointer) @@ -141,6 +146,12 @@ minimal-polys-per-node (bool->integer also-add-if-mesh-pointer-zero))) +(define (create-rotation-animator scene-manager rotation-speed) + (let ((animator (ffi-scene:create-rotation-animator + scene-manager + (ffi-core:vector3df->pointer rotation-speed)))) + (if (null-pointer? animator) #f animator))) + (define (get-mesh scene-manager filename) (let ((mesh (ffi-scene:get-mesh scene-manager (string->pointer filename)))) (if (null-pointer? mesh) #f mesh)))