From f6eed03342b55a2a843c177822bef13609d81703 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Thu, 5 Sep 2013 07:37:53 -0400 Subject: Add missing wrappers for glGenTextures and glDeleteTextures. This should resolve issue #10. --- 2d/wrappers/gl.scm | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/2d/wrappers/gl.scm b/2d/wrappers/gl.scm index 8360463..108fc75 100644 --- a/2d/wrappers/gl.scm +++ b/2d/wrappers/gl.scm @@ -65,6 +65,25 @@ (re-export (%glTexParameteri . gl-texture-parameter)) + +;;; +;;; 3.8.12 Texture Objects +;;; + +;; TODO gl-are-textures-resident? gl-prioritze-textures + +(define (gl-generate-textures n) + (let ((bv (make-u32vector n 0))) + (%glGenTextures n bv) + (u32vector->list bv))) + +(define (gl-generate-texture) + (car (gl-generate-textures 1))) + +(define (gl-delete-textures textures) + (let ((bv (list->u32vector textures))) + (%glDeleteTextures (u32vector-length bv) bv))) + ;; emacs: (put 'with-gl-bind-texture 'scheme-indent-function 2) (define-syntax-rule (with-gl-bind-texture target id body ...) (begin @@ -73,4 +92,7 @@ ... (%glBindTexture target 0))) -(export with-gl-bind-texture) +(export gl-generate-textures + gl-generate-texture + gl-delete-textures + with-gl-bind-texture) -- cgit v1.2.3