在几个box2d代码示例中,我看到了这行代码:
body->SetUserData(self);
在我的搜索中,我没有找到任何解释。在box2d中将userdata设置为self的主要目的是什么?
答案 0 :(得分:2)
通常您将可视对象(即精灵)分配给Box2D正文的userdata对象以供联系人侦听。
如果是联系人回调,您只会收到box2d对象。因此,您可以获取联系人的主体,并从主体获取userdata,以便将消息发送到代表身体的精灵。
例如,如果你想在sprite碰撞时运行动画。