[英]Drawing an Image to a Box2D body
我可以得到一個簡單的答案,如何使圖像出現在box2d身上嗎? 我嘗試為圖像和物體制作一個x和y int,但是一旦物體移動,圖像就保持靜止。 如果您回答了,請解釋代碼。 如果您對我的完整源代碼感興趣,請在此處查看我的文章: http : //www.java-gaming.org/topics/libgdx-drawing-a-sprite-on-to-a-box2d-body/33894 /msg/319927/view.html#msg319927
這就是我一直在這樣做的方式。 由於物體的位置在其中心,但子畫面的位置在左下角,因此需要對子畫面應用width / 2和height / 2的偏移量。
public void drawSpriteForBody(Body body, Sprite sprite, SpriteBatch spriteBatch) {
Vector2 offset = new Vector2(sprite.getWidth() / 2f, sprite.getHeight() / 2f);
Vector2 position = body.getPosition().cpy().scl(Constants.PIXELS_PER_METER).sub(offset);
float rotation = body.getAngle() * MathUtils.radiansToDegrees;
sprite.setRotation(rotation);
sprite.setPosition(position.x, position.y);
sprite.draw(spriteBatch);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.