1

使用box2d,我在屏幕底部有一个静态地面和一个从上方落下的盒子。尝试演员事件,地面触发事件但落下的盒子没有。

Actor创建:(静态地面填充屏幕宽度,距离底部20px高。我尝试使用setPosition但结果错误。)

box = new MyActor(world);
box.setOrigin(Gdx.graphics.getWidth() / 2, 200);
box.makeBody(20, 20, true); //defines body and fixture
stage.addActor(a);

我想问题是在演员的范围内。我这样设置:

setHeight(h); //the w and h are arguments from makeBody() method.
setWidth(w);
setBounds(0, 0, getWidth(), getHeight()); 

有任何想法吗?

4

1 回答 1

1

您确实将位置设置为 0,0 在您的setBounds. 所以事件将在左上角的某个地方。Setbounds 的第一个值是您的“身体”的位置。因此,使用 设置正确的宽度和正确的位置,setBounds它应该可以正常工作。

于 2013-05-23T07:06:30.833 回答