The motivation is here. I was told by an aframe dev that, while the component is cool, it’s not possible to do on the aframe level because threejs has a strong assumption that each object has only a single parent.
[…] But I think it would be great if there was a way to specify an entity to be relative to another entity, that is not necessarily its parent. […]
Sounds a bit more like a misunderstanding of the concept of parent in three - then picking an incorrect parent object.
Parents are more of a math concept, rather than a realistic scene / world structure. Children simply inherit transform matrix - how would it work if there was more than one transformation matrix a child can inherit?
Also, is there something preventing someone from contextually grouping objects using just arrays - without applying relative transforms as grouping by parents does?
three.js just sticks to the scene graph concept like many other 3D engines. Since a scene graph is nothing else than a tree structure, it’s totally normal than objects only have a single parent. You can read more about scene graphs here: