diff options
-rw-r--r-- | 2d/sprite.scm | 3 | ||||
-rw-r--r-- | TODO | 27 |
2 files changed, 19 insertions, 11 deletions
diff --git a/2d/sprite.scm b/2d/sprite.scm index 6fd366c..b8c1472 100644 --- a/2d/sprite.scm +++ b/2d/sprite.scm @@ -343,9 +343,6 @@ size." "Adds a textured quad to the sprite batch." (apply %sprite-batch-draw *sprite-batch* args)) -;; TODO add transformation logic for scaling and rotating. -;; TODO add support for colors -;; TODO add support for different blending modes. (define* (%sprite-batch-draw batch texture x y width height #:optional #:key (center-x 0) (center-y 0) (scale-x 1) (scale-y 1) (rotation 0) @@ -12,27 +12,35 @@ Wrap SDL keycode, mouse button, etc. constants in our own enumeration. -** DONE Sprites +** TODO Sprites Encapsulates an image and all of its transformations: position, rotation, scale, color, etc. + - [ ] Add support for texture regions + - [ ] Add support for animations + - [ ] Use a sprite batch when drawing if one is currently bound + ** TODO Sprite batches Efficiently render a large number of sprites. Only change OpenGL context when necessary. For example, don't change texture when rendering several sprites in a row that use the same one. -** TODO Tilesets - Break an image up into many small pieces. Useful for creating maps. + - [ ] Add transformation logic for scaling and rotating. + - [ ] Add support for colors + - [ ] Add support for different blending modes. - (make-tileset image tile-width tile-height padding margin) +** DONE Tilesets + Break an image up into many small pieces. Useful for creating maps. -** TODO Tileset animations - Given a tileset, an animated sequence of frames can be created. +** TODO Animations + Create a data type to represent an animated sequence of textures + and/or texture regions. - (make-animation tileset frame-duration frames) + (make-animation frame-duration frames) ** TODO Tile maps - Create a loader for Tiled .tmx map files. + - [ ] Create a generic tilemap module + - [ ] Create a loader for Tiled .tmx map files. ** TODO Scene graph A tree structure that is traversed when rendering a game scene. @@ -48,6 +56,9 @@ easy-to-use module that provides procedures for common vector/matrix math operations + - [X] Vectors + - [ ] Matrices + ** TODO Fonts Use Freetype to provide font rendering procedures. |