Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | render: sprite: Use set-vec2! where convenient. | David Thompson | 2018-12-13 | 1 | -8/+4 |
| | | | | | * chickadee/render/sprite (sprite-batch-add!): Use new set-vec2! procedure. | ||||
* | math: vector: Add set-vec2! and set-vec3! procedures. | David Thompson | 2018-12-13 | 2 | -5/+21 |
| | | | | | * chickadee/math/vector.scm (set-vec2!, set-vec3!): New procedures. * doc/api.texi (Vectors): Document them. | ||||
* | doc: Fix typos. | David Thompson | 2018-12-12 | 1 | -6/+6 |
| | |||||
* | doc: Rename "GPU Buffers" section to "Buffers". | David Thompson | 2018-12-11 | 1 | -7/+7 |
| | |||||
* | doc: Rename "Blending and Depth Testing" section to just "Blending". | David Thompson | 2018-12-11 | 1 | -10/+8 |
| | |||||
* | doc: Greatly expand public API documentation. | David Thompson | 2018-12-11 | 1 | -101/+693 |
| | |||||
* | render: shader: Change shader variable naming convention to camel case. | David Thompson | 2018-12-11 | 1 | -5/+5 |
| | |||||
* | render: shader: Improve docstrings. | David Thompson | 2018-12-11 | 1 | -0/+9 |
| | |||||
* | render: buffer: Improve docstrings. | David Thompson | 2018-12-11 | 1 | -7/+64 |
| | |||||
* | Bump to version 0.4.0. | David Thompson | 2018-12-10 | 1 | -1/+1 |
| | |||||
* | render: framebuffer: Add default projection matrix for convenience. | David Thompson | 2018-12-10 | 2 | -12/+20 |
| | | | | | | | | | * 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. | ||||
* | game-loop: Sleep thread a bit to avoid 100% CPU usage. | David Thompson | 2018-12-09 | 1 | -1/+3 |
| | |||||
* | math: grid: Simplify a formula. | David Thompson | 2018-12-09 | 1 | -2/+2 |
| | | | | | * chickadee/math/grid.scm (slide): Simplify formula for setting new goal coordinates. | ||||
* | Add particle rendering module. | David Thompson | 2018-12-07 | 3 | -0/+626 |
| | | | | | | * chickadee/render/particles.scm: New file. * Makefile.am (SOURCES): Add it. * doc/api.texi (Particles): New subsection. | ||||
* | render: buffer: Add support for int and double component types. | David Thompson | 2018-12-05 | 1 | -2/+6 |
| | | | | | * chickadee/render/buffer.scm (component-type-size, typed-buffer-type-gl): Add int and double cases. | ||||
* | doc: Fix typo. | David Thompson | 2018-12-05 | 1 | -1/+1 |
| | | | | * doc/api.texi (Sprites): s/diving/dividing/ | ||||
* | render: blend: Fix additive blending mode. | David Thompson | 2018-12-03 | 1 | -1/+1 |
| | | | | | * chickadee/render/blend.scm (apply-blend-mode): Use the correct destination blending factor (one, not zero!) for additive blending. | ||||
* | math: grid: A couple more optimizations. | David Thompson | 2018-12-02 | 1 | -4/+3 |
| | | | | | | | * 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. | ||||
* | math: grid: Refactor to improve performance a little bit. | David Thompson | 2018-12-02 | 1 | -173/+163 |
| | | | | | | | | 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. | ||||
* | scripting: channel: Update copyright year. | David Thompson | 2018-11-29 | 1 | -1/+1 |
| | |||||
* | scripting: channel: Add channel-get! and channel-put! procedures. | David Thompson | 2018-11-29 | 2 | -8/+31 |
| | | | | | | * chickadee/scripting/channel.scm (channel-get!, channel-put!): New procedures. * doc/api.texi [Channels]: Add docs. | ||||
* | queue: Add queue-length procedure. | David Thompson | 2018-11-29 | 1 | -6/+9 |
| | | | | * chickadee/queue.scm (queue-length): New procedure. | ||||
* | scripting: channel: Remove unncessary module imports. | David Thompson | 2018-11-29 | 1 | -2/+0 |
| | | | | | * chickadee/scripting/channel.scm: Remove (ice-9 format) and (srfi srfi-11) imports. | ||||
* | guix: Update development environment to use Guile 2.9.1. | David Thompson | 2018-10-25 | 1 | -6/+39 |
| | |||||
* | render: Add gpu-apply/instanced syntax. | David Thompson | 2018-10-25 | 1 | -3/+19 |
| | | | | * chickadee/render.scm (gpu-apply/instanced*, gpu-apply/instanced): New syntax. | ||||
* | render: buffer: Add render-vertices/instanced procedure. | David Thompson | 2018-10-25 | 1 | -1/+12 |
| | | | | * chickadee/render/buffer.scm (render-vertices/instanced): New procedure. | ||||
* | render: buffer: Add divisor field to typed buffers. | David Thompson | 2018-10-25 | 1 | -8/+18 |
| | | | | | | | * 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. | ||||
* | render: gl: Add glDrawElementsInstanced binding. | David Thompson | 2018-10-25 | 1 | -3/+12 |
| | | | | * chickadee/render/gl.scm (gl-draw-elements-instanced): New procedure. | ||||
* | configure: Accept Guile 3.0.v0.3.0 | David Thompson | 2018-10-03 | 1 | -1/+1 |
| | |||||
* | doc: Document the path finding API. | David Thompson | 2018-10-03 | 1 | -1/+75 |
| | |||||
* | Move pathfinding module to math directory. | David Thompson | 2018-10-03 | 2 | -7/+7 |
| | |||||
* | doc: Document collision grid API. | David Thompson | 2018-10-02 | 1 | -0/+107 |
| | |||||
* | math: grid: Fix docstring in grid-move. | David Thompson | 2018-10-02 | 1 | -1/+1 |
| | |||||
* | doc: Document bezier curve API. | David Thompson | 2018-10-02 | 1 | -0/+97 |
| | |||||
* | doc: Document the rectangle API. | David Thompson | 2018-09-28 | 1 | -5/+195 |
| | |||||
* | doc: Document vector and matrix math APIs. | David Thompson | 2018-09-27 | 1 | -0/+338 |
| | |||||
* | math: matrix: Fix a few docstrings. | David Thompson | 2018-09-27 | 1 | -3/+3 |
| | | | | * chickadee/math/matrix.scm: Fix mistakes in docstrings. | ||||
* | render: texture: Fix bug in framebuffer texture coordinates. | David Thompson | 2018-09-10 | 1 | -1/+1 |
| | | | | | * chickadee/render/texture.scm (make-texture): Don't flip texture horizontally, only vertically. | ||||
* | render: framebuffer: Flip UV coordinates. | David Thompson | 2018-09-10 | 1 | -0/+1 |
| | | | | | * chickadee/render/framebuffer.scm (make-framebuffer): Flip the texture now that the texture origin is top-left. | ||||
* | render: texture: Add flip? argument to make-texture. | David Thompson | 2018-09-10 | 1 | -5/+11 |
| | | | | * chickadee/render/texture.scm (make-texture): Add #:flip? keyword argument. | ||||
* | render: Change texture origin to top-left. | David Thompson | 2018-09-10 | 4 | -49/+37 |
| | | | | | | | | | | | | | 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. | ||||
* | math: vector: Fix vec2-normalize and vec3-normalize. | David Thompson | 2018-09-10 | 1 | -12/+12 |
| | | | | | | * 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. | ||||
* | math: vector: Add vec2*, vec2+, and vec2- procedures. | David Thompson | 2018-09-10 | 1 | -0/+21 |
| | | | | * chickadee/math/vector.scm (vec2*, vec2+, vec2-): New procedures. | ||||
* | render: asset: Don't use mipmaps for now. | David Thompson | 2018-09-07 | 1 | -4/+6 |
| | | | | Chickadee doesn't support them yet. | ||||
* | render: asset: Use default sampler index of 0 when loading textures. | David Thompson | 2018-09-07 | 1 | -1/+2 |
| | |||||
* | render: asset: Removing debug print calls. | David Thompson | 2018-09-07 | 1 | -2/+2 |
| | |||||
* | render: scene: Make material factors default to 1.0. | David Thompson | 2018-09-07 | 2 | -7/+7 |
| | |||||
* | render: asset: Add material texture parsing and loading. | David Thompson | 2018-09-07 | 1 | -54/+103 |
| | | | | | * chickadee/render/asset.scm (read-gltf): Parse and load all textures referenced by materials. | ||||
* | render: scene: Apply base color texture and factor. | David Thompson | 2018-09-07 | 3 | -6/+16 |
| | | | | | | | | | * 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. | ||||
* | render: scene: Merge metallic roughness into material record type. | David Thompson | 2018-09-07 | 1 | -44/+40 |
| | | | | | * chickadee/render/scene.scm (<metallic-roughness>): Delete. Merge all fields into <material>. |