<group ref={group} {...props} dispose={null}>
<primitive scale={[3, 3, 3]} position={[0, -3, 0]} object={nodes.RootNode}>
<primitive object={hairs.nodes.RootNode} />
</primitive>
</group>
Translation (position) is applied, but no rotation:
Now trying it with createPortal(hairs, head):
<group ref={group} {...props} dispose={null}>
<primitive scale={[3, 3, 3]} position={[0, -3, 0]} object={nodes.RootNode} />
{createPortal(
<primitive
// scale={[3, 3, 3]}
position={[0, -1.61, 0.01]}
object={hairs.nodes.RootNode}
/>,
nodes.Head
)}
</group>
Now Position and Rotation are applied, but the Animation is broken (notice the T-Shape of the body; a position or scale offset is happening on the animations rigg; means there is some movement from the animation, but with offset) and I had to adjust the position={[0, -1.61, 0.01]} with those magic numbers (I heavily assume the anchor point of the hair and the head are at the same point).
Conclusion: createPortal works somehow with position and rotation, but needs adjustment and the animation breaks.
Am I missing something?