Keavon Chambers
b396d17211
Migrate remaining node graph data types from Vec to Table ( #4067 )
...
* Move Vec<String> to Table<String>
* Remove old VecDVec2
* Move Vec<u8> to Table<u8>
* Move Vec<f64> to Table<f64>
* Move [f64; 4] to Table<f64>
* Move Vec<NodeId> to Table<NodeId>
* Tidy up the TaggedValue variants
* Move Vec<BrushStroke> to Table<BrushStroke>
* Add missing type implementations
* Fix tests
---------
2026-04-28 13:44:25 -07:00
Keavon Chambers
3eba762135
Migrate 'Sample Polylines' from a subgraph to a proto node ( #4063 )
2026-04-28 04:20:47 -07:00
Keavon Chambers
76938eb69a
Implement dynamic table attributes to generalize the graphic-specific Table type ( #4050 )
...
* Feature-gate serde derives behind cfg_attr in all runtime node graph type crates
* Refactor Table to move its hard-coded fields into an attributes field
* Encapsulate TableRow/TableRowRef/TableRowMut attribute fields behind accessor methods
* Remove TaggedValue::GraphicUnused
* Refactor Table<T> to use dynamic attributes instead fixed names
* Fix code review soundness concerns
* Add todo work
* Replace row-oriented Table<T> API with column-oriented access
* Fix attribute propagation bugs
---------
2026-04-28 03:25:16 -07:00
Dennis Kobert
3d84e63ef9
Migrate usage of the Hash trait for cache invalidation to the dedicated CacheHash trait ( #4051 )
...
* WIP start migrating usages of hash for cache invalidadion to dedicated trait
* Finish migrating usages
* Code review
* Add comments clearifying the reasoning for using random ids in the VectorModification cach hash impl
* Fix some remaining hash violations
* Finish migration and fix compilation
* Fix import ordering
* Cleanup
* Fix code review stuff
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-04-27 05:18:47 +00:00
Keavon Chambers
a59fed9d1c
Move the "Text" category nodes from gcore/src/logic.rs to text/src/lib.rs ( #4042 )
...
Move the String category nodes from gcore/src/logic.rs to text/src/lib.rs
2026-04-23 18:12:28 -07:00
Keavon Chambers
f1cbc4b396
Make the node graph use Table<GradientStops> instead of GradientStops ( #3837 )
...
* Switch from GradientStops to Table<GradientStops> in all nodes
* Remove TaggedValue::ColorNotInTable
* Fix bug
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* Add migrations
* Fix default gradient on empty table
* Update demo artwork
---------
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-02-26 14:07:31 -08:00
Timon
910fb54c15
Add quantize time nodes ( #3703 )
...
add quantize time nodes
2026-02-02 12:55:53 +00:00
Keavon Chambers
390004897b
Add "Loop Level" to the Position context reader node ( #3679 )
...
* Add "Loop Level" to the Position context reader node
* Remove InjectPosition
2026-01-28 10:52:39 +00:00
Keavon Chambers
a88342b8da
Add the "Rate" multiplier parameter to the Animation Time node ( #3685 )
2026-01-26 00:37:15 -08:00
Keavon Chambers
fa45efa9e2
New node: Pointer Position ( #3535 )
...
* New node: Pointer Position
* Fix test
2025-12-27 16:02:23 -08:00
Dennis Kobert
57b0b9c7ed
Restructure node crates ( #3384 )
...
* Restructure node-graph folder
* Fix wasm compilation
* Move node definitions out of *-types crates
* Cleanup
* Fix warnings
* Fix warnings
* Start adding migrations
* Add migrations and move memo nodes to gcore
* Move nodes/gsvg-render -> rendering
* Replace some hard coded identifiers and fix automatic conversion
* Fix Vec2Value node migration
* Fix formatting
* Add more migrations
* Cleanup features
* Fix core_types::raster import
* Update demo artwork (to make profile ci work)
* Move *-types to node-graph/libraries folder
* Add missing node migrations
* Migrate more nodes
* Remove impure memo node
* More fixes and remove warning
* Migrate context and add a few missing migrations
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-11-18 10:21:54 +00:00