X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=irrlicht%2Fvideo.scm;h=f0f56a3871235237718497b5c104d01a5b2248c8;hb=0c1a3f2b2c43965ee045b21ca4791e7ad93348ff;hp=7fc99fa87b363cc9c363c1a03a9d6e76eede70d3;hpb=630eb6a58696fdb056f9f25209e72095d7dec779;p=guile-irrlicht.git diff --git a/irrlicht/video.scm b/irrlicht/video.scm index 7fc99fa..f0f56a3 100644 --- a/irrlicht/video.scm +++ b/irrlicht/video.scm @@ -1,5 +1,5 @@ ;;; guile-irrlicht --- FFI bindings for Irrlicht Engine -;;; Copyright (C) 2019 Javier Sancho +;;; Copyright (C) 2020 Javier Sancho ;;; ;;; This file is part of guile-irrlicht. ;;; @@ -19,41 +19,27 @@ (define-module (irrlicht video) - #:use-module (system foreign) - #:use-module ((irrlicht bindings core) #:prefix ffi-core:) - #:use-module ((irrlicht bindings video) #:prefix ffi-video:) - #:use-module (irrlicht util) - #:export (begin-scene - end-scene - get-fps - get-texture - get-video-driver-name)) - -(define* (begin-scene driver - #:key - (back-buffer #t) - (z-buffer #t) - (color '(255 0 0 0)) - (video-data %null-pointer) - (source-rect '())) - (ffi-video:begin-scene driver - (bool->integer back-buffer) - (bool->integer z-buffer) - (make-c-struct ffi-video:scolor (reverse color)) - video-data - (if (null? source-rect) - %null-pointer - (make-c-struct ffi-core:rect source-rect)))) - -(define (end-scene driver) - (ffi-video:end-scene driver)) - -(define (get-fps driver) - (ffi-video:get-fps driver)) - -(define (get-texture driver filename) - (ffi-video:get-texture driver (string->pointer filename))) - -(define (get-video-driver-name driver) - (pointer->string - (ffi-video:get-video-driver-name driver))) + #:use-module (oop goops) + #:use-module (irrlicht base) + #:use-module (irrlicht foreign)) + + +;; ITexture +(define-class () + (irr-class #:init-value "ITexture" #:getter irr-class)) + +(export ) + + +;; IVideoDriver +(define-class () + (irr-class #:init-value "IVideoDriver" #:getter irr-class)) + +(define-method (get-texture (video-driver ) filename) + (make + #:irr-pointer + ((get-irrlicht-proc "getTexture" video-driver) + (irr-pointer video-driver) + filename))) + +(export get-texture)