Keavon Chambers
d445bffe31
Add donation callouts in-app and on the site
2025-04-25 00:13:24 -07:00
Keavon Chambers
e60a9c36d8
Update the website roadmap
2025-04-24 06:11:37 -07:00
Keavon Chambers
471ef87801
Add reference point input to the Mirror node
2025-04-24 05:33:20 -07:00
Keavon Chambers
ac9fb2b02d
Improve instancing nodes (make them output group data, add 'Instance Repeat', fix Flatten Vector Elements click targets, and more) ( #2610 )
...
* Improve instancing nodes (make them output group data, add 'Instance Repeat', fix Flatten Vector Elements click targets, and more)
* Fix test?
* Fix more tests?
* Fix moar test??
* Clean up instance method naming
2025-04-22 17:55:57 -07:00
Keavon Chambers
5e0e11b4c1
Update the UI colors of the node graph data types
2025-04-20 17:37:21 -07:00
Keavon Chambers
a376832480
Fix and improve robustness of node/parameter tooltip plumbing; simplify properties row widget boilerplate ( #2600 )
...
* WIP
* WIP2
* Further cleanup
2025-04-19 20:25:36 -07:00
Keavon Chambers
41fe46591a
Update the parameter expose button in the Properties panel and fix undo history when it's clicked
2025-04-17 06:29:38 -07:00
Keavon Chambers
eca5d0d105
Add node description tooltips in the Properties panel and on secondary inputs in the graph ( #2590 )
...
Add tooltips to secondary inputs in graph/Properties panel, and to nodes in Properties panel
2025-04-17 00:59:46 -07:00
Keavon Chambers
fa21385d2c
New nodes: 'Position on Path' and 'Tangent on Path' ( #2588 )
2025-04-16 22:50:50 -07:00
Keavon Chambers
184c009f17
Add memoization to instancer nodes
2025-04-16 04:43:47 -07:00
Keavon Chambers
29479f6e3e
Update Cargo dependencies in Cargo.lock
2025-04-13 21:20:55 -07:00
Keavon Chambers
e759e62291
Comment out all remaining active Imaginate code
2025-04-12 17:32:24 -07:00
Keavon Chambers
a11f9b36c3
Add the menu bar command: Help > Debug > Reset Node Definitions on Open
2025-04-12 16:56:55 -07:00
Keavon Chambers
100df9a81d
Remove 'Memoize Impure' from document node definitions
2025-04-12 05:15:05 -07:00
Keavon Chambers
a8a5a1f3fd
New node: Sample Gradient
2025-04-12 04:19:46 -07:00
Keavon Chambers
69069ef723
Fix the 'Repeat', 'Circular Repeat', and 'Mirror' nodes to work on point cloud vector data ( #2553 )
...
* Include points in bounding box calculations
* Fix unrelated crash from debug assert when reordering root-level folders
* Fix another unrelated crash from debug assert when GRS scaling to size 0
* Fix several vector nodes to respect and propagate local transform space
2025-04-12 02:18:31 -07:00
Keavon Chambers
0d10ad2161
Revert double-click to open node catalog from #2423 because it occurs even outside the graph
2025-04-10 14:55:35 -07:00
Keavon Chambers
855acf7f85
Update website now that GSoC applications are closed
2025-04-10 06:38:43 -07:00
Keavon Chambers
bc03941174
Blog post: Internships for a Rust graphics engine: GSoC 2025
2025-04-02 03:58:24 -07:00
Keavon Chambers
cdf896bf79
New demo artwork: "Parametric Dunescape"
2025-04-01 23:20:34 -07:00
Keavon Chambers
158f18df0d
Work around unwrap crash
2025-03-29 15:43:40 -07:00
Keavon Chambers
4e418bbfe1
Fix device pixel ratio being tied to the document by moving it from overlays to portfolio
2025-03-21 10:13:08 -07:00
Keavon Chambers
08a4b69948
Add animation control buttons to document bar
2025-03-19 02:15:40 -07:00
Keavon Chambers
6292dea103
Refactor many usages of Color to natively store linear not gamma ( #2457 )
2025-03-18 05:37:20 -07:00
Keavon Chambers
3e56113c78
Update student projects page of the website
2025-03-13 11:11:19 -07:00
a696aae044
Instance tables refactor part 5: unwrap GraphicGroup as multi-row Instance<GraphicElement> tables and move up transforms ( #2363 )
...
* Just group
* Partly working but without transforms
* Remove Transform/TransformMut from GraphicElement and GraphicGroupTable
* Fix layers and flattening
* Fix transform group handling on the remaining nodes
* Change collect metadata
* Add transform on vector data. TODO: Remove duplicate transform
* Small code tidying-up
* Add concatenate node?
* Remove ignore_modifications which is always false
* Improve transforms
* Mostly fix the nested transform cage angle (except leaf layers and skew)
* WIP attempt to integrate skew
* Fix nesting bounding box
* Avoid setting the transform
* Fix stroke transforms
* Renderer cleanup
* Fix tests for repeated elements not given unique point IDs
* Suppress cargo-deny warning
* Fix upgrade code for graphic group data
* Work around rendering issue in Isometric Fountain
---------
Co-authored-by: Adam <adamgerhant@gmail.com >
Co-authored-by: hypercube <0hypercube@gmail.com >
2025-03-12 01:38:36 -07:00
Keavon Chambers
381dcbf17f
Update dependencies throughout the project ( #2401 )
...
* Update dependencies
* Update stable node ID hashes again, for some reason?
2025-03-07 21:32:52 -08:00
Keavon Chambers
c4cf47703a
Tidy up NodeNetworkInterface, replacing &[] root network arguments with methods for the document network ( #2393 )
...
* Replace `.selected_nodes(&[])` with `.selected_nodes_in_nested_network()` and `.selected_nodes()`
* Replace `.network(&[])` with `.document_network()` and `.nested_network()`
* Replace `.network_metadata(&[])` with `.document_network_metadata()`
2025-03-07 01:33:24 -08:00
Keavon Chambers
22a900b35e
Fix regresion from #2265 causing an extra default artboard to show up
2025-03-06 22:56:09 -08:00
Keavon Chambers
19a140682e
Instance tables refactor part 4: replace ArtboardGroups with multi-row Instances<Artboard> ( #2265 )
...
* Clean up dyn_any usages
* Migrate ArtboardGroup to ArtboardGroupTable (not yet flattened)
* Reorder graphical data imports
* Flatten and remove ArtboardGroup in favor of ArtboardGroupTable
* Fix test
2025-03-06 05:36:26 -08:00
Keavon Chambers
2f6c6e28f0
Instance tables refactor part 3: flatten ImageFrame<P> in lieu of Image<P> ( #2256 )
...
* Remove ImageFrame<T> by flattening it into Image<T>
* Rename TextureFrame to ImageTexture
* Fix tests
2025-03-06 05:36:17 -08:00
Keavon Chambers and hypercube
f1160e1ca6
Instance tables refactor part 2: move the transform and alpha_blending fields up a level ( #2249 )
...
* Fix domain data structure field plural naming
* Rename method one_item to one_instance
Rename method one_item to one_instance
* Move the Instance<T> methods over to providing an Instance<T>/InstanceMut<T>
Move the Instance<T> methods over to providing an Instance<T>/InstanceMut<T>
* Add transform and alpha_blending fields to Instances<T>
* Finish the refactor (Brush tool is broken though)
* Add test for brush node
* Fix brush node
* Fix default empty images being 1x1 instead of 0x0 as they should be
* Fix tests
* Fix path transform
* Add correct upgrading to move the transform/blending up a level
---------
Co-authored-by: hypercube <0hypercube@gmail.com >
2025-03-06 05:36:09 -08:00
Keavon Chambers
ddb0c8c249
Reorganize the menu bar and add additional commands to it
2025-03-01 13:44:28 -08:00
Keavon Chambers
e41471c088
Fix wrong node parameter widgets, attempt 2 at #2323
2025-03-01 04:34:12 -08:00
Keavon Chambers
bc6e76208d
Fix bug introduced in #2276 causing number inputs to abort on any keyboard input, not just Esc
2025-03-01 01:28:27 -08:00
Keavon Chambers
390574d5c6
Limit the Sample to Points node's spacing value to prevent freezing when 0
2025-02-25 00:45:54 -08:00
Keavon Chambers
fb13d58767
Declare the start of the Alpha 4 release series
2025-02-21 13:52:05 -08:00
Keavon Chambers
5115a05c5b
Make grid-aligned node graph wires an experimental feature disabled by default
2025-02-21 13:27:30 -08:00
Keavon Chambers
2c88bee0ee
Update some UI components to polish the frontend
2025-02-21 12:58:05 -08:00
Keavon Chambers
7bbbf7fa7c
Add icons and tooltips for the previous commit's feature
2025-02-12 01:54:30 -08:00
Keavon Chambers
1700c3a650
Update website with improved student project details
2025-02-11 17:18:57 -08:00
Keavon Chambers
ec8c8d6485
Polish and add aborting to several input widgets: no Esc closing parent menus; color picker axis align; repeat on arrow buttons ( #2276 )
...
* Remove color input outline; reduce antialiasing compositing artifacts in color widgets
* Rename ColorButton to ColorInput
* Add features and aborting to several other widgets
- Prevent Esc from closing parent floating menus when aborting
- Fix missing icon regression
- Gutter resizing abort
- Color picker aborts, Shift axis alignment, improve click/drag behavior for gradient spectrum
- Scrollbar abort, repeat when held, fix directional arrows when viewport is zoomed
- Number input abort, repeat when held
* Move ColorInput into the inputs folder
* Fix tiny logo
2025-02-10 05:46:41 -08:00
Keavon Chambers
0037f5158c
Add new icons to all menu bar entries
2025-02-07 19:08:06 -08:00
Keavon Chambers
0ec91bfe01
Add pin and cut icons; improve menu bar shortcut labels to choose shortest
2025-02-05 18:30:10 -08:00
Keavon Chambers
f13efd2d06
Standardize increment snapping to use the Shift key
2025-02-05 03:23:47 -08:00
Keavon Chambers
0cda8e2bb4
Code cleanup around the input mapper system
2025-02-04 19:36:30 -08:00
Keavon Chambers
0d8b25d37f
Update most Rust dependencies ( #2259 )
2025-02-04 02:41:13 -08:00
Keavon Chambers
5fedd5c234
Fix demo artwork
2025-02-01 05:50:30 -08:00
Keavon Chambers
303c1d45f8
Avoid adding an unnecessary Transform node with the TransformChange message
2025-01-30 03:17:31 -08:00
Keavon Chambers
eb0ff20d3c
Instance tables refactor part 1: wrap graphical data in the new Instances<T> struct ( #2230 )
...
* Port VectorData to Instances<VectorData>
* Port ImageFrame<P> and TextureFrame to Instances<ImageFrame<P>> and Instances<TextureFrame>
* Avoid mutation with the TransformMut trait
* Port GraphicGroup to Instances<GraphicGroup>
* It compiles!
* Organize debugging
* Document upgrading
* Fix Brush node
* Restore TransformMut in lieu of TransformSet trait
* Fix tests
* Final code review
2025-01-28 23:51:12 -08:00
Keavon Chambers
eada1eba54
Update content on the website hoe page, roadmap, and donate page
2025-01-25 04:29:40 -08:00
Keavon Chambers
8505ed3f10
Improve older document upgrading compatibility and make node type errors clearer ( #2201 )
...
* Improve older document upgrading compatibility and make node type errors clearer
Misc.
* Fixes
* Avoid unwrap
2025-01-21 01:40:43 -08:00
Keavon Chambers
9a25555732
Add marbled mandelbrot as unpublished demo art
2025-01-18 20:00:06 -08:00
Keavon Chambers
b36521e588
Improve readability of the donation page
2025-01-18 01:29:01 -08:00
Keavon Chambers
ab724d8b00
Add the 2024 yearly report to the blog
2025-01-17 16:03:43 -08:00
Keavon Chambers
b7907bc96f
Add Stipe donations to the website and polish other pages
2025-01-17 15:21:57 -08:00
Keavon Chambers
9ad6c31483
Remove blob URL dead code and clean up more frontend code ( #2199 )
2025-01-14 13:08:47 -08:00
Keavon Chambers
1e62af88cd
Remove trailing zeros in rendered SVG path output
2025-01-13 02:56:33 -08:00
Keavon Chambers
3582126ded
Remove the Pen tool's anchor square under the cursor when drawing a not-yet-placed segment
2025-01-10 13:12:51 -08:00
Keavon Chambers
51d1c4eeac
Fix drawing new layers not being put next to nested selected layers
...
A regression introduced in #2110
2025-01-09 20:37:49 -08:00
Keavon Chambers
07601a5c6c
Improve snapping with better snap target names, tooltips, cleaner overlay labels, code cleanup
2025-01-09 19:03:14 -08:00
Keavon Chambers
ae2637e08e
More website loading speed and code improvements
2025-01-08 20:49:42 -08:00
Keavon Chambers
68e6bec9b5
Reduce website loading times and related code cleanup
2025-01-08 18:29:54 -08:00
Keavon Chambers
93a60daa24
Comprehensively update user manual and contributor guide, add Adam to core team
2025-01-08 03:52:11 -08:00
Keavon Chambers
9eb544df74
Rename "options/top bar" terminology to "control bar" and update comments
2025-01-07 17:33:45 -08:00
Keavon Chambers
1c880daea2
Fix isometric dotted grid and avoid antialiasing on dashed line overlays
2025-01-07 17:27:35 -08:00
Keavon Chambers
54926d5474
We reached 10k stars on GitHub!
2024-12-31 10:14:33 -08:00
Keavon Chambers
740fcb73cc
Remove the hexagon shape from the above-the-fold part of the website homepage
2024-12-30 20:26:05 -08:00
Keavon Chambers
ce0cd39c9b
Update the readme
2024-12-30 03:17:39 -08:00
Keavon Chambers
b81f48385a
Fix several bugged vector-related nodes
2024-12-26 16:36:45 -08:00
Keavon Chambers
feba87449b
Add more actions to the Layer menu bar entries
2024-12-26 16:31:13 -08:00
Keavon Chambers
ed119ad3d7
Add Freehand tool drawing new subpaths on an existing layer with Shift held
2024-12-17 22:01:42 -08:00
Keavon Chambers
1264ea8246
Tidy up the UI with clearer Layers panel selection marks and removal of most "coming soon" UI elements
2024-12-14 20:49:21 -08:00
Keavon Chambers
d7a271f675
Update the website roadmap and other details
2024-11-20 10:31:25 -08:00
Keavon Chambers
99cf8f0c4f
Clean up editor preferences dialog
2024-11-15 18:47:50 -08:00
Keavon Chambers
4c4d559d97
Fix crash when upgrading a document with a Modulo node from 3 commits ago
2024-11-12 13:55:03 -08:00
Keavon Chambers
d649052255
Upgrade and document the math operation nodes
2024-11-09 23:23:25 -08:00
Keavon Chambers
de366f9514
Add Brush tool warning; move font list loading to document creation time
2024-11-09 12:27:09 -08:00
Keavon Chambers
457619794b
Improve nudging when tilted and add Artboard tool nudge resizing; disable menu bar entries when no layer is selected ( #2098 )
...
* Make nudging follow a tilted viewport
* Add artboard nudge resizing
2024-11-08 16:16:20 -08:00
Keavon Chambers
f1b0d8fa87
Improve the node graph with revamped top bar and disabling tools when graph is open ( #2093 )
...
* Add "Fade Artwork" slider and disable tools when graph is open
* Add navigation and layer/node management buttons to graph top bar
* Reduce code duplication
2024-11-04 20:41:53 +00:00
Keavon Chambers
12ca06035c
Hide the left border notch in layers when a wire isn't entering from the layer's left
2024-11-03 15:33:29 -08:00
Keavon Chambers
8d3da83606
Avoid sometimes breaking the selected layer upon switching away from the Select tool
2024-11-02 18:55:57 -07:00
Keavon Chambers
7d86bf4abf
New node: Jitter Points
2024-11-02 16:37:27 -07:00
Keavon Chambers
4c9ab2d50b
New nodes: "Clamp", "To U32", and "To U64" ( #2087 )
...
* New nodes: "Clamp", "To U32", and "To U64"
* Add name
2024-11-02 03:20:02 -07:00
Keavon Chambers
3f17e83e80
Improve Sample Points, Scatter Points, and Splines from Points to include segments and work with subpaths ( #2085 )
2024-11-01 12:44:05 -07:00
Keavon Chambers
4df780391c
Fix Bezier-rs web demos failing to run wasm-opt in CI
2024-10-27 15:06:22 -07:00
Keavon Chambers
a395fbf063
Fix/suppress new Clippy warnings introduced in Rust 1.82
2024-10-25 11:14:51 -07:00
Keavon Chambers
f892687576
Update the screenshots on the website home page carousel
2024-10-15 22:32:07 -07:00
Keavon Chambers
f7d83d2632
New node: Offset Path ( #2030 )
...
* New node: Offset Path
* Fix CI
2024-10-11 14:50:54 -07:00
Keavon Chambers
7a56af01ef
Fix the Scatter Points node
2024-10-10 13:45:51 -07:00
Keavon Chambers
fa6b5f298a
New demo artwork: "Changing Seasons"
2024-10-04 16:31:22 -07:00
Keavon Chambers
a2465f40b3
Simplify the Bezier-rs interactive web demo code ( #2020 )
...
* Change demo pane classes into simpler group functions
* Eliminate classes
* Use template strings for HTML
* Reduce files and flatten directories
* Restructuring to reduce redundant code
* Eliminate the module pattern and consolidate both demo types
* Further consolidate into main.ts
2024-10-03 17:20:50 -07:00
Keavon Chambers
e6d8c4743d
Add support for pinning nodes in the Properties panel
2024-10-03 16:26:40 -07:00
Keavon Chambers
2d86fb24ab
Add line height and character spacing to the Text node ( #2016 )
2024-10-01 12:28:27 -07:00
Keavon Chambers
904cf09c79
Add drag-and-drop and copy-paste file importing/opening throughout the UI ( #2012 )
...
* Add file importing by dragging and dropping throughout the UI
* Disable comment-profiling-changes.yaml
* Fix CI
2024-09-28 00:19:43 -07:00
Keavon Chambers
c738b4a1f9
Replace terminology "primary" with "call argument" and "parameter" with "secondary input"
2024-09-25 20:05:00 -07:00
Keavon Chambers
0b0169a415
Remove serde from Bezier-rs web demos to reduce Wasm size
2024-09-24 01:33:15 -07:00
Keavon Chambers
aa03dc8278
Upgrade web dependencies
2024-09-24 01:33:12 -07:00
Keavon Chambers
1ee5ffbbe8
Clean up web code errors and make CI enforce them
2024-09-24 01:33:02 -07:00
Keavon Chambers
14de67c5a7
Upgrade the third-party library license generation
2024-09-24 01:20:57 -07:00