summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Sleep when the game loop runs too fast.David Thompson2014-04-241-0/+9
| | | | | * 2d/game.scm (frame-sleep): New procedure. (game-loop): Use frame-sleep.
* Run game loop with a prompt.David Thompson2014-04-241-47/+16
| | | | | | | * 2d/game.scm (game-loop-status, game-running?, game-paused?) (pause-game, resume-game, paused-agenda): Delete. (run-game-loop): Call game loop with prompt. (quit-game): Abort to game loop prompt.
* Remove the accumulator parameter from the game loop.David Thompson2014-04-231-40/+19
| | | | | | | * 2d/game.scm (accumulator, update-and-render, tick) Delete. (run-game-loop): Remove accumulator parameterization. (game-loop): Use lag variable instead of accumulator. (update, alpha): Add lag as formal parameter.
* Add bindings for OpenGL instanced rendering extension.David Thompson2014-04-211-1/+23
| | | | | * 2d/wrappers/gl.scm (glDrawArraysInstanced): New procedure. (glVertexAttribDivisor): New procedure.
* Add shader-program-attribute-location procedure.David Thompson2014-04-211-0/+6
| | | | * 2d/shader.scm (shader-program-attribute-location): New procedure.
* Export shader-program-id procedure.David Thompson2014-04-211-0/+1
| | | | * 2d/shader.scm: Export shader-program-id.
* Rename signal-combine to signal-zip.David Thompson2014-04-211-2/+2
| | | | | * 2d/signal.scm (signal-combine): Renamed. (signal-zip): New procedure.
* Rename example file.David Thompson2014-03-311-0/+0
| | | | | | * examples/guile-2048/guile-2048: Rename. * examples/guile-2048/guile-2048.scm: New file.
* Add 2048 clone example.David Thompson2014-03-312-0/+482
| | | | | | * examples/guile-2048/guile-2048: New file. * examples/guile-2048/tile.png: New image.
* Add more texture anchor types.David Thompson2014-03-312-11/+23
| | | | | | | | * 2d/texture.scm (anchor-texture): Add top-right, bottom-left, bottom-right, top-center, and bottom-center anchor types. * 2d/font.scm (make-label): Don't call anchor-texture when there is no texture.
* Add cyan, yellow, and all 27 tango palette colors.David Thompson2014-03-301-2/+67
| | | | | | | | | | | | | * 2d/color.scm (cyan, yellow, tango-light-butter (tango-butter, tango-dark-butter, tango-light-orange) (tango-orange, tango-dark-orange, tango-light-chocolate) (tango-chocolate, tango-dark-chocolate, tango-light-chameleon) (tango-chameleon, tango-dark-chameleon, tango-light-sky-blue) (tango-sky-blue, tango-dark-sky-blue, tango-light-plum, tango-plum) (tango-dark-plum, tango-light-scarlet-red, tango-scarlet-red) (tango-dark-scarlet-red, tango-aluminium-1, tango-aluminium-2) (tango-aluminium-3, tango-aluminium-4, tango-aluminium-5) (tango-aluminium-6): New variables.
* Fix crash when the empty string is used for a label.David Thompson2014-03-301-11/+15
| | | | | | * 2d/font.scm (render-text): Bail when surface is #f. (make-label): Don't make vertices when there is no texture. (draw-label): Don't draw when there is no texture.
* Import math module in (2d color) module.David Thompson2014-03-301-0/+1
| | | | * 2d/color.scm: Import (2d color).
* Expand color API.David Thompson2014-03-301-16/+61
| | | | | | | * 2d/color.scm (color*, color+, color-, color-inverse): New procedures. (use-color): Delete it. (make-color): Clamp channels to the range [0, 1]. (rgba, rgb): Use low-level color constructor.
* Add sdl-ttf to Gentoo install instructions.David Thompson2014-03-301-1/+1
| | | | * INSTALL.org (SDL): Add 'sdl-ttf' to emerge snippet.
* Update TODO list.David Thompson2014-03-291-7/+3
|
* Add Gentoo installation instructions and fix Guile version.David Thompson2014-03-291-2/+36
| | | | | | Thanks to Arne Babenhauserheide <bab@draketo.de> * INSTALL.org: New instructions.
* Add enable-audio procedure.David Thompson2014-03-291-2/+4
| | | | * 2d/audio.scm (enable-audio): New procedure.
* Improve define-signal macro.David Thompson2014-03-291-17/+35
| | | | | | | * 2d/signal.scm (define-signal): Correctly handle when previous variable holds a non-signal value and coerce non-signal values into signals. (make-signal-maybe): New procedure. (splice-signals!): Assume that inputs are always valid signals.
* Remove vector2-translate and vector2-scale.David Thompson2014-03-291-11/+1
| | | | | * 2d/vector2.scm (vector2-translate): Delete it. (vector2-scale): Delete it.
* Don't load font shaders upon importing (2d font) module.David Thompson2014-03-292-10/+17
| | | | | | | * 2d/font.scm (font-shader): Set to #f initially. (enable-fonts): New procedure. * examples/font.scm: Enable fonts.
* Don't load sprite shaders upon importing (2d sprite) module.David Thompson2014-03-292-7/+16
| | | | | | | * 2d/sprite.scm (sprite-shader): Set to #f initially. (enable-sprites): New procedure. * 2d/common.scm: Enable sprites.
* Don't open window upon importing the (2d window) module.David Thompson2014-03-292-8/+2
| | | | | | * 2d/window.scm (open-window): Remove default argument. * examples/common.scm: Open a window.
* Replace figl with the new guile-opengl official release.David Thompson2014-03-2312-40/+20
|
* Don't start the REPL server upon importing (2d repl).David Thompson2014-03-103-8/+16
| | | | | | * 2d/repl.scm (start-2d-repl): New procedure. * examples/common.scm: Start the REPL server. * sandbox: Start the REPL server.
* Okay, I think I finally got all of the license headers updated.David Thompson2014-03-106-48/+48
|
* Remove mentions of FTGL.David Thompson2014-03-092-12/+1
| | | | | * README.org: Remove FTGL from dependencies list. * INSTALL.org: Remove FTGL installation instructions.
* Update README.David Thompson2014-03-091-28/+67
| | | | | * README.org: Talk about FRP, remove sprite batch section for now, and adjust some language.
* Add updated license header to coroutine module.David Thompson2014-03-081-8/+8
| | | | * 2d/coroutine.scm: Update license header.
* Add developer sandbox script.David Thompson2014-03-081-0/+48
| | | | * sandbox: New file.
* Add new license header to agenda and repl module.David Thompson2014-03-082-16/+16
| | | | | * 2d/agenda.scm: Add GPLv3 header. * 2d/repl.scm: Add GPLv3 header.
* Change license to GPLv3+.David Thompson2014-03-0828-287/+965
|
* Delete mvars module.David Thompson2014-03-082-168/+0
| | | | | * 2d/mvars.scm: Delete it. * Makefile.am (SOURCES): Remove '2d/mvars.scm'.
* Add missing file to SOURCES.David Thompson2014-03-081-0/+1
| | | | * Makefile.am (SOURCES): Add '2d/event.scm'.
* Update font example.David Thompson2014-03-081-19/+5
| | | | * examples/font.scm: Remove GC counter.
* Integrate cooperative REPL server.David Thompson2014-03-085-424/+37
| | | | | | | | | * 2d/repl.scm: New file. * 2d/repl/repl.scm: Delete it. * 2d/repl/server.scm: Delete it. * Makfile.am (REPL_SOURCES): Delete it. (SOURCES): Add '2d/repl.scm'. * examples/common.scm: Use cooperative REPL module.
* Rename signal-do to signal-tap.David Thompson2014-03-081-2/+2
| | | | | * 2d/signal.scm (signal-do): Delete it. (signal-tap): New procedure.
* Remove time.scm module reference from Makfile.David Thompson2014-03-081-1/+0
| | | | Makefile.am (SOURCES): Remove '2d/time.scm'.
* Update TODO list.David Thompson2014-02-171-1/+1
| | | | * TODO.org: Check item.
* Remove shader example.David Thompson2014-02-174-59/+0
| | | | | | | | * examples/Makefile.am (examples_DATA): Remove 'shader.scm'. (shaderdir, shader_DATA): Remove. * examples/shader.scm: Delete file. * examples/shaders/fragment-shader.glsl: Delete file. * examples/shaders/vertex-shader.glsl: Delete file.
* Add missing example module.David Thompson2014-02-171-0/+1
| | | | * examples/common.scm: Import (2d signal).
* Update font example.David Thompson2014-02-172-28/+21
| | | | | * examples/common.scm: Change format for displaying FPS in console. * examples/font.scm: Use new signal API generating labels.
* Convert FPS counter to a signal.David Thompson2014-02-171-4/+3
| | | | | * 2d/fps.scm (fps): Convert to signal. (accumulate-fps!): Set fps signal.
* Use new signal API for keyboard module.David Thompson2014-02-171-25/+28
| | | | | * 2d/keyboard.scm (key-last-down, key-last-up, key-arrows, key-wasd): Use new signal API.
* Use new signal API for mouse module.David Thompson2014-02-171-27/+41
| | | | | * 2d/mouse.scm (mouse-x, mouse-y, mouse-position, mouse-last-down) (mouse-last-up, mouse-down?): Use new signal API.
* Use new signal API for window module.David Thompson2014-02-171-19/+21
| | | | | | | * 2d/window.scm: (<window>): Don't export. (window-width, window-height, window-position, window-projection): Use new signal API. (open-window): Set 'window-position'.
* Import new signal moduleDavid Thompson2014-02-173-3/+3
| | | | | | * 2d/font.scm: Import (2d signal). * 2d/game.scm: Import (2d signal). * 2d/sprite.scm: Import (2d signal).
* Export alternate spelling of signal-box?.David Thompson2014-02-171-2/+4
| | | | | * 2d/signal.scm (%signal?): New procedure. (signal?): Redefined to be 'signal-box?'.
* Fix signal module name in Makefile.am.David Thompson2014-02-171-1/+1
| | | | * Makefile.am (SOURCES): Change '2d/signals.scm' to '2d/signal.scm'.
* Add hook->signal procedure.David Thompson2014-02-171-0/+11
| | | | * 2d/signal.scm (hook->signal): New procedure.