Я использую Cocos2D с Box2D и перехожу от тел с одним прибором к телам с несколькими приборами, каждый с соответствующим спрайтом. Используя
body->GetTranform().p.x + shape->m_centroid.x
body->GetTranform().p.y + shape->m_centroid.y
body->GetTransform().q.GetAngle()
Я могу правильно расположить спрайтов, пока тело не будет повернуто. В этот момент все идет не так, как каждый спрайт вращается относительно своих братьев и сестер, а вся группа разворачивается вокруг того, что я считаю (0, 0) точкой привязки тела.
Я предполагаю, что Cocos2D / Box2D имеет простой встроенный метод для выполнения необходимого преобразования, но я не смог найти его документированным. Как лучше всего расположить мои спрайты правильно?