java - 如何使用 box2d 创建用户数据

标签 java libgdx box2d

我正在尝试将用户数据添加到正文:

Body body = world.createBody(foo);  
body.setUserData(ObjectStuff);

当我检索数据时,它总是返回 null。我知道这是因为我设置数据的方式。

编辑:

我会直接从正文中检索数据,现在我发现这样做可能会出现问题。

Array<Body> bodies = new Array<Body>;
world.getBodies(bodies);
for(int i=0; i<bodies.size;i++) {
    Body body = bodies.get(i);
    Object foo = (Object) body.getUserData();
}

最佳答案

您以正确的方式设置用户数据,显示从 body 获取数据的代码。还要确保您调用:fixtureA.getBody().getUserData(); 而不仅仅是fixtureA.getUserData();。夹具和本体具有不同的用户数据。

关于java - 如何使用 box2d 创建用户数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24592681/

相关文章:

java - 消失的默认构造函数

java - GTA2 像 Car Physics,但极其简化

java - 选项卡切换期间的进度对话框

java - 通过 PendingIntent 传递额外内容不起作用

java - 是否有公认的或新兴的 JSON 表单和字段定义格式?

java - 如何在 Libgdx 中检测滑动而不触发 justTouched()?

java - Libgdx,按钮 onclick 事件崩溃

Android Emulator 不启动 LibGDX 项目?

box2d - 如何在 Box2D 中创建一个环绕世界

python - 找到两个向量和它们之间的角度