forEachNode method
Calls visit for every node of the shown scene, parents first, with
its transform relative to the model's root.
Implementation
void forEachNode(void Function(int node, Matrix4 modelFromNode) visit) {
void walk(int index, Matrix4 parent) {
final node = nodes[index];
final world = parent.multiplied(node.local);
visit(index, world);
for (final child in node.children) {
walk(child, world);
}
}
for (final root in roots) {
walk(root, Matrix4.identity());
}
}