| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
SRFI-88 introduces a problematic global reader macro that I didn't
know about until Ricardo Wurmus reported some strange behavior that
was traced back to this SRFI. Thanks to Ludovic Courtes for pointing
it out.
* chickadee/render.scm: Remove (srfi srfi-88) import.
(keyword->string): New procedure.
|
| |
|
| |
|
|
|
|
| |
Accidentally removed the wrong buffer.scm!
|
|
|
|
|
|
|
|
|
|
|
| |
Trying to force certain GL versions and other attributes has only
caused problems for potential users thus far. Let's see how far we
get by just removing this stuff.
* chickadee/window.scm (open-window): Remove OpenGL settings.
* chickadee/render/shapes.scm (draw-filled-rect, draw-line): Drop
shader version from 330 to 130.
* chickadee/render/sprite.scm (default-shader): Same.
|
| |
|
|
|
|
| |
* doc/api.texi (Framebuffers): Add basic API documentation.
|
|
|
|
|
| |
* chickadee.scm (call-with-error-handling): Do not catch errors when
the error hook has nothing in it.
|
|
|
|
|
| |
* chickadee/render/tiled.scm (load-tile-map): Handle both internal and
external tilesets.
|
| |
|
|
|
|
|
| |
* chickadee.scm (call-with-error-handling): Run hook with error key
and args.
|
|
|
|
|
|
|
| |
* chickadee.scm (error-hook): New variable.
(display-game-loop-error, call-with-error-handling): New procedures.
(run-hook*): New syntax.
(run-game): Wrap all hooks with error handling.
|
|
|
|
|
|
| |
* chickadee/render/font.scm (draw-text*, draw-text): Add start and end
arguments.
* doc/api.texi (Fonts): Document new arguments.
|
|
|
|
| |
* chickadee/render/tiled.scm: Export draw-tile-map*.
|
|
|
|
|
| |
* chickadee/render/tiled.scm (load-tile-map): Invert Y coordinate for
objects.
|
|
|
|
| |
* chickadee/render/tiled.scm (tile-map-layer-ref): New procedure.
|
|
|
|
|
| |
* chickadee/render/font.scm (font-line-width): Fix addition of number
with vector, use X coordinate instead.
|
|
|
|
|
|
|
| |
Reported-By: Christopher Howard <christopher.howard@qlfiles.net>
* chickadee.scm (run-game): Invert the Y coordinate received from
SDL's mouse motion event.
|
|
|
|
| |
* chickadee/render/font.scm (font-line-width): New procedure.
|
|
|
|
|
| |
* chickadee/render/font.scm (draw-text*): Default to "?" character
when the desired character isn't present in the font.
|
| |
|
|
|
|
|
|
|
|
| |
* examples/images/tiles.png: New file.
* examples/map/example.tmx: New file.
* examples/tiled.scm: New file.
* Makefile.am (EXTRA_DIST): Add them.
* examples/images/AUTHORS: Credit the author of the tileset.
|
|
|
|
|
|
| |
* chickadee/render/tiled.scm: New file.
* Makefile.am (SOURCES): Add it.
* doc/api.texi (Tile Maps): New subsection.
|
|
|
|
| |
* chickadee/render/texture.scm (display-texture): New procedure.
|
|
|
|
| |
2.2.3 has a bad performance regression. :(
|
|
|
|
|
|
|
|
|
| |
A lot better than crashing, I'd say. :)
Reported-By: Christopher Howard <christopher.howard@qlfiles.net>
* chickadee/window.scm (open-window): Catch errors thrown by
set-gl-swap-interval! and emit warning.
|
|
|
|
| |
* chickadee/math/matrix.scm (matrix4-2d-transform!): Fix bad typos!
|
|
|
|
|
|
|
|
|
|
| |
Easier to calculate it once and hang onto it than to generate it each
time draw-sprite is called.
* chickadee/render/texture.scm (<texture>)[rect]: Delete field.
[x y width height gl-tex-rect]: New fields.
* chickadee/render/sprite.scm (draw-sprite*, draw-sprite,
draw-nine-patch*): Use proper accessors for texture rects.
|
|
|
|
|
| |
* chickadee/render/font.scm (%null-vec): Rename to...
(%null-vec2): ...this.
|
|
|
|
|
|
|
|
|
|
| |
The texture-rect procedure contains the pixel location of the texture
region, so if you use that rect to render a sprite the result is a
sprite offset by its location in the greater texture, which is very
very very wrong.
* chickadee/render/sprite.scm (draw-sprite): Dynamically configure
rendering rect based on the texture region's width and height.
|
|
|
|
|
| |
* chickadee/render/texture.scm (split-texture): Width and height
variables need to contain exact numbers.
|
|
|
|
| |
This reverts commit 8cbb7eed56c4b5edd780c2d51aaa0a4c3eab7350.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* chickadee/render/texture.scm (<texture-region>): Delete type.
(<texture>)[width, height, gl-size]: Delete fields.
[parent, rect, gl-rect]: Add fields.
(texture-region?): Rewrite.
(make-texture, null-texture): Use new texture constructor.
(make-texture-region): Rewrite in terms of <texture> type.
(list->texture-atlas, split-texture): Use new texture region
constructor.
* chickadee/render/sprite.scm (draw-sprite*): New procedure.
(draw-sprite): Rewrite in terms of draw-sprite*.
(draw-nine-patch*): New procedure.
(draw-nine-patch): Rewrite in terms of draw-nine-patch*.
* chickadee/render/font.scm (draw-text*): New procedure.
(draw-text): Rewrite in terms of draw-text*.
* doc/api.texi: Update draw-sprite, draw-nine-patch, and draw-text
docs.
|
|
|
|
| |
* chickadee/math/matrix.scm (matrix4-2d-transform): New procedure.
|
|
|
|
|
|
| |
* chickadee.scm (error-handler): New procedure.
(with-error-handling): New syntax.
(run-game): Handle errors caught when running hooks.
|
|
|
|
| |
* chickadee.scm (run-game): window-height is not a procedure!
|
|
|
|
|
|
|
| |
Hide the weird SDL usage of 0 to 128.
* chickadee/audio.scm (set-sample-volume!, music-volume,
set-music-volume!): Translate to/from SDL's volume range.
|
|
|
|
| |
* chickadee/render/shapes.scm (draw-filled-rect): New procedure.
|
|
|
|
| |
* chickadee/render/color.scm (color-lerp): New procedure.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* chickadee/render/sprite.scm (draw-sprite-unbatched,
draw-sprite-batched): Replace 'scale' and 'rotation' arguments with a
'matrix' argument.
(sprite-batch-add!): Ditto. Also, correctly transform sprite
vertices. This was previously not handling rotations properly.
(%default-offset): New variable.
(draw-sprite, draw-nine-patch): Change default values for 'rotation'
and 'scale'. Add 'matrix' and 'offset' arguments.
* chickadee/render/font.scm (%default-offset): New variable.
(draw-text): Change default values for 'rotation' and 'scale'. Add
'offset' and 'matrix' arguments.
|
|
|
|
| |
* chickadee.scm (run-game): Invert all Y coordinates received from SDL.
|
|
|
|
| |
* chickadee/math/matrix.scm (matrix4-translate!): Add rect support.
|
| |
|
|
|
|
|
|
|
|
| |
I found that the 'framebuffer-srgb-capable' setting does not work with
Mesa 17.2.1. Best to just get rid of it.
* chickadee/window.scm (open-window): Remove setting for
'framebuffer-srgb-capable'.
|
|
|
|
|
| |
* chickadee/math/matrix.scm (matrix4-translate!): Add support for
the vec3 type.
|
| |
|
|
|
|
| |
* chickadee/math/quaternion.scm (display-quaternion): New procedure.
|
|
|
|
|
| |
* chickadee/math/quaternion.scm (with-new-quaternion): Build
quaternion manually instead of using make-null-quaternion.
|