Leaves of Three Open Source Projects

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins

2025-03-13
23:26
pixel_robot: Added `circfill` drawing command. Leaf check-in: 7675f181dc user: andy tags: trunk
23:21
pixel_robot: Renamed `circle` to `circ` and `ellipse` to `oval` in the documentation. check-in: a40d5bc87c user: andy tags: trunk
22:14
pixel_robot: Comment updates. check-in: 97923de72e user: andy tags: trunk
21:50
pixel_robot: Added `circ` (outlined circle) drawing command. check-in: 8e067ac05a user: andy tags: trunk
18:45
pixel_robot: Fixed diamondfill to not draw the final scanline twice. check-in: c12785db55 user: andy tags: trunk
18:34
pixel_robot: Blank frames (added by next()) at the beginning/end of a sketch are now removed from the rendered surfaces (as described in the documentation). check-in: 8d09e76241 user: andy tags: trunk
18:33
pixel_robot: Added a frame method to check if a frame is blank. check-in: 9ee12f00ab user: andy tags: trunk
18:32
pixel_robot: Print number of rendered frames when reloading the sketch. check-in: d717c18328 user: andy tags: trunk
17:20
pixel_robot: Moved the coord. transform functions from methods on `pixels` to methods on `frames`; the current coord transform is a property of the entire animation (`frame_stack`) rather than of individual frames. check-in: 6fb2019a99 user: andy tags: trunk
17:20
pixel_robot: Added a TODO to make the raw-vpal-access functions private, as they are a common source of bugs. check-in: aac9cc4204 user: andy tags: trunk
17:05
pixel_robot: For all drawing commands, if you try to draw color 0, don't draw anything. The way we do this is kind of hacky, and may need to change when we add effects, which are allowed to draw color 0. check-in: f5b405f5f7 user: andy tags: trunk
17:04
pixel_robot: Made the error color visible (instead of transparent) hot pink. check-in: afc374db32 user: andy tags: trunk
17:02
pixel_robot: If an out-of-range vpal index makes it to rendering, render it as hot pink, instead of crashing. check-in: 845d7d9281 user: andy tags: trunk
17:01
pixel_robot: Documentation update. check-in: 65146d39c7 user: andy tags: trunk
2025-03-12
23:14
pixel_robot: Added the ability to use function objects as the color parameter to drawing functions. The function will be called with three arguments: x,y, and current color, and its return value will be used as the color to be drawn. check-in: af703469d2 user: andy tags: trunk
22:45
pixel_robot: Wrap sketch source in an IIFE (`(function(){...})();`) so that it can't affect the global environment (accidentally). This makes reloading possible even in the presence of const variables, etc. If (re)loading the sketch produces a JS error, keep the old rendering around rather than exiting. check-in: e51bd55e1e user: andy tags: trunk
22:30
pixel_robot: Made the sketch no longer "own" the rendered frames; instead `sketch::render()` returns the vector of rendered frames. This should make it easier to keep the animation going when a reload fails due to errors in the script. check-in: 1e378959c8 user: andy tags: trunk
22:29
pixel_robot: Split a combined assert into two to track down a bug. check-in: a229036618 user: andy tags: trunk
20:34
pixel_robot: Fixed a bug where calling `oob_write` would change the OOB-read behavior. Fixed a bug where OOB behavior was not copied to the new frame when adding new frames. check-in: f164334502 user: andy tags: trunk
20:07
pixel_robot: Added support for the `diamond`, `diamondfill`, `tri`, and `poly` drawing commands. Added `oob_read` and `oob_write` functions to the global object. check-in: 7a61deaca3 user: andy tags: trunk
20:04
pixel_robot: Fixed a bug in the rendering of `diamondfill` shapes. check-in: c9b99451ed user: andy tags: trunk
19:43
pixel_robot: Fixed a bug in the diamond shape that would cause the upper-right edge to be skipped. check-in: 78e0af6138 user: andy tags: trunk
19:22
pixel_robot: Added (untested) diamond, diamondfill shapes. check-in: c736108164 user: andy tags: trunk
18:11
pixel_robot: Added (untested) tri, poly shape implementations (based on line_shape). check-in: 9502346f67 user: andy tags: trunk
17:46
pixel_robot: Fixed a bug in the `line` shape that caused it to never increment along the minor axis (only horizontal/vertical lines were drawn). check-in: bf93cf3326 user: andy tags: trunk
17:13
pixel_robot: Fixed a bug in hline/vline/rectfill_emitter that prevented backwards rectangles from begin drawn correctly. check-in: 0d7fbf7736 user: andy tags: trunk
17:02
pixel_robot: Fixed `rect` for backwards/degenerate rectangles. check-in: b24053153b user: andy tags: trunk
2025-03-11
22:27
pixel_robot: TODO updates. check-in: 2f149d3ae0 user: andy tags: trunk
22:27
pixel_robot: Removed global `_current_frame` variable, as the frame_stack inside the sketch tracks its own current frame. check-in: 8743a0186b user: andy tags: trunk
22:26
pixel_robot: During animation, just increment the current frame counter (the sketch handles wrapping it to the correct range). check-in: cba4fadad4 user: andy tags: trunk
22:25
pixel_robot: Fixed a bug where the js `next(c)` function could not be called with a color argument. check-in: feedb8ac8b user: andy tags: trunk
22:23
pixel_robot: Added no-argument overload of frame_stack::goto(). check-in: 22f3b5897a user: andy tags: trunk
22:20
pixel_robot: Added convenience method to frame_stack, `now` which returns the current frame (get_current_frame returns the current frame *number*, not the frame itself). check-in: f125d497b2 user: andy tags: trunk
22:19
Added an example of the grayscale gradient palette. check-in: 7d1732cda5 user: andy tags: trunk
22:18
pixel_robot: Fixed reference to `goto()` (should be `go_to`) in the documentation. check-in: 5fe80dab9c user: andy tags: trunk
16:19
pixel_robot: Fixed a bug where palette indexes in JS that were floats would throw a type error. check-in: 728d67ad86 user: andy tags: trunk
15:57
pixel_robot: Added an example to test/demonstrate the `clear` drawing command. check-in: c3f846bed7 user: andy tags: trunk
15:57
pixel_robot: Fixed an ASSERT when closing the window (due to JS shutting down after the sketch object was destroyed). check-in: 10ecc024b9 user: andy tags: trunk
15:55
pixel_robot: Added the `clear()` drawing method. check-in: d88e0669fa user: andy tags: trunk
15:37
pixel_robot: Added point, line, ect, rectfill, drawing commands to the Image class. check-in: d4ef0a4ee9 user: andy tags: trunk
15:36
pixel_robot: Removed shape_sequence, implement rect shape on its own. check-in: 43ff3897d1 user: andy tags: trunk
15:36
Work on the drawing command functions (now using shapes). check-in: 5bdc8c940b user: andy tags: trunk
2025-03-10
21:57
pixel_robot: Made the drawing commands functions just wrap the shapes of the same name. Eventually, for efficiency's sake, we'll want "raw" drawing to use more optimized versions, but this works for now. check-in: cab4e9f81c user: andy tags: trunk
21:56
pixel_robot: Added a shapes utility function to iterate (via callback) over the points in a shape. check-in: 225125f155 user: andy tags: trunk
2025-03-07
00:48
pixel_robot: Wen showing the debug console, don't try to load the sketch source file (there isn't one). check-in: 6e8cee5238 user: andy tags: trunk
00:48
pixel_robot: Added some documentation to some of the Image methods. check-in: d51ea6d7c9 user: andy tags: trunk
00:47
pixel_robot: Create the global `frames` object. Make global drawing functions just call the same method on `frames`. check-in: a4b4c08e27 user: andy tags: trunk
00:46
pixel_robot: Added methods to provide direct access to a sketch's frame_stack (needed from JS). check-in: 5ca13354a7 user: andy tags: trunk
00:12
pixel_robot: Actually load and run the sketchfile given on the command-line (in preview mode). Hot-reload the sketch if the file changes. check-in: 29f52b764f user: andy tags: trunk
00:11
pixel_robot: Methods for running/updating a sketch source file (sketchfile). check-in: 8b8dbe1fa5 user: andy tags: trunk