| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
* 2d/transform.scm (transform-translate): Correct matrix.
|
|
|
|
|
| |
* 2d/shader.scm (shader-program-attribute-location): Rename.
(attribute-location): Memoize.
|
|
|
|
|
|
|
| |
* 2d/helpers.scm (memoize): New procedure.
* 2d/shader.scm (uniform-location): memoize.
(uniform-set!): Pass symbol instead of string.
|
|
|
|
|
|
|
| |
* 2d/shader.scm (load-shader-procedure): New procedure.
* 2d/font.scm:
* 2d/sprite.scm: Use it.
|
|
|
|
|
| |
* 2d/shader.scm (make-shader-program): Change parameter list.
(vertex-shader?, fragment-shader?): New procedures.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* 2d/transform.scm (make-transform*): New procedure.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
| |
* Makefile.am (SOURCES): Add it.
* 2d/live-reload.scm: New module.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* 2d/rect.scm (make-rect): Use case-lambda to accept four numbers or two
vector2s.
|
|
|
|
| |
* 2d/transform.scm (transform-position): New procedure.
|
|
|
|
|
| |
* 2d/transform.scm (translate, scale, rotate): Renamed.
(transform-translate, transform-scale, transform-rotate): New names.
|
|
|
|
| |
* 2d/rect.scm (null-rect): New variable.
|
|
|
|
|
|
| |
This is embarrassing.
* 2d/game.scm (update): Actually use the iterative inner procedure.
|
|
|
|
| |
* 2d/game.scm (alpha): Clamp value to [0, 1].
|
|
|
|
|
| |
* 2d/game.scm (max-ticks-per-frame): New variable
(update): Limit ticks to the value of max-ticks-per-frame.
|
|
|
|
| |
* 2d/game.scm: Change commentary.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (tick-interval): No longer a parameter.
(run-game-loop, start-game-loop): Rename.
(quit-game, stop-game-loop): Rename.
* examples/animation.scm: Use start-game-loop and stop-game-loop.
* examples/common.scm: Use start-game-loop and stop-game-loop.
* examples/coroutine.scm: Use start-game-loop and stop-game-loop.
* examples/font.scm: Use start-game-loop and stop-game-loop.
* examples/guile-2048/guile-2048.scm: Use start-game-loop and stop-game-loop.
* examples/particles.scm: Use start-game-loop and stop-game-loop.
* examples/simple.scm: Use start-game-loop and stop-game-loop.
* examples/tilemap.scm: Use start-game-loop and stop-game-loop.
|
|
|
|
|
| |
* 2d/game.scm (frame-sleep): New procedure.
(game-loop): Use frame-sleep.
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* 2d/wrappers/gl.scm (glDrawArraysInstanced): New procedure.
(glVertexAttribDivisor): New procedure.
|
|
|
|
| |
* 2d/shader.scm (shader-program-attribute-location): New procedure.
|
|
|
|
| |
* 2d/shader.scm: Export shader-program-id.
|
|
|
|
|
| |
* 2d/signal.scm (signal-combine): Renamed.
(signal-zip): New procedure.
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* 2d/color.scm: Import (2d color).
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* 2d/audio.scm (enable-audio): New procedure.
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* 2d/vector2.scm (vector2-translate): Delete it.
(vector2-scale): Delete it.
|
|
|
|
|
|
|
| |
* 2d/font.scm (font-shader): Set to #f initially.
(enable-fonts): New procedure.
* examples/font.scm: Enable fonts.
|
|
|
|
|
|
|
| |
* 2d/sprite.scm (sprite-shader): Set to #f initially.
(enable-sprites): New procedure.
* 2d/common.scm: Enable sprites.
|
|
|
|
|
|
| |
* 2d/window.scm (open-window): Remove default argument.
* examples/common.scm: Open a window.
|
| |
|
|
|
|
|
|
| |
* 2d/repl.scm (start-2d-repl): New procedure.
* examples/common.scm: Start the REPL server.
* sandbox: Start the REPL server.
|
| |
|
|
|
|
| |
* 2d/coroutine.scm: Update license header.
|
|
|
|
|
| |
* 2d/agenda.scm: Add GPLv3 header.
* 2d/repl.scm: Add GPLv3 header.
|
| |
|
|
|
|
|
| |
* 2d/mvars.scm: Delete it.
* Makefile.am (SOURCES): Remove '2d/mvars.scm'.
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* 2d/signal.scm (signal-do): Delete it.
(signal-tap): New procedure.
|
|
|
|
|
| |
* 2d/fps.scm (fps): Convert to signal.
(accumulate-fps!): Set fps signal.
|
|
|
|
|
| |
* 2d/keyboard.scm (key-last-down, key-last-up, key-arrows, key-wasd):
Use new signal API.
|
|
|
|
|
| |
* 2d/mouse.scm (mouse-x, mouse-y, mouse-position, mouse-last-down)
(mouse-last-up, mouse-down?): Use new signal API.
|
|
|
|
|
|
|
| |
* 2d/window.scm: (<window>): Don't export.
(window-width, window-height, window-position, window-projection): Use
new signal API.
(open-window): Set 'window-position'.
|