我有一个带有 box2d 的播放器设置,我正在尝试在播放器上绘制一个精灵。玩家生成在屏幕中间,而精灵生成在屏幕的左下角,但会随着玩家实体移动,只是从不同的位置开始。
游戏画面片段:
@Override
public void render(float delta) {
super.render(delta);
player.update();
world.step(TIMESTEP, VELOCITY_ITERATIONS, POSITION_ITERATIONS);
}
@Override
public void show() {
player = new Player(world, 0, 0);
}
播放器类片段:
public Player(World world, float x, float y) {
texture = new Texture(Gdx.files.internal("sprites/Player.png"));
sprite = new Sprite(texture);
}
public void update() {
batch = new SpriteBatch();
batch.begin();
sprite.draw();
sprite.setPosition(body.getPosition().x, body.getPosition().y);
batch.end();
body.setLinearVelocity(impulse);
}
我尝试根据身体的坐标在构造函数中设置精灵的位置,但它似乎不起作用。我已经删除了身体和夹具代码。任何朝着正确方向的推动都值得赞赏。