Commit Graph

5 Commits (6e7593b555a2a8808d6feae26f508ee4d2f20f2a)

Author SHA1 Message Date
Sofus Albert Høgsbro Rose 6e7593b555 refactor: Massive architectural changes.
See README.md for new, semi-finalized TODO list.
2024-03-10 11:56:37 +01:00
Sofus Albert Høgsbro Rose 27fdb38262 feat: We did it, GeoNodes node w/live update!
We also implemented the TriMesh node, and established a strong
convention for updating nodes from sockets via. socket superclass
method. `trigger_updates`. It should be triggered as the
`update=` callback on **ALL PROPERTIES IN ALL SOCKETS**. This
method in turn calls the nodal `update()` function, which in turn
causes the node to chain-update all nodes linked to any output socket.

By default, `update()` is `pass`, so performance shouldn't be a concern,
but we should think about this deeper at some point.

Because update-chaining is done, we're ready for preview toggles on
node outputs. A lot of exciting things to do now!
2024-02-20 13:16:23 +01:00
Sofus Albert Høgsbro Rose 62006da0f9 feat: More sockets, nodes, fixes.
We're starting to have a very advanced socket-based language
for defining nodes. It's very practical already.

The priorities are
1. All the nodes!
2. Sockets, including default values, as needed.
3. Library constants, mediums.
4. Output socket previews w/geonodes, geonodes structures.
5. Utilities including arrays (and selected array multi-input)

The code is still very spaghetti. This is very much still the
"first, make it run" part of the system design.
2024-02-19 18:36:16 +01:00
Sofus Albert Høgsbro Rose ce53997b4f feat: Registered all nodes.
Also added several features including dynamic sockets
in nodes, abstracted units for sockets, and more.
2024-02-19 14:28:35 +01:00
Sofus Albert Høgsbro Rose e1e7b7f3be refactor: Far more well-functioning baseline. 2024-02-14 12:33:40 +01:00