在几个 box2d 代码示例中,我看到了这行代码:
body->SetUserData(self);
在我的搜索中,我没有找到对此的任何解释。在box2d中将userdata设置为self的主要目的是什么?
最佳答案
通常,您将可视对象(即 Sprite )分配给 Box2D 主体的 userdata 对象以供联系人监听器使用。
在联系回调的情况下,您只会收到 box2d 对象。因此,您可以获取联系人的正文并从正文中获取用户数据,以便向在视觉上表示正文的 Sprite 发送消息。
例如,如果您想在 Sprite 碰撞时在 Sprite 上运行动画。
关于cocos2d-iphone - 为什么userdata设置为self?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16448618/