summaryrefslogtreecommitdiff
path: root/2d/game-loop.scm
Commit message (Collapse)AuthorAgeFilesLines
* Quit game when scene stack is empty.David Thompson2013-11-031-5/+10
|
* Fix default key-down event.David Thompson2013-11-031-1/+2
|
* Add event observer to scene.David Thompson2013-11-031-69/+75
| | | | | Some convenient default events are provided to make quitting the game easy for new developers.
* Remove stage local variables.David Thompson2013-11-031-1/+1
| | | | | Use an the scene initialization thunk to return the needed game state instead.
* Remove debugging statement.David Thompson2013-10-231-1/+0
|
* Use the new scene/stage API.David Thompson2013-10-231-61/+26
|
* Simplify scene stack.David Thompson2013-10-231-39/+32
|
* Add error handling in game loop.David Thompson2013-10-231-5/+13
| | | | | | | Print backtrace and pause game when exceptions occur. This way the developer can fix the error and resume the game rather than the game crashing, forcing the developer to restart the game. The REPL remains active when the game is paused, of course.
* Move game-fps variable.David Thompson2013-10-231-6/+2
|
* Implement game loop pausing.David Thompson2013-10-231-6/+15
|
* Add a paused flag in addition to the running flag.David Thompson2013-10-231-7/+28
|
* Clean up docstrings for game-loop module.David Thompson2013-09-151-10/+12
|
* Rename scene draw and update procedures.David Thompson2013-09-151-2/+2
| | | | They were inconsistent with the rest of the API.
* Switch back to a simpler method for FPS calculation.David Thompson2013-09-141-39/+21
|
* Start debugging the "spiral of death" issue.David Thompson2013-09-131-25/+33
|
* Create a scene stack interface.David Thompson2013-09-061-21/+55
|
* Add the beginnings of game scene management.David Thompson2013-09-061-2/+13
|
* Remove all hooks and instead trigger events on the current scene.David Thompson2013-09-061-68/+60
|
* Prevent circular dependency by moving core game data structures to another ↵David Thompson2013-09-061-0/+1
| | | | module.
* Add a *running* flag to the game loop.David Thompson2013-09-061-13/+22
|
* Add some documentation.David Thompson2013-09-021-0/+4
|
* Pass along the *repl-stack* fluid so that nested REPLs work right.David Thompson2013-09-021-2/+5
|
* Move both mvars into the repl module.David Thompson2013-09-021-28/+4
|
* Remove frame-sleep and add run-repl.David Thompson2013-09-021-8/+7
|
* Execute REPL thunks in the context of the main game thread.David Thompson2013-09-021-19/+34
|
* Only unlock the game loop mutex when the REPL server is waiting.David Thompson2013-08-191-4/+16
|
* Add a global mutex that allows the REPL server to be used more safely while ↵David Thompson2013-07-311-0/+19
| | | | the game loop is running.
* Small re-organization.David Thompson2013-07-311-1/+10
|
* Move game-loop procedure out of run-game-loop.David Thompson2013-07-311-16/+16
|
* Spawn REPL server when game loop starts.David Thompson2013-07-311-0/+3
|
* Floor tick-interval since we're dealing with milliseconds and not fractions ↵David Thompson2013-07-311-1/+1
| | | | of milliseconds.
* Use weighted average FPS measurement.David Thompson2013-07-311-22/+38
|
* Use the current-time argument in time-left.David Thompson2013-07-311-1/+1
|
* Improve game loop.David Thompson2013-07-311-18/+16
| | | | Instead of a busy loop that eats all of the CPU, sleep in-between frames when possible.
* Use hooks instead of primitive callback procedures.David Thompson2013-07-281-84/+49
|
* Rewrite game loop to use pure functions.David Thompson2013-07-281-34/+37
|
* Add additional SDL event handlers.David Thompson2013-07-211-1/+26
|
* Remove event-keycode and event-keymods.David Thompson2013-07-211-12/+4
|
* Update to guile-sdl 0.5.0 API.David Thompson2013-07-211-7/+7
|
* Update the global agenda in the game loop.David Thompson2013-07-151-0/+2
|
* Clean up run-game-loop procedure.David Thompson2013-06-261-3/+3
|
* Use delayed evaluation of SDL:get-ticks to avoid initial frame stutter.David Thompson2013-06-251-6/+6
|
* Add mouse event callbacks.David Thompson2013-06-251-1/+33
|
* Pass key modifiers and unicode value as arguments to key up/down events.David Thompson2013-06-251-4/+13
|
* Apply SDL:enum->number on keysyms.David Thompson2013-06-251-2/+5
|
* Improve update loop logic.David Thompson2013-06-231-8/+21
|
* Can't use SDL:get-ticks before SDL is initialized.David Thompson2013-06-161-6/+6
|
* Add game-loop module.David Thompson2013-06-131-0/+124