fn count_scene_nodes(nodes: &[SceneNode]) -> usize
Recursively counts every visible node in a subtree (self + children).