summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update TODO list.David Thompson2014-07-291-15/+7
| | | | | * TODO.org ("0.1 Release"): Rewrite. ("0.2 Release"): Remove.
* Add optional start and step parameters to signal-count.David Thompson2014-07-221-4/+5
| | | | * sly/signal.scm (signal-count): Add start and step parameters.
* Fix typos in signal-constant and signal-tap docstrings.David Thompson2014-07-221-3/+3
| | | | * sly/signal.scm (signal-constant, signal-tap): Fix docstrings.
* Add signal-switch procedure.David Thompson2014-07-221-0/+13
| | | | * sly/signal.scm (signal-switch): New procedure.
* Integrate REPL module with game loop error hook.David Thompson2014-07-051-3/+29
| | | | | * sly/repl.scm (start-sly-repl): Add error handling. (resume-game-loop): New procedure.
* Add error handling hook to game loop.David Thompson2014-07-051-7/+47
| | | | | | * sly/game.scm (after-game-loop-error-hook): New variable (display-game-loop-error): New procedure. (start-game-loop): Add error handling.
* Ensure that agenda scheduling procedures return no value.David Thompson2014-07-051-1/+2
| | | | * sly/agenda.scm (%schedule): Return unspecified.
* Reduce allocation in transform*.David Thompson2014-07-051-11/+20
| | | | | * sly/transform.scm (transform*): Use a single array to accumulate result.
* Add copyright information for Jordan Russel.David Thompson2014-07-032-0/+3
| | | | | * AUTHORS: New file. * examples/2048/2048: Add copyright info for Jordan Russel.
* Remove global variables for controlling tick rate.David Thompson2014-07-031-57/+62
| | | | | | | | | * sly/game.scm (tick-interval, max-ticks-per-frame): Remove them. (draw, update, alpha, frame-sleep): Move within start-game-loop closure. (interval): New procedure. (start-game-loop): Add tick-rate, frame-rate, and max-ticks-per-frame keyword arguments.
* 2048: Fix board-win? and improve board-insert.Jordan Russell2014-07-031-12/+12
| | | | | | * examples/2048/2048 (board-win?): Check the board passed in, not a new one. (board-insert): Simplify. (replace-at): New procedure.
* Remove file that should never have been committed.David Thompson2014-07-021-54/+0
| | | | * sly/lru-cache.scm: Delete it.
* Allow some label properties to be signals.David Thompson2014-07-021-3/+7
| | | | | | * sly/font.scm (%label-text, %label-position, %label-color): New procedures. (label-text, label-position, label-color): Use signal-ref-maybe.
* Allow some sprite properties to be signals.David Thompson2014-07-021-4/+9
| | | | | | | * sly/sprite.scm (%sprite-position, %sprite-scale, %sprite-rotation, %sprite-color): New procedures. (sprite-position, sprite-scale, sprite-rotation, sprite-color): Use signal-ref-maybe.
* Add transition example.David Thompson2014-07-021-0/+45
| | | | * examples/transition.scm: New file.
* Fix sandbox.David Thompson2014-07-021-1/+1
| | | | * sandbox: s/vector2/vector/
* Add transition module.David Thompson2014-06-292-0/+165
| | | | | * sly/transition.scm: New file. * Makefile.am (SOURCES): Add it.
* Add signal-drop-repeats procedure.David Thompson2014-06-291-0/+15
| | | | * sly/signal.scm (signal-drop-repeats): New procedure.
* Add color-scale procedure.David Thompson2014-06-291-0/+8
| | | | * sly/color.scm (color-scale): New procedure.
* Add pi/2 variable.David Thompson2014-06-291-1/+2
| | | | * sly/math.scm (pi/2): New variable.
* Bump WIP version to 0.2.0.David Thompson2014-06-291-1/+1
|
* Bump guile version requirement.David Thompson2014-06-281-1/+1
| | | | * README.org (Dependencies): Change guile version to 2.0.11.
* Remove config.scm from version control.David Thompson2014-06-282-28/+1
| | | | | * sly/config.scm: Delete it. * .gitignore: Add sly/config.scm.
* Rename guile-2d to Sly!David Thompson2014-06-2860-343/+886
| | | | Massive find/replace job.
* Fix window-size signal.David Thompson2014-06-221-1/+1
| | | | * 2d/window.scm (window-size): Fix improper use of vector literal.
* Delete transform-position procedure.David Thompson2014-06-201-6/+1
| | | | * 2d/transform (transform-position): Delete it.
* Add support for 3D vectors in translate procedure.David Thompson2014-06-201-6/+19
| | | | * 2d/transform.scm (translate): Support 3D vector as argument.
* Add support for 3D vectors and scalars in scale procedure.David Thompson2014-06-201-6/+25
| | | | * 2d/transform.scm (scale): Support 3D vectors and scalars as arguments.
* Tweak transform API.David Thompson2014-06-101-25/+7
| | | | | | * 2d/transform.scm (make-transform*): Delete it. (transform-translate, transform-scale): Rename. (translate, scale): New procedures.
* Add rotation transformations for x and y axes.David Thompson2014-06-091-5/+17
| | | | | | | * 2d/transform.scm (rotate-x, rotate-y, rotate-z): New procedures. (transform-rotate): Renamed. (make-transform*): Use rotate-z for now.
* Fix README.David Thompson2014-06-081-11/+9
| | | | * README.org: Replace references to vector2 with vectors.
* Replace vector2 module with a more generic vector module.David Thompson2014-06-0719-229/+279
| | | | | | | | | | | | | | | | | | | | | | | | | * 2d/vector2.scm: Delete it. * 2d/vector.scm: New file. * Makefile.am (SOURCES): s/vector2/vector. * 2d/font.scm: * 2d/keyboard.scm: * 2d/mouse.scm: * 2d/rect.scm: * 2d/shader.scm: * 2d/sprite.scm: * 2d/texture.scm: * 2d/transform.scm: * 2d/window.scm: * examples/2048/2048: * examples/animation.scm: * examples/coroutine.scm: * examples/font.scm: * examples/particles.scm: * examples/simple.scm: * examples/tilemap.scm: Use vectors instead of defunct vector2.
* Add v= procedure.David Thompson2014-05-271-0/+5
| | | | * 2d/vector2.scm (v=): New procedure.
* Add scalar multiplication support to v* and remove vscale.David Thompson2014-05-271-8/+7
| | | | | * 2d/vector2.scm (vscale): Delete it. (v*): Add support for scalar multiplication.
* Add perspective-projection procedure.David Thompson2014-05-261-1/+28
| | | | * 2d/transform.scm (perspective-projection): New procedure.
* Fix embarrassing issue with transform-translate.David Thompson2014-05-251-4/+4
| | | | * 2d/transform.scm (transform-translate): Correct matrix.
* Rename, unexport, and memoize shader-program-attribute-location.David Thompson2014-05-221-5/+7
| | | | | * 2d/shader.scm (shader-program-attribute-location): Rename. (attribute-location): Memoize.
* Memoize uniform-location.David Thompson2014-05-222-7/+23
| | | | | | | * 2d/helpers.scm (memoize): New procedure. * 2d/shader.scm (uniform-location): memoize. (uniform-set!): Pass symbol instead of string.
* Add load-shader-program procedure.David Thompson2014-05-223-14/+15
| | | | | | | * 2d/shader.scm (load-shader-procedure): New procedure. * 2d/font.scm: * 2d/sprite.scm: Use it.
* Add explicit vertex/fragment shader parameters to make-shader-program.David Thompson2014-05-221-3/+18
| | | | | * 2d/shader.scm (make-shader-program): Change parameter list. (vertex-shader?, fragment-shader?): New procedures.
* s/guile-2048/2048/David Thompson2014-05-212-1/+1
|
* Add pre-inst-env script.David Thompson2014-05-215-5/+41
| | | | | | | | | | | | | * configure.ac: Add pre-inst-env as config file. * pre-inst-env.in: New file. * 2d/config.scm.in (%pkgdatadir): Use GUILE_2D_PKGDATADIR environment variable, if defined. * README.org: Document pre-inst-env script. * .gitignore: Ignore pre-inst-env.
* Fix sandbox.David Thompson2014-05-181-2/+2
| | | | * sandbox: Use start/stop-game-loop procedures.
* Add make-transform*.David Thompson2014-05-151-0/+10
| | | | * 2d/transform.scm (make-transform*): New procedure.
* Make sprites immutable.David Thompson2014-05-073-26/+29
| | | | | | | | | | | | | * 2d/sprite.scm (<sprite>): Make immutable. (set-sprite-drawable!, set-sprite-position!, set-sprite-scale!) (set-sprite-rotation!, set-sprite-color!, set-sprite-anchor!): Delete. (set-sprite-drawable, set-sprite-position, set-sprite-scale) (set-sprite-rotation, set-sprite-color, set-sprite-anchor): New procedures. * examples/coroutine.scm: * examples/particles.scm: Use immutable sprite setters.
* Tweak README to reflect API changes.David Thompson2014-05-041-6/+5
|
* Add live-reload module.David Thompson2014-05-042-0/+55
| | | | | | * Makefile.am (SOURCES): Add it. * 2d/live-reload.scm: New module.
* Update TODO list.David Thompson2014-05-041-3/+4
|
* Add current-agenda parameter.David Thompson2014-05-0411-75/+99
| | | | | | | | | | | | | | | | | | | | | | | | | * 2d/agenda.scm (current-agenda): New variable. (with-agenda): New macro. (agenda-time, tick-agenda!, clear-agenda!, schedule) (schedule-interval, schedule-each, wait): Remove agenda parameter. * 2d/game.scm (game-agenda): Delete it. (update): Tick current agenda. * 2d/helpers.scm (define-guardian): Remove agenda argument. * 2d/repl.scm (start-2d-repl): Remove agenda argument to schedule-each. * 2d/signal.scm (signal-sample, signal-delay, signal-throttle): Remove agenda parameter. * 2d/sprite.scm: * examples/common.scm: * examples/coroutine.scm: * examples/font.scm: * examples/particles.scm: Remove mention of game-agenda. * README.org: Update example snippets.
* Allow make-rect to accept two vector2s as arguments.David Thompson2014-05-031-1/+9
| | | | | * 2d/rect.scm (make-rect): Use case-lambda to accept four numbers or two vector2s.