I'd consider that a separate task, to fix the group separate operator. Ideally would also unify all the other copy operators. It is extremely unlikely this would cause problems in practice because…
Oh, somehow thought the identifiers were uint32_t
, my bad.
I assume this is supposed to be a utility to prevent users from running into non-working situation too easily, rather than being a strict limitation? Because it seems quite easy to circumvent,…
I agree that we need to avoid ID pointers in the declarations. But this solves one problem by creating another: Now we have the bNodeTree
bound in the callback.
"Group Separate" operator is technically not correct because it copies nodes from the group tree, then potentially updates their ID values, then uses the old ID values to reconstruct links in…
This is to ensure sockets are updated to match dynamic declarations.
Changing socket layout too early causes the socket_map
to become invalid. So this section has been moved down beyond the link remapping section.
nodeDeclarationEnsure
past link remapping.