From bd4e7ca64ed3d203ab7c938387d7ab32df8e5f23 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Sat, 29 Mar 2014 16:19:01 -0400 Subject: Don't load font shaders upon importing (2d font) module. * 2d/font.scm (font-shader): Set to #f initially. (enable-fonts): New procedure. * examples/font.scm: Enable fonts. --- 2d/font.scm | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) (limited to '2d') diff --git a/2d/font.scm b/2d/font.scm index 4e9d401..5cdc9cf 100644 --- a/2d/font.scm +++ b/2d/font.scm @@ -36,7 +36,8 @@ #:use-module (2d vector2) #:use-module (2d window) #:use-module (2d wrappers gl) - #:export (load-font + #:export (enable-fonts + load-font load-default-font font? font-point-size @@ -48,12 +49,23 @@ label-color draw-label)) -(SDL:ttf-init) - ;;; ;;; Font ;;; +(define font-shader #f) + +(define (enable-fonts) + (SDL:ttf-init) + (set! font-shader + (make-shader-program + (load-vertex-shader + (string-append %pkgdatadir + "/shaders/font-vertex.glsl")) + (load-fragment-shader + (string-append %pkgdatadir + "/shaders/font-fragment.glsl"))))) + (define-record-type (make-font ttf point-size) font? @@ -131,13 +143,6 @@ white and ANCHOR with a default of 'top-left." (anchor (anchor-texture texture anchor))) (%make-label font text position anchor color texture vertices))) -(define font-shader - (make-shader-program - (load-vertex-shader (string-append %pkgdatadir - "/shaders/font-vertex.glsl")) - (load-fragment-shader (string-append %pkgdatadir - "/shaders/font-fragment.glsl")))) - (define (draw-label label) "Draw LABEL on the screen." (with-shader-program font-shader -- cgit v1.2.3