--- a/src/scene_node.c Sun Nov 30 16:52:33 2025 +0100 +++ b/src/scene_node.c Wed Dec 31 17:50:20 2025 +0100 @@ -70,7 +70,7 @@ if (node == NULL) return; // remove this node from its parent - asc_scene_node_unlink(node); + asc_scene_node_remove(node); // free the entire subtree CxTreeIterator iter = asc_scene_node_iterator(node, true); @@ -171,8 +171,8 @@ return cx_strcast(node->name); } -void asc_scene_node_link(AscSceneNode * restrict parent, AscSceneNode * restrict node) { - cx_tree_link( +void asc_scene_node_add(AscSceneNode * restrict parent, AscSceneNode * restrict node) { + cx_tree_add( parent, node, offsetof(AscSceneNode, parent), offsetof(AscSceneNode, children), @@ -183,8 +183,8 @@ asc_scene_node_update_transform(node); } -void asc_scene_node_unlink(AscSceneNode *node) { - cx_tree_unlink( +void asc_scene_node_remove(AscSceneNode *node) { + cx_tree_remove( node, offsetof(AscSceneNode, parent), offsetof(AscSceneNode, children),