Yeah, DradControls internally perform this internally.
var intersects = _raycaster.intersectObjects( _objects, true );
It means that it traverse the objects and picks their childrend too. From my point of view, it’s confusing behaviour. Maybe contols need an additional boolean parameter to turn the traversing of objects on/off.
I don’t have that issue in my example because I dont’ use traversing of objects:
var intersects = raycaster.intersectObjects([pyramid]); // without the second parameter