| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* 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'.
|
|
|
|
|
|
| |
* 2d/font.scm: Import (2d signal).
* 2d/game.scm: Import (2d signal).
* 2d/sprite.scm: Import (2d signal).
|
|
|
|
|
| |
* 2d/signal.scm (%signal?): New procedure.
(signal?): Redefined to be 'signal-box?'.
|
|
|
|
| |
* 2d/signal.scm (hook->signal): New procedure.
|
|
|
|
|
|
|
| |
* 2d/signal.scm (make-boxed-signal, %signal-ref, %signal-set!): Don't
export.
(signal-sample, signal-delay, signal-throttle): New procedures.
* 2d/time.scm: Delete file.
|
|
|
|
| |
* 2d/signal.scm (signal-propagate!): Dereference the correct signal.
|
|
|
|
|
| |
* 2d/signal (<signal>): Add inputs field.
(%make-signal): Add inputs parameter.
|
|
|
|
|
|
|
|
| |
Signals are now boxed so that their contents can be overwritten at the
REPL and the signal graph will magically be updated.
* 2d/signal.scm: New module.
* 2d/signals.scm: Delete old module.
|
|
|
|
| |
* 2d/helpers.scm (define-guardian): Don't use 'after-gc-hook'.
|
|
|
|
| |
This reverts commit 38f9696fed2b55e6f5484433298b7c34141da243.
|
|
|
|
|
|
| |
* 2d/agenda.scm (<agenda>): Add mutex field.
(make-agenda): Initialize with recursive mutex.
(tick-agenda!, clear-agenda!, schedule): Protect using 'with-mutex'.
|