| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
* 2d/texture.scm (draw-texture): Delete it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 2d/sprite.scm: (sprite-vertex): Remove color vertex.
(r-offset): Delete it.
(pack-sprite-vertices): Remove logic moved to shader.
(draw-sprite-vertices): Remove color vertex array rendering.
(sprite-shader): New variable.
(<sprite>): Remove dirty field and adjust setters.
(make-anchor): New procedure.
(update-sprite-vertices!): Use new 'pack-sprite-vertices'.
(make-sprite): Use 'make-anchor' and 'update-sprite-vertices!'.
(dirty-sprite-setter): Delete it.
(load-sprite): Formatting.
(sprite-animation-texture): Delete it.
(drawable-texture): New procedure.
(sprite-texture): Extract body to 'drawable-texture'.
(sprite-anchor-vector): Delete it.
(set-sprite-anchor!): Reimplemented.
(update-sprite-animator!): Update vertices.
(draw-sprite): Use shader program.
(<sprite-batch>, make-sprite-batch, sprite-batch?,
sprite-batch-max-size, sprite-batch-size, set-sprite-batch-size!,
sprite-batch-texture, set-sprite-batch-texture!,
sprite-batch-vertices, sprite-batch-draw, with-sprite-batch): Delete
all sprite batch code.
* data/Makefile.am (shadersdir, shaders_DATA): New variables.
* data/shaders/sprite-fragment.glsl: New shader.
* data/shaders/sprite-vertex.glsl: New shader.
|
|
|
|
| |
* 2d/shader.scm (load-shader): Add exception handling.
|
|
|
|
|
| |
* 2d/shader.scm: Use vec2 instead of vec4 when setting a vector2
uniform value.
|
|
|
|
| |
* 2d/game.scm (draw): Remove matrix mode calls.
|
|
|
|
|
| |
* 2d/font.scm (default-font): Delete variable.
(load-default-font): New procedure.
|
|
|
|
| |
* 2d/agenda.scm (schedule-interval): Actually use the 'delay' parameter.
|
|
|
|
| |
* 2d/window.scm (window-projection): New variable.
|
|
|
|
|
|
| |
* 2d/transform.scm: New module.
* 2d/shader.scm: Add uniform setter for transforms.
* Makefile.am (SOURCES): Add '2d/transform.scm'.
|
|
|
|
|
|
|
|
|
| |
* data/fonts/DejaVuSans.ttf: New file.
* data/fonts/AUTHORS: New file.
* data/Makefile.am: New file.
* configure.ac (AC_CONFIG_FILES): Add 'data/Makefile'.
* Makefile.am (SUBDIRS): Add 'data'.
* 2d/font.scm (default-font): New variable.
|
|
|
|
|
|
|
| |
* 2d/config.scm.in: New file.
* Makefile.am (2d/config.scm): New rule.
(SOURCES): Add 2d/config.scm.
* .gitignore: Ignore 2d/config.scm.
|
|
|
|
|
|
|
|
| |
* 2d/shader.scm: New module.
* Makefile.am: Add 2d/shader.scm to SOURCES.
* examples/shader.scm: New example.
* examples/shaders/fragment-shader.glsl: New shader.
* examples/shaders/vertex-shader.glsl: New shader.
|
|
|
|
| |
* 2d/game.scm: Don't import (2d game), silly.
|
|
|
|
|
|
| |
* 2d/helpers.scm (define-guardian): New macro.
* 2d/texture.scm (reap-textures): Delete it.
(texture-guardian): Defined using define-guardian.
|
|
|
|
|
|
|
|
| |
* 2d/coroutine.scm (call-with-coroutine): New name for coroutine.
(coroutine): New macro.
(colambda, codefine, codefine*): Use call-with-coroutine.
* examples/coroutine.scm: Use coroutine macro.
* README.org: Update coroutine and agenda examples.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 2d/agenda.scm: (*global-agenda*, current-agenda, with-agenda): Delete.
(agenda?, agenda-time): Export.
(schedule-every, schedule-each): Rename schedule-every to
schedule-each.
(schedule-next): Delete.
* 2d/game.scm: (game-agenda): New variable.
(update): Tick game-agenda.
* 2d/repl.scm: Use new agenda API.
* 2d/sprite.scm: Use new agenda API.
* 2d/time.scm: (time-every, time-each, time-delay): Change signature and
use new agenda API.
* examples/coroutine.scm: Use new agenda API.
* examples/particles.scm: Use new agenda API.
|
|
|
|
| |
* 2d/window.scm: New hook.
|
|
|
|
| |
* 2d/game.scm: Remove (2d coroutine) and (2d vector2) imports.
|
|
|
|
|
|
| |
* 2d/window.scm (open-window): Remove viewport config.
* 2d/game.scm (draw): Add viewport config.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 2d/event.scm: New module.
* 2d/game.scm: Remove event handling code.
* 2d/keyboard.scm: Import (2d event) instead of (2d game).
* 2d/mouse.scm: Import (2d event) instead of (2d game).
* 2d/window.scm: Import (2d event) instead of (2d game).
|
|
|
|
| |
* 2d/window.scm (window-resize-hook): New hook.
|
|
|
|
| |
* 2d/font.scm: Remove font-ftgl-font from export list.
|
|
|
|
|
|
|
| |
* 2d/audio.scm (ignore-value): New macro.
(set-sample-volume, play-sample, pause-music, resume-music)
(rewind-music, stop-music): Ignore return value.
(music-playing?, music-paused?): Add docstrings.
|
|
|
|
| |
* 2d/audio.scm: Clean up procedures.
|
|
|
|
|
|
|
| |
* 2d/window.scm (open-window, close-window): Remove open/close audio
calls.
* 2d/audio.scm: Open audio when module is imported.
|
|
|
|
| |
* 2d/texture.scm: Remove commented code.
|
|
|
|
| |
* 2d/repl/repl.scm (add-to-repl-mvar): Fix.
|
|
|
|
| |
* 2d/repl/repl.scm: Fix bug.
|
|
|
|
| |
* 2d/wrappers/gl.scm: Remove unused cruft.
|
|
|
|
| |
* 2d/texture.scm (draw-texture): Use color module.
|
|
|
|
| |
* 2d/repl/repl.scm (add-to-repl-mvar, run-repl): Cleanup.
|
|
|
|
| |
* 2d/helpers.scm (rgba->gl-color): Remove export.
|
|
|
|
|
|
| |
* 2d/agenda.scm (tick-agenda!, clear-agenda!): Add agenda param.
* 2d/game.scm (update, tick): Update usage of tick-agenda!.
|
|
|
|
|
| |
* 2d/mouse.scm (mouse-move-hook, mouse-press-hook)
(mouse-click-hook): New hooks.
|
|
|
|
| |
* 2d/keyboard.scm (key-press-hook, key-release-hook): New hooks.
|
|
|
|
| |
* 2d/game.scm (handle-event): Fix bug.
|
|
|
|
|
|
| |
* 2d/repl/repl.scm (add-to-repl-mvar): New procedure.
(poll-interval): New variable.
(flush-repl): Schedule in paused-agenda.
|
|
|
|
|
| |
* 2d/game.scm (paused-agenda): New variable.
(tick): Tick paused-agenda.
|
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (start-game-loop): Don't spawn REPL.
(update-and-render, tick): Don't run REPL.
(run-repl-thunk, run-repl): Move.
* 2d/repl/repl.scm: (run-repl-thunk, flush-repl): Add.
(flush-repl): Schedule REPL to be run within main loop.
|
| |
|
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (accumulator): New parameter.
(draw-hook): Change to arity 2.
(current-fps, accumulate-fps!, game-fps): Delete.
(game-loop, update-and-render): Drop accumulator formal parameter.
* 2d/fps.scm: New module.
|
|
|
|
|
|
| |
* 2d/game.scm (handle-events, read-input): Rename it.
(event-handlers, register-event-handler, handle-event): Use a hash table
instead of an alist.
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (%state): Replace with game-loop-status.
(game-loop-status): New parameter.
(run-game-loop): Set status to running.
(game-running?, game-paused?, pause-game, resume-game, quit-game): Use
parameter.
|
|
|
|
|
| |
* 2d/game.scm (run-game-loop): Compute tick-interval.
(update, update-and-render, tick): Use tick-interval parameter.
|
|
|
|
|
|
|
| |
* 2d/game.scm (run-game, run-game-loop): Rename and remove draw callback
parameter.
(draw-hook): New hook.
(draw): Run draw hook.
|
|
|
|
| |
* 2d/agenda.scm (make-time-segment, wait): Change docstrings.
|
|
|
|
| |
* 2d/agenda.scm (make-time-segment, wait): Use cut.
|
|
|
|
|
| |
* 2d/agenda.scm (update-agenda, tick-agenda!): Rename.
(clear-agenda, clear-agenda!): Rename.
|
|
|
|
| |
* 2d/agenda.scm: Export *global-agenda* and current-agenda.
|
|
|
|
|
|
|
|
| |
* 2d/agenda.scm (agenda-schedule, schedule): Rename.
(agenda-schedule-interval, schedule-interval): Rename.
(schedule-next, schedule-every): New procedures.
* 2d/sprite.scm: Use schedule-every.
* 2d/time.scm (time-every): Use schedule-interval.
|