David Thompson [Fri, 14 Dec 2018 13:37:05 +0000 (08:37 -0500)]
Add particles example.
* examples/images/explosion.png: New file.
* examples/particles.scm: New file.
* Makefile.am (EXTRA_DIST): Add them.
David Thompson [Fri, 14 Dec 2018 13:34:14 +0000 (08:34 -0500)]
Fix game controller stuff.
Forgot to prefix imported procedures since I define procedures with
the same names.
David Thompson [Fri, 14 Dec 2018 12:59:08 +0000 (07:59 -0500)]
doc: Improve Fonts section.
David Thompson [Fri, 14 Dec 2018 12:48:00 +0000 (07:48 -0500)]
Add controller query procedures.
Not ready to document them at this time since I have not done full
tests with a USB controller yet.
* chickadee.scm (controller-button-pressed?, controller-axis): New procedures.
David Thompson [Fri, 14 Dec 2018 02:37:13 +0000 (21:37 -0500)]
Add mouse query procedures.
* chickadee.scm (mouse-x, mouse-y, mouse-button-pressed?,
mouse-button-released?): New procedures.
David Thompson [Fri, 14 Dec 2018 02:32:32 +0000 (21:32 -0500)]
Re-add key-pressed? and key-released? procedures.
* chickadee.scm (key-pressed?, key-released?): New procedures.
* examples/grid.scm: Remove (sdl2 input keyboard) import.
David Thompson [Fri, 14 Dec 2018 02:20:42 +0000 (21:20 -0500)]
Re-hide SDL2 details.
I know I'm backpedaling here, but I think it was a mistake to expose
SDL2 as much as I have here. I think it's better for people just
getting started to not have to wonder what SDL means. Making things
as usable as possible for beginners is an important goal, and
abstracting SDL2 + OpenGL things from the core game loop
implementation shouldn't require sacrificing that goal.
* chickadee.scm: Switch code with...
* chickadee/game-loop.scm: ...this! Which is copied straight from...
* chickadee/sdl.scm: ...this! Which is now deleted.
* Makefile.am (SOURCES): Add game-loop.scm, remove sdl.scm.
* examples/grid.scm: Update due to API breakage.
* examples/lines.scm: Ditto.
* examples/nine-patch.scm: Ditto.
* examples/sprite.scm: Ditto.
* examples/text.scm: Ditto.
* examples/tiled.scm: Ditto.
* doc/api.texi (Kernel): Update.
David Thompson [Fri, 14 Dec 2018 01:50:39 +0000 (20:50 -0500)]
examples: Simplify text example.
David Thompson [Fri, 14 Dec 2018 01:50:07 +0000 (20:50 -0500)]
Fix automake warning.
David Thompson [Thu, 13 Dec 2018 22:52:15 +0000 (17:52 -0500)]
render: font: Include a default font for convenience.
* data/fonts/good-neighbors.fnt: New file.
* data/fonts/good-neighbors.png: New file.
* data/CREDITS: New file.
* examples/fonts/AUTHORS: Delete.
* examples/fonts/good_neighbors_starling.png: Delete.
* examples/fonts/good_neighbors_starling.xml: Delete.
* Makefile.am (dist_pkgdata_DATA, fontsdir, dist_fonts_DATA): New
variables.
(EXTRA_DIST): Remove examples/fonts files.
* chickadee/render/font.scm (draw-text): Make font an optional keyword argument.
* doc/api.texi (Fonts): Document it.
* examples/grid.scm: Update to use new draw-text API.
* examples/nine-patch.scm: Ditto.
* examples/text.scm: Ditto.
squash! render: font: Include a default font for convenience.
David Thompson [Thu, 13 Dec 2018 22:32:07 +0000 (17:32 -0500)]
render: sprite: Use a single buffer for unbatched sprite mesh.
* chickadee/render/sprite.scm (draw-sprite-unbatched): Combine
vertices and texcoords into a single packed buffer.
David Thompson [Thu, 13 Dec 2018 22:18:16 +0000 (17:18 -0500)]
render: sprite: batch: Combine vertices and texcoords into one buffer.
Not sure how much of a gain this is, but it's one less buffer to map
each frame.
* chickadee/render/sprite.scm (init-sprite-batch): Create combined
vertex/texcoord buffer.
(double-sprite-batch-size!): Map and copy only a single buffer.
(sprite-batch-begin!): Map just one buffer.
(sprite-batch-add!): Use new packed buffer layout.
David Thompson [Thu, 13 Dec 2018 13:29:32 +0000 (08:29 -0500)]
doc: Mention 'rect' in manual.
* doc/api.texi (Rectangles): Document 'rect' procedure.
David Thompson [Thu, 13 Dec 2018 13:26:50 +0000 (08:26 -0500)]
math: rect: Add make-rect alias.
* chickadee/math/rect.scm (rect): New procedure.
David Thompson [Thu, 13 Dec 2018 13:18:06 +0000 (08:18 -0500)]
render: font: Use set-vec2! where convenient.
* chickadee/render/font.scm (draw-text*): Use new set-vec2! procedure.
David Thompson [Thu, 13 Dec 2018 13:17:29 +0000 (08:17 -0500)]
render: sprite: Use set-vec2! where convenient.
* chickadee/render/sprite (sprite-batch-add!): Use new set-vec2!
procedure.
David Thompson [Thu, 13 Dec 2018 13:14:41 +0000 (08:14 -0500)]
math: vector: Add set-vec2! and set-vec3! procedures.
* chickadee/math/vector.scm (set-vec2!, set-vec3!): New procedures.
* doc/api.texi (Vectors): Document them.
David Thompson [Wed, 12 Dec 2018 14:00:37 +0000 (09:00 -0500)]
doc: Fix typos.
David Thompson [Wed, 12 Dec 2018 00:31:30 +0000 (19:31 -0500)]
doc: Rename "GPU Buffers" section to "Buffers".
David Thompson [Wed, 12 Dec 2018 00:29:49 +0000 (19:29 -0500)]
doc: Rename "Blending and Depth Testing" section to just "Blending".
David Thompson [Tue, 11 Dec 2018 22:49:01 +0000 (17:49 -0500)]
doc: Greatly expand public API documentation.
David Thompson [Tue, 11 Dec 2018 22:47:36 +0000 (17:47 -0500)]
render: shader: Change shader variable naming convention to camel case.
David Thompson [Tue, 11 Dec 2018 22:47:21 +0000 (17:47 -0500)]
render: shader: Improve docstrings.
David Thompson [Tue, 11 Dec 2018 22:47:12 +0000 (17:47 -0500)]
render: buffer: Improve docstrings.
David Thompson [Mon, 10 Dec 2018 22:11:50 +0000 (17:11 -0500)]
Bump to version 0.4.0.
David Thompson [Mon, 10 Dec 2018 12:52:41 +0000 (07:52 -0500)]
render: framebuffer: Add default projection matrix for convenience.
* chickadee/render/framebuffer.scm (<framebuffer>)[projection]: New
field.
(make-framebuffer): Use an orthographic projection the same size as
the framebuffer as the default projection matrix.
* chickadee/render.scm (with-framebuffer): Apply default projection
matrix.
David Thompson [Sun, 9 Dec 2018 19:45:58 +0000 (14:45 -0500)]
game-loop: Sleep thread a bit to avoid 100% CPU usage.
David Thompson [Sun, 9 Dec 2018 19:44:59 +0000 (14:44 -0500)]
math: grid: Simplify a formula.
* chickadee/math/grid.scm (slide): Simplify formula for setting new
goal coordinates.
David Thompson [Wed, 5 Dec 2018 02:50:55 +0000 (21:50 -0500)]
Add particle rendering module.
* chickadee/render/particles.scm: New file.
* Makefile.am (SOURCES): Add it.
* doc/api.texi (Particles): New subsection.
David Thompson [Wed, 5 Dec 2018 02:49:38 +0000 (21:49 -0500)]
render: buffer: Add support for int and double component types.
* chickadee/render/buffer.scm (component-type-size,
typed-buffer-type-gl): Add int and double cases.
David Thompson [Wed, 5 Dec 2018 16:19:29 +0000 (11:19 -0500)]
doc: Fix typo.
* doc/api.texi (Sprites): s/diving/dividing/
David Thompson [Tue, 4 Dec 2018 01:17:11 +0000 (20:17 -0500)]
render: blend: Fix additive blending mode.
* chickadee/render/blend.scm (apply-blend-mode): Use the correct
destination blending factor (one, not zero!) for additive blending.
David Thompson [Sun, 2 Dec 2018 23:34:10 +0000 (18:34 -0500)]
math: grid: A couple more optimizations.
* chickadee/math/grid.scm (make-grid): Set a high minimum bucket size
to avoid rehashing.
(grid-move): Use memoized inexact->exact procedure. Fix return value
of check procedure being ignored.
David Thompson [Sun, 2 Dec 2018 22:15:18 +0000 (17:15 -0500)]
math: grid: Refactor to improve performance a little bit.
There's still a lot of work needed to make the collision grid scale to
any reasonable number of moving objects, but this is a first step.
* chickadee/math/grid.scm: Big ol' refactor that I can't be bothered
to list all the changes for.
David Thompson [Thu, 29 Nov 2018 21:38:01 +0000 (16:38 -0500)]
scripting: channel: Update copyright year.
David Thompson [Thu, 29 Nov 2018 21:26:48 +0000 (16:26 -0500)]
scripting: channel: Add channel-get! and channel-put! procedures.
* chickadee/scripting/channel.scm (channel-get!, channel-put!): New
procedures.
* doc/api.texi [Channels]: Add docs.
David Thompson [Thu, 29 Nov 2018 19:27:00 +0000 (14:27 -0500)]
queue: Add queue-length procedure.
* chickadee/queue.scm (queue-length): New procedure.
David Thompson [Thu, 29 Nov 2018 19:24:23 +0000 (14:24 -0500)]
scripting: channel: Remove unncessary module imports.
* chickadee/scripting/channel.scm: Remove (ice-9 format) and
(srfi srfi-11) imports.
David Thompson [Thu, 25 Oct 2018 21:12:53 +0000 (17:12 -0400)]
guix: Update development environment to use Guile 2.9.1.
David Thompson [Thu, 25 Oct 2018 12:46:53 +0000 (08:46 -0400)]
render: Add gpu-apply/instanced syntax.
* chickadee/render.scm (gpu-apply/instanced*, gpu-apply/instanced): New syntax.
David Thompson [Thu, 25 Oct 2018 12:46:25 +0000 (08:46 -0400)]
render: buffer: Add render-vertices/instanced procedure.
* chickadee/render/buffer.scm (render-vertices/instanced): New procedure.
David Thompson [Thu, 25 Oct 2018 12:44:48 +0000 (08:44 -0400)]
render: buffer: Add divisor field to typed buffers.
* chickadee/render/buffer.scm (<typed-buffer>)[divisor]: New field.
(typed-buffer-divisor): New procedure.
(make-typed-buffer, make-streaming-typed-buffer): Add #:divisor argument.
(apply-typed-buffer): Setup vertex attribute divisor if there is one.
David Thompson [Thu, 25 Oct 2018 12:42:30 +0000 (08:42 -0400)]
render: gl: Add glDrawElementsInstanced binding.
* chickadee/render/gl.scm (gl-draw-elements-instanced): New procedure.
David Thompson [Wed, 3 Oct 2018 12:13:18 +0000 (08:13 -0400)]
configure: Accept Guile 3.0.
David Thompson [Wed, 3 Oct 2018 11:45:39 +0000 (07:45 -0400)]
doc: Document the path finding API.
David Thompson [Tue, 2 Oct 2018 21:12:44 +0000 (17:12 -0400)]
Move pathfinding module to math directory.
David Thompson [Tue, 2 Oct 2018 12:46:11 +0000 (08:46 -0400)]
doc: Document collision grid API.
David Thompson [Tue, 2 Oct 2018 12:46:01 +0000 (08:46 -0400)]
math: grid: Fix docstring in grid-move.
David Thompson [Tue, 2 Oct 2018 12:10:53 +0000 (08:10 -0400)]
doc: Document bezier curve API.
David Thompson [Fri, 28 Sep 2018 12:19:11 +0000 (08:19 -0400)]
doc: Document the rectangle API.
David Thompson [Thu, 27 Sep 2018 12:41:05 +0000 (08:41 -0400)]
doc: Document vector and matrix math APIs.
David Thompson [Thu, 27 Sep 2018 12:40:24 +0000 (08:40 -0400)]
math: matrix: Fix a few docstrings.
* chickadee/math/matrix.scm: Fix mistakes in docstrings.
David Thompson [Tue, 11 Sep 2018 01:40:56 +0000 (21:40 -0400)]
render: texture: Fix bug in framebuffer texture coordinates.
* chickadee/render/texture.scm (make-texture): Don't flip texture
horizontally, only vertically.
David Thompson [Tue, 11 Sep 2018 01:27:51 +0000 (21:27 -0400)]
render: framebuffer: Flip UV coordinates.
* chickadee/render/framebuffer.scm (make-framebuffer): Flip the
texture now that the texture origin is top-left.
David Thompson [Tue, 11 Sep 2018 01:27:25 +0000 (21:27 -0400)]
render: texture: Add flip? argument to make-texture.
* chickadee/render/texture.scm (make-texture): Add #:flip? keyword argument.
David Thompson [Mon, 10 Sep 2018 21:42:10 +0000 (17:42 -0400)]
render: Change texture origin to top-left.
This is a pretty big change, but hopefully for the best as this aligns
with graphics programs and the glTF standard that uses a top-left
origin. We can keep using a lower-left origin for vertices, though.
* chickadee/render/texture.scm (surface->texture): Stop flipping pixel
rows.
* chickadee/render/sprites.scm (draw-sprite-unbatched,
sprite-batch-add!, draw-nine-patch*): Adjust texture y-coordinates.
* chickadee/render/font.scm (parse-fnt): Stop inverting y coordinates.
* chickadee/render/tiled.scm (load-tile-map): Stop inverting tile ids.
David Thompson [Mon, 10 Sep 2018 21:12:09 +0000 (17:12 -0400)]
math: vector: Fix vec2-normalize and vec3-normalize.
* chickadee/math/vector.scm: Move vec2-normalize and vec3-normalize
below the definitions of vec2-normalize! and vec3-normalize! so that
inlining doesn't screw things up.
David Thompson [Mon, 10 Sep 2018 21:09:50 +0000 (17:09 -0400)]
math: vector: Add vec2*, vec2+, and vec2- procedures.
* chickadee/math/vector.scm (vec2*, vec2+, vec2-): New procedures.
David Thompson [Fri, 7 Sep 2018 21:34:28 +0000 (17:34 -0400)]
render: asset: Don't use mipmaps for now.
Chickadee doesn't support them yet.
David Thompson [Fri, 7 Sep 2018 21:34:07 +0000 (17:34 -0400)]
render: asset: Use default sampler index of 0 when loading textures.
David Thompson [Fri, 7 Sep 2018 21:33:52 +0000 (17:33 -0400)]
render: asset: Removing debug print calls.
David Thompson [Fri, 7 Sep 2018 21:33:21 +0000 (17:33 -0400)]
render: scene: Make material factors default to 1.0.
David Thompson [Fri, 7 Sep 2018 13:06:35 +0000 (09:06 -0400)]
render: asset: Add material texture parsing and loading.
* chickadee/render/asset.scm (read-gltf): Parse and load all textures
referenced by materials.
David Thompson [Fri, 7 Sep 2018 13:03:43 +0000 (09:03 -0400)]
render: scene: Apply base color texture and factor.
* chickadee/render/scene.scm (draw-primitive): Set base color texture
and send base color factor as uniform to shader.
* data/shaders/pbr/pbr-vert.glsl (texcoord_0): New input attribute.
(frag_tex): New output attribute.
* data/shaders/pbr/pbr-frag.glsl (frag_tex): New input attribute.
(base_color_factor, base_color_texture): New uniforms.
David Thompson [Fri, 7 Sep 2018 12:52:25 +0000 (08:52 -0400)]
render: scene: Merge metallic roughness into material record type.
* chickadee/render/scene.scm (<metallic-roughness>): Delete. Merge all
fields into <material>.
David Thompson [Fri, 7 Sep 2018 12:52:03 +0000 (08:52 -0400)]
render: shader: Add support for vec3 uniform values.
David Thompson [Fri, 7 Sep 2018 12:51:22 +0000 (08:51 -0400)]
render: gl: Re-export gl-uniform3fv.
* chickadee/render/gl.scm: Export gl-uniform3fv.
David Thompson [Thu, 6 Sep 2018 16:19:22 +0000 (12:19 -0400)]
render: scene: Stop allocating matrices when rendering.
* chickadee/render/scene.scm (<primitive>): Add matrix field.
(make-primitive): Call %make-primitive with additional matrix arg.
(<scene-node>): Add world-matrix field.
(make-scene-node): Call %make-scene-node with additional matrix arg.
(modelview): Delete.
(draw-primitive): Perform matrix multiplication without allocating.
(draw-scene-node): Likewise.
(draw-scene): Pass pre-built matrix rather than allocating.
David Thompson [Thu, 6 Sep 2018 13:39:37 +0000 (09:39 -0400)]
data: shaders: Update WIP PBR shaders.
They don't *anything* related to PBR, but they allow me to test glTF
asset loading as I work towards full PBR support.
David Thompson [Thu, 6 Sep 2018 13:34:46 +0000 (09:34 -0400)]
render: buffer: Fix pointer argument to glVertexAttribPointer.
This one was a doozy. Took me days to figure out why something wasn't
rendering properly and this was the culprit! The last argument, the
"pointer" argument, to glVertexAttribPointer is supposed to point to
the byte offset to start reading data from the VBO. I thought this
meant that I could pass a pointer to an integer that contained the
offset. WRONG! The pointer value itself must encode that offset.
You can see in the diff that I knew this code didn't work when the
offset was 0, but somehow a null pointer worked and I just made that
case work while leaving every other offset broken. The more I know!
* chickadee/render/buffer.scm (apply-typed-buffer): Pass a pointer
whose address is the byte offset of the buffer, rather than a
pointer whose dereferenced value is an integer representing the byte
offset.
David Thompson [Thu, 6 Sep 2018 13:33:19 +0000 (09:33 -0400)]
render: buffer: Use correct data type for index buffer when rendering.
* chickadee/render/buffer.scm (render-vertices): Use the index buffer
type rather than assuming it is always unsigned-int.
David Thompson [Thu, 6 Sep 2018 13:28:59 +0000 (09:28 -0400)]
render: buffer: Stop using glBufferSubData when creating VBOs.
* chickadee/render/buffer.scm (make-buffer): Remove unnecessary call
to glBufferSubData and just use glBufferData to do it all.
David Thompson [Thu, 6 Sep 2018 13:27:46 +0000 (09:27 -0400)]
render: buffer: Fixed default typed buffer length calculation.
* chickadee/render/buffer.scm (num-elements): New procedure.
(make-typed-buffer): Default 'length' to the correct value in
elements, not bytes, when a custom length is not specified.
David Thompson [Thu, 6 Sep 2018 13:25:34 +0000 (09:25 -0400)]
render: buffer: Orphan before mapping only when used for streaming.
* chickdaee/render/buffer.scm (map-buffer!): Orphan buffer data only
when the buffer usage is 'stream'.
David Thompson [Thu, 6 Sep 2018 13:24:23 +0000 (09:24 -0400)]
render: scene: Add better printers for primitives, meshes, and scenes.
* chickadee/render/scene.scm (display-primitive, display-mesh,
display-scene-node): New procedures.
David Thompson [Thu, 6 Sep 2018 13:22:35 +0000 (09:22 -0400)]
render: gl: Export gl-point-size.
* chickadee/render/gl.scm (gl-point-size): New procedure alias.
David Thompson [Mon, 3 Sep 2018 02:12:27 +0000 (22:12 -0400)]
math: Add grid module.
* chickadee/math/grid.scm: New file.
* examples/grid.scm: New file.
* Makefile.am (SOURCES): Add grid module.
(EXTRA_DIST): Add grid example.
David Thompson [Mon, 3 Sep 2018 02:08:34 +0000 (22:08 -0400)]
Remove default error handler.
* chickadee.scm (default-error-handler): Delete.
(call-with-error-handling): Don't catch errors if no handler is
specified.
(run-game): Default 'error' arg to #f.
* chickadee/sdl.scm: (run-game/sdl): Likewise.
David Thompson [Wed, 29 Aug 2018 21:53:35 +0000 (17:53 -0400)]
render: shapes: Add simple (but slow) bezier curve rendering.
* chickadee/render/shapes.scm (draw-bezier-curve, draw-bezier-path):
New procedures.
David Thompson [Wed, 29 Aug 2018 21:52:59 +0000 (17:52 -0400)]
Add bezier curve module.
* chickadee/math/bezier.scm: New file.
* Makefile.am (SOURCES): Add it.
David Thompson [Wed, 29 Aug 2018 21:38:59 +0000 (17:38 -0400)]
render: shapes: Allow matrix to be passed to draw-line.
* chickadee/render/shapes.scm (draw-line): Add matrix argument.
David Thompson [Wed, 29 Aug 2018 11:58:35 +0000 (07:58 -0400)]
scripting: Add repeat macro.
* chickadee/scripting.scm (repeat): New syntax.
David Thompson [Sun, 26 Aug 2018 02:07:07 +0000 (22:07 -0400)]
Fix error handling logic.
* chickadee.scm (call-with-error-handling): Call the correct error
handler. Return #t if an error occurred, #f otherwise.
(run-game): Reset current-time and buffer after recovering from an
error.
David Thompson [Sun, 26 Aug 2018 01:31:14 +0000 (21:31 -0400)]
Remove custom backtrace display.
Always printing a backtrace caused double backtraces to be printed
when using the default error handler that just re-throws the error.
David Thompson [Thu, 23 Aug 2018 11:48:24 +0000 (07:48 -0400)]
git: Ignore html manual build artifacts.
David Thompson [Tue, 21 Aug 2018 14:46:44 +0000 (10:46 -0400)]
Update manual to reflect major API changes.
David Thompson [Tue, 21 Aug 2018 14:45:35 +0000 (10:45 -0400)]
Add default game loop error handler.
* chickadee.scm (default-error-handler): New procedure.
(run-game): Set default value for 'error' arg to
'default-error-handler'.
* chickadee/sdl.scm (run-game/sdl): Ditto.
David Thompson [Tue, 21 Aug 2018 14:44:45 +0000 (10:44 -0400)]
guix: Update guile-sdl2 to latest commit in
David Thompson [Tue, 21 Aug 2018 00:33:30 +0000 (20:33 -0400)]
Update README.
David Thompson [Tue, 21 Aug 2018 01:50:41 +0000 (21:50 -0400)]
Move SDL game loop implementation to its own module.
David Thompson [Tue, 21 Aug 2018 00:22:44 +0000 (20:22 -0400)]
math: vector: Add read syntax.
* chickadee/math/vector.scm (read-vec): New procedure. Extend reader.
* examples/lines.scm: Use new vector read syntax.
* examples/nine-patch.scm: Ditto.
* examples/sprite.scm: Ditto.
* examples/text.scm: Ditto.
* examples/tiled.scm: Ditto.
David Thompson [Mon, 20 Aug 2018 02:49:54 +0000 (22:49 -0400)]
window: Fix procedure export.
* chickadee/window.scm: Export close-window! for real this time.
David Thompson [Mon, 20 Aug 2018 02:49:12 +0000 (22:49 -0400)]
Make the game loop modular!
This is really cool! Now users can plug in whatever backend they'd
like and are not forced to use SDL and OpenGL. Thanks to Chris Webber
for showing me the Lux library for Racket that does exactly this.
* chickadee.scm (run-game): Remove all SDL/OpenGL code, replace with
generic render/update keyword arguments.
(run-game/sdl): New procedure.
* examples/lines.scm: Update for API breakage.
* examples/nine-patch.scm: Ditto.
* examples/sprite.scm: Ditto.
* examples/text.scm: Ditto.
* examples/tiled.scm: Ditto.
David Thompson [Wed, 11 Jul 2018 18:56:12 +0000 (14:56 -0400)]
Bump to version 0.3.0.
David Thompson [Wed, 11 Jul 2018 18:36:57 +0000 (14:36 -0400)]
README: Update guile-sdl2 requirement.
David Thompson [Tue, 10 Jul 2018 16:20:10 +0000 (12:20 -0400)]
render: Replace keyword->string from SRFI-88.
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.
David Thompson [Tue, 10 Jul 2018 16:19:43 +0000 (12:19 -0400)]
guix: Update guile-sdl2 commit.
David Thompson [Mon, 9 Jul 2018 01:42:02 +0000 (21:42 -0400)]
guix: Upgrade to Guile 2.2.4.
David Thompson [Tue, 26 Jun 2018 19:42:08 +0000 (15:42 -0400)]
Fix Makefile.am.
Accidentally removed the wrong buffer.scm!
David Thompson [Mon, 25 Jun 2018 08:30:14 +0000 (04:30 -0400)]
Remove problematic OpenGL requirements.
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.