summaryrefslogtreecommitdiff
path: root/chickadee
Commit message (Collapse)AuthorAgeFilesLines
* graphics: Rewrite 9-patch implementation and move it to its own module.David Thompson2021-04-072-130/+235
|
* graphics: shader: Allow rects to be bound to vec4 uniforms.David Thompson2021-04-071-10/+15
|
* graphics: path: Export painter? and painter-bounding-box.David Thompson2021-04-061-0/+2
|
* graphics: blend: Add proper <blend-mode> data type.David Thompson2021-03-145-47/+120
| | | | No more symbols. Hooray!
* graphics: Rewrite with-graphics-state to use state specs.David Thompson2021-03-1418-67/+123
| | | | | | | | | | | | | | | | Treating the names inside the let-like form as just symbols caused numerous bugs where a program would crash because it was trying to set graphics state that was never defined due to the relevant module never being imported. By changing with-graphics-state to require passing in the <graphics-state-spec> object, much like how parameterize works with parameter objects, it completely eliminates this type of bug. If the module containing the spec variable isn't imported, there will be an undefined variable error thrown early on. Additionally, graphics state objects needed to have a stack added to them to track previous values so that with-graphics-state could restore them later. The old trick of using let to stash the previous values no longer worked with the new macro implementation.
* graphics: engine: Improve error message when graphics state is undefined.David Thompson2021-03-131-1/+8
|
* graphics: path: Include blend module.David Thompson2021-03-131-0/+1
| | | | | Without it, setting the blend mode fails unless the module has been included by something else.
* utils: Handle negative increment in for-range.David Thompson2021-03-051-2/+3
|
* graphics: framebuffer: Refactor make-framebuffer.David Thompson2021-03-051-52/+51
| | | | Removes unnecessary let-over-lambda.
* graphics: Improve error message when prematurely creating GPU objects.David Thompson2021-03-055-0/+10
|
* Use new for-range macro wherever possible.David Thompson2021-03-058-194/+145
|
* utils: Add for-range macro.David Thompson2021-03-051-1/+23
|
* graphics: engine: Fix yet another finalizer issue.David Thompson2021-01-261-1/+1
|
* graphics: engine: Attempt to fix finalizers again.David Thompson2021-01-261-7/+7
|
* graphics: engine: Fix graphics-engine-reap!David Thompson2021-01-261-3/+4
|
* graphics: engine: Remove unused fields.David Thompson2021-01-261-7/+2
|
* graphics: Rewrite rendering engine.David Thompson2021-01-2623-1155/+1091
|
* graphics: texture: Fix typo in docstring.David Thompson2021-01-201-1/+1
|
* graphics: texture: Get rid of some magic numbers.David Thompson2021-01-201-5/+5
|
* graphics: gpu: Move guardian to <gpu> structure.David Thompson2021-01-201-21/+19
|
* graphics: texture: Default to nearest neighbor scaling in make-texture.David Thompson2020-12-161-2/+2
|
* graphics: font: Fix artifacts when scaling fonts.David Thompson2020-12-161-2/+4
|
* math: matrix: Add procedures to extract translation from 4x4 matrix.David Thompson2020-12-161-1/+13
|
* math: matrix: Rename transform! to matrix4-transform!David Thompson2020-12-162-16/+16
|
* game-loop: Sleep after rendering a frame, not after update.David Thompson2020-12-151-7/+7
|
* Switch to high resolution timer.David Thompson2020-12-151-1/+1
|
* graphics: buffer: Remove unused buffer view procedures.David Thompson2020-12-091-103/+0
|
* graphics: particles: Use dynamic geometry type.David Thompson2020-12-091-83/+49
|
* graphics: sprite: Use dynamic geometry type.David Thompson2020-12-091-196/+84
|
* graphics: path: Use dynamic geometry type.David Thompson2020-12-091-245/+122
|
* graphics: buffer: Add dynamic geometry type.David Thompson2020-12-091-27/+430
|
* graphics: Add polygon and cull face modes to render context.David Thompson2020-11-195-9/+148
|
* graphics: path: Allow model-view matrix to be applied to rendered path.David Thompson2020-11-191-8/+17
| | | | | | | | | Every other type of rendering operation supports this, so paths should be no different. This type of transformation, unlike a transformation applied at the canvas or painter level, can cause a non-smooth output the matrix scales the result since it's transforming the geometry as-is rather than building new geometry with all path points transformed.
* graphics: path: Fix bug where blend mode wasn't set during fills.David Thompson2020-11-191-0/+1
|
* math: grid: Add grid-cell-fold and grid-item-fold procedures.David Thompson2020-11-191-1/+15
|
* graphics: particles: Make shader compatible with GLSL 1.2.David Thompson2020-11-191-1/+1
| | | | Hopefully, that is.
* graphics: tiled: Remove region argument from draw-tile-map.David Thompson2020-11-181-11/+8
|
* graphics: buffer: Fix silly error in render-vertices/instanced.David Thompson2020-11-181-1/+1
| | | | | Used 'when' when I meant to use 'if' and therefore both branches of what should have been a conditional were executed. :(
* math: quaternion: Remove calls to deleted square procedure.David Thompson2020-11-181-5/+5
| | | | Oops.
* render: Add vector path rendering module.David Thompson2020-11-181-0/+1554
|
* graphics: Delete shapes module.David Thompson2020-11-161-435/+0
|
* graphics: tiled: Ensure that point->tile always returns integers.David Thompson2020-11-161-13/+18
|
* graphics: tiled: Remove version constraint.David Thompson2020-11-161-5/+2
|
* graphics: font: Add color argument to draw-text.David Thompson2020-11-161-4/+10
|
* math: vector: Add vec2-cross procedure.David Thompson2020-11-131-0/+5
|
* math: rect: Fix rect-union and rect-clip.David Thompson2020-11-131-4/+4
|
* math: rect: Fix rect-inflate.David Thompson2020-10-151-2/+3
|
* math: matrix: Add 3x3 matrix.David Thompson2020-10-151-106/+345
|
* math: rect: Export make-null-rect.David Thompson2020-10-151-0/+1
|
* math: rect: Move functional procedures after the imperative ones.David Thompson2020-10-151-56/+61
| | | | | The functional procedures weren't working because of a quirk with Guile's handling of the top level.