summaryrefslogtreecommitdiff
path: root/examples
Commit message (Collapse)AuthorAgeFilesLines
* examples: Add framebuffer example.David Thompson2015-09-212-0/+65
| | | | | * examples/framebuffer.scm: New file. * examples/Makefile.am (nobase_dist_examples_DATA): Add it.
* render: Reimplement rendering engine using functional combinators.David Thompson2015-09-218-193/+222
| | | | | | | | | | | Warning: This is a huge commit. I completely gutted the old scene graph and replaced it with a somewhat monadic rendering combinator module instead. The interface remains purely functional, but replaces the <model> data type with procedures in the rendering monad instead. This opens the door for rendering *anything*, not just meshes. Now I can implement particle systems and other non-static things.
* render: Reimplement OpenGL state machine manager.David Thompson2015-08-261-1/+0
| | | | | | | | | | | | | The implementation is a bit cleaner, and it's a stepping stone towards render combinators. * sly/render/context.scm: Delete. * sly/render.scm: New file. * Makefile.am (SOURCES): Add it. Remove context.scm. * sly/game.scm (run-game-loop): Use new <graphics> type. * sly/render/model.scm (draw-model): Likewise. * sly/render/scene.scm (draw-scene): Likewise. * examples/2048/2048.scm: Remove (sly render context) import.
* examples: Add Conway's Game of Life.Christopher Allan Webber2015-06-152-0/+338
| | | | | * examples/life.scm: New file. * examples/Makefile.am (nobase_dist_examples_DATA): Add it.
* Add composite (sly) module.David Thompson2015-06-142-10/+3
| | | | | | | | | * sly.scm: New file. * Makefile.am (SOURCES): Add it. * sandbox.in: Use new module. * examples/common.scm: Likewise. * examples/font.scm: Likewise. * README ("Example"): Update example.
* Rename start-game-loop to run-game-loop.David Thompson2015-06-107-7/+7
| | | | | | | | | | | | | * doc/api/init.texi: s/start-game-loop/run-game-loop/ * examples/2048/2048.scm: Likewise. * examples/animation.scm: Likewise. * examples/font.scm: Likewise. * examples/joystick.scm: Likewise. * examples/mines/mines.scm: Likewise. * examples/simple.scm: Likewise. * examples/tilemap.scm: Likewise. * sandbox.in: Likewise. * sly/game.scm: Likewise.
* Fix simple example.David Thompson2015-06-061-24/+3
|
* Update examples to use new interfaces.David Thompson2015-06-067-103/+125
|
* examples: Use null-model.David Thompson2015-04-052-23/+18
| | | | | * examples/2048/2048.scm: Use null-model * examples/mines/mines.scm: Likewise.
* render: model: Prefix procedures with 'model-'.David Thompson2015-04-057-72/+71
| | | | | | | | | | | | | | * sly/render/model.scm (paint, blend, group, group*, move, place): Renamed. (model-paint, model-blend, model-group, list->model, model-move, model-place): New procedures. * README.org (Example): s/move/model-move/ * examples/2048/2048.scm: Update example. * examples/mines/mines.scm: Likewise. * examples/animation.scm: Likewise. * examples/font.scm: Likewise. * examples/joystick.scm: Likewise. * examples/simple.scm: Likewise. * examples/tilemap.scm: Likewise.
* examples: Clean up minesweeper demo.David Thompson2015-03-101-27/+46
| | | | * examples/mines/mines.scm: Miscellaneous clean up.
* render: Merge <group> into <model>.David Thompson2015-03-097-81/+75
| | | | | | | | | | | | | | | | | | | | * sly/render/model.scm (<model>): Add 'transform' and 'children' fields. (model-transform, model-children): New accessors. (make-model): Add 'transform' and 'children' keyword arguments. (set-transform-identity!): New procedure. (draw-model): Recursively draw model and all children. (model-paint, model-blend): Renamed. (paint, blend, group, group*, move, place): New procedures. * sly/render/group.scm: Delete. * Makefile.am (SOURCES): Remove it. * examples/2048/2048.scm: Update example. * examples/animation.scm: Likewise. * examples/font.scm: Likewise. * examples/joystick.scm: Likewise. * examples/mines/mines.scm: Likewise. * examples/simple.scm: Likewise. * examples/tilemap.scm: Likewise. * README.org (Example): Update sample code.
* examples: Update tile map example to use more efficient rendering.David Thompson2015-01-191-40/+45
| | | | * examples/tilemap.scm: Update it.
* mines: Disable clicking on tiles when you lose.Christopher Allan Webber2015-01-101-1/+2
| | | | | | | | Also add myself to AUTHORS! ;) * AUTHORS: Add me. * examples/mines/mines.scm (board-reveal): Don't reveal tiles in 'game over' state.
* examples: Fix Makefile.David Thompson2014-12-071-6/+3
| | | | | | * examples/Makefile.am (examples_DATA, imagedir, image_DATA): Delete. (nobase_dist_examples_DATA): New variable that preserves directory structure when 'make install' is run.
* examples: Recolor some sprites.David Thompson2014-12-062-0/+0
| | | | | * examples/mines/images/exploded.png: Recolor. * examples/mines/images/flag.png: Likewise.
* examples: Update 2048.David Thompson2014-12-062-10/+5
| | | | | | * examples/2048/2048: Delete. * examples/2048/2048.scm: New file. * examples/Makefile.am (examples_DATA): Add new file. Remove old one.
* examples: Add minesweeper clone.David Thompson2014-12-0616-2/+417
| | | | | | | * examples/mines/mines.scm: New file. * examples/mines/images/*: New files. * examples/Makefile.am (examples_DATA): Add 'mines.scm'. (image_DATA): Add images.
* examples: Update Makefile.David Thompson2014-11-301-4/+6
| | | | | | * examples/Makefile.am (examples_DATA): Add missing examples. Remove old ones. (image_DATA): Add 2048's image asset.
* examples: Delete particles example.David Thompson2014-11-301-84/+0
| | | | | | It's not a real particle system anyway. * examples/particle.scm: Delete.
* examples: Update tile map example.David Thompson2014-11-301-37/+32
| | | | * examples/tilemap.scm: Update.
* examples: Delete scene graph example.David Thompson2014-11-301-181/+0
| | | | | | Every example is a scene graph example! * examples/scene-graph.scm: Delete.
* examples: Delete transition example.David Thompson2014-11-301-45/+0
| | | | | | Made redundant by animation example. * examples/transition.scm: Delete.
* examples: Update joystick example.David Thompson2014-11-301-45/+42
|
* examples: Update font example.David Thompson2014-11-301-15/+26
| | | | * examples/font.scm: Update.
* examples: Delete coroutine example.David Thompson2014-11-301-56/+0
| | | | | | Coroutines are now more of an implementation detail. * examples/coroutine.scm: Delete.
* examples: Update a few example programs.David Thompson2014-11-304-73/+90
| | | | | | | * examples/2048/2048: Update. * examples/animation.scm: Likewise. * examples/common.scm: Likewise. * examples/simple.scm: Likewise.
* examples: Update 2048.David Thompson2014-11-301-27/+29
| | | | * examples/2048/2048: Use new group/model procedures.
* examples: Update 2048.David Thompson2014-11-301-129/+97
| | | | * examples/2048/2048: Update to use new Sly API.
* render: Move font module to sly/render directory.David Thompson2014-11-082-2/+2
| | | | | | | | * sly/font.scm: Delete. * sly/render/font.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * examples/font.scm: Use (sly render font). * examples/joystick.scm: Likewise.
* render: Move color module to sly/render directory.David Thompson2014-11-084-4/+4
| | | | | | | | | | | | | | | | | | * sly/color.scm: Delete. * sly/render/color.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * sly/font.scm: Use (sly render color) module. * sly/render/camera.scm: Likewise. * sly/render/mesh.scm: Likewise. * sly/render/shader.scm: Likewise. * sly/render/sprite.scm: Likewise. * sly/render/texture.scm: Likewise. * sly/render/vertex-array.scm: Likewise. * sly/transition.scm: Likewise. * examples/font.scm: Likewise. * examples/simple.scm: Likewise. * examples/tilemap.scm: Likewise. * examples/transition.scm: Likewise.
* input: Move joystick module to sly/input directory.David Thompson2014-11-081-1/+1
| | | | | | | * sly/joystick.scm: Delete. * sly/input/joystick.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * examples/joystick.scm: Use (sly input joystick) module.
* input: Move mouse module to sly/input directory.David Thompson2014-11-081-1/+1
| | | | | | | * sly/mouse.scm: Delete. * sly/input/mouse.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * examples/font.scm: Use (sly input mouse).
* input: Move keyboard module to sly/input directory.David Thompson2014-11-082-2/+2
| | | | | | | | * sly/keyboard.scm: Delete. * sly/input/keyboard.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old file. * examples/common.scm: Use (sly input keyboard). * examples/tilemap.scm: Likewise.
* math: Move rect module to sly/math directory.David Thompson2014-11-081-1/+1
| | | | | | | | * sly/rect.scm: Delete. * sly/math/rect.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * sly/render/camera.scm: Use (sly math rect) module. * examples/simple.scm: Likewise.
* math: Move transform module to sly/math directory.David Thompson2014-11-081-1/+1
| | | | | | | | | | | | | * sly/transform.scm: Delete. * sly/render/transform.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * sly/render/camera.scm: Use (sly math transform). * sly/render/mesh.scm: Likewise. * sly/render/renderer.scm: Likewise. * sly/render/scene.scm: Likewise. * sly/render/shader.scm: Likewise. * sly/window.scm: Likewise. * examples/simple.scm: Likewise.
* render: Move scene module to sly/render directory.David Thompson2014-11-082-2/+2
| | | | | | | | * sly/scene.scm: Delete. * sly/render/scene.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * examples/simple.scm: Use (sly render scene). * examples/tilemap.scm: Likewise.
* render: Move tileset module to sly/render directory.David Thompson2014-11-082-2/+2
| | | | | | | | * sly/tileset.scm: Delete. * sly/render/tileset.scm: New file. * Makefile.am (SOURCES): Add new file. Delete old one. * examples/animation.scm: Use (sly render tileset). * examples/tileset.scm: Likewise.
* render: Move sprite module to sly/render directory.David Thompson2014-11-078-8/+8
| | | | | | | | | | | | | | | * sly/sprite.scm: Delete. * sly/render/sprite.scm: New file. * Makefile.am (SOURCES): Add new file and delete old one. * sly/font.scm: Use (sly render sprite). * examples/animation.scm: Likewise. * examples/common.scm: Likewise. * examples/coroutine.scm: Likewise. * examples/joystick.scm: Likewise. * examples/particles.scm: Likewise. * examples/simple.scm: Likewise. * examples/tilemap.scm: Likewise. * examples/transition.scm: Likewise.
* render: Move texture module to sly/render directory.David Thompson2014-11-075-5/+5
| | | | | | | | | | | | | | | | | | | | * sly/texture.scm: Delete. * sly/render/texture.scm: New file. * Makefile.am (SOURCES): Add it. * sly/animation.scm: Use (sly render texture). * sly/font.scm: Likewise. * sly/mesh.scm: Likewise. * sly/render/context.scm: Likewise. * sly/render/framebuffer.scm: Likewise. * sly/render/renderer.scm: Likewise. * sly/shape.scm: Likewise. * sly/sprite.scm: Likewise. * sly/tileset.scm: Likewise. * examples/coroutine.scm: Likewise. * examples/joystick.scm: Likewise. * examples/particles.scm: Likewise. * examples/tilemap.scm: Likewise. * examples/transition.scm: Likewise.
* Rename (sly helpers) module to (sly utils).David Thompson2014-11-071-1/+1
| | | | | | | | | | | | | * sly/helpers.scm: Delete. * sly/utils.scm: New file. * Makefile.am (SOURCES): Remove old file. Add new one. * sly/render/camera.scm: s/helpers/utils/ * sly/scene.scm: Likewise. * sly/shader.scm: Likewise. * sly/sprite.scm: Likewise. * sly/texture.scm: Likewise. * sly/transform.scm: Likewise. * examples/tilemap.scm: Likewise.
* examples: Update 2048.David Thompson2014-09-221-109/+109
| | | | * examples/2048/2048: Update.
* examples: Update simple example.David Thompson2014-09-221-6/+24
| | | | * examples/simple.scm: Update.
* examples: Update tilemap example.David Thompson2014-09-101-52/+54
| | | | * examples/tilemap.scm: Update it.
* examples: Update scene-graph example.David Thompson2014-09-071-58/+62
| | | | * examples/scene-graph.scm: Update to use new scene-node DSL.
* examples: Add crate texture.David Thompson2014-09-061-0/+0
| | | | * examples/images/crate.png: New file.
* examples: Update scene graph example.David Thompson2014-09-061-54/+74
|
* Update scene graph example.David Thompson2014-08-251-28/+57
| | | | * examples/scene-graph: Update.
* Add scene graph example.David Thompson2014-08-251-0/+128
| | | | * examples/scene-graph.scm: New file.
* Use a single default shader for all meshes.David Thompson2014-08-251-1/+0
| | | | | | | | | | | | | | | | | * data/shaders/default-fragment.glsl: New file. * data/shaders/default-vertex.glsl: New file. * data/shaders/font-fragment.glsl: Delete. * data/shaders/font-vertex.glsl: Delete. * data/shaders/sprite-fragment.glsl: Delete. * data/shaders/sprite-vertex.glsl: Delete. * examples/common.scm: Remove call to enable-sprites. * sly/font.scm (font-shader): Delete. (enable-fonts): Remove shader loading. (make-label): Use default shader. * sly/shape.scm (make-cube): Make texture and shader optional keyword arguments. * sly/sprite.scm (sprite-shader, enable-sprites): Delete. (make-sprite): Make shader an optional keyword argument.