diff options
author | David Thompson <dthompson2@worcester.edu> | 2014-02-16 10:44:24 -0500 |
---|---|---|
committer | David Thompson <dthompson2@worcester.edu> | 2014-02-16 10:47:04 -0500 |
commit | fc2584672c096ae63469cce9ede9abaa4a95ece7 (patch) | |
tree | 2de08e6fad5251720ff58abed145a8c83741c93d /examples | |
parent | fd04e2133e098359e439a087535ce287f7fcc639 (diff) |
Rewrite font module.
FTGL has been dropped in favor of SDL_ttf.
* 2d/font: Rewrite everything!
* 2d/wrappers/ftgl.scm: Delete it.
* configure.ac: Check for SDL_ttf.
* data/Makefile.am (shaders_DATA): Add font shaders.
* data/shaders/font-fragment.glsl: New shader.
* data/shaders/font-vertex.glsl: New shader.
* examples/font.scm: Rewrite font example.
* examples/fonts/AUTHORS: Delete it.
* examples/fonts/Boxy-Bold.ttf: Delete it.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/font.scm | 50 | ||||
-rw-r--r-- | examples/fonts/AUTHORS | 2 | ||||
-rw-r--r-- | examples/fonts/Boxy-Bold.ttf | bin | 14432 -> 0 bytes |
3 files changed, 42 insertions, 10 deletions
diff --git a/examples/font.scm b/examples/font.scm index 465600c..2398b36 100644 --- a/examples/font.scm +++ b/examples/font.scm @@ -1,22 +1,56 @@ (use-modules (srfi srfi-9) (figl gl) + (2d agenda) + (2d fps) (2d color) (2d font) (2d game) + (2d mouse) + (2d signals) (2d vector2) (2d window)) (load "common.scm") -(define textbox - (make-textbox (load-font "fonts/Boxy-Bold.ttf" 48) - "The quick brown fox jumped over the lazy dog." - (vector2 240 160) - white - 'left - 200)) +(define font (load-default-font 18)) +(define position (vector2 320 240)) +(define text "The quick brown fox jumped over the lazy dog.") +(define label (make-label font text position #:anchor 'center)) -(add-hook! draw-hook (lambda (dt alpha) (draw-textbox textbox))) +(define fps-label-position (vector2 0 0)) +(define (make-fps-label) + (make-label font (format #f "FPS: ~d" (fps)) fps-label-position)) +(define fps-label (make-fps-label)) + +(define mouse-label-position (vector2 0 20)) +(define mouse-label + (signal-map (lambda (p) + (let ((text (format #f "Mouse: (~d, ~d)" (vx p) (vy p)))) + (make-label font text mouse-label-position))) + mouse-position)) + +(define gc-label-position (vector2 0 40)) +(define gc-counter (make-root-signal 0)) +(define gc-label + (signal-map (lambda (counter) + (let ((text (format #f "GCs: ~d" counter))) + (make-label font text gc-label-position))) + gc-counter)) + +(add-hook! after-gc-hook + (lambda () + (signal-set! gc-counter (1+ (signal-ref gc-counter))))) + +(schedule-interval game-agenda + (lambda () + (set! fps-label (make-fps-label))) + 60) + +(add-hook! draw-hook (lambda (dt alpha) + (draw-label label) + (draw-label fps-label) + (draw-label (signal-ref mouse-label)) + (draw-label (signal-ref gc-label)))) (with-window (make-window #:title "Fonts") (run-game-loop)) diff --git a/examples/fonts/AUTHORS b/examples/fonts/AUTHORS deleted file mode 100644 index 0f278b8..0000000 --- a/examples/fonts/AUTHORS +++ /dev/null @@ -1,2 +0,0 @@ -Clint Bellanger and William Thompson -http://opengameart.org/content/boxy-bold-truetype-font
\ No newline at end of file diff --git a/examples/fonts/Boxy-Bold.ttf b/examples/fonts/Boxy-Bold.ttf Binary files differdeleted file mode 100644 index 8076dc5..0000000 --- a/examples/fonts/Boxy-Bold.ttf +++ /dev/null |