9

カメラを作成します:

camera = new OrthographicCamera(5.0f, 5.0f * h/w);

スプライトを作成する:

ballTexture = new Texture(Gdx.files.internal("data/ball.png"));
ballTexture.setFilter(TextureFilter.Linear, TextureFilter.Linear);
TextureRegion region = new TextureRegion(ballTexture, 0, 0, ballTexture.getWidth(), ballTexture.getHeight());
ball = new Sprite(region);

原点、サイズ、および位置を設定します。

ball.setOrigin(ball.getWidth()/2,ball.getHeight()/2);
ball.setSize(0.5f, 0.5f * ball.getHeight()/ball.getWidth());
ball.setPosition(0.0f, 0.0f);

次にレンダリングします。

batch.setProjectionMatrix(camera.combined);
batch.begin();
ball.draw(batch);
batch.end();

しかし、レンダリングすると、ボール スプライトの左下は (0, 0) であり、中心ではありません。これは、原点をスプライトの中心に設定したためです。私は何が欠けていますか?

4

1 に答える 1

8

メソッドのJavaDocsで説明されているように、原点は回転とスケーリングに関連しています。

于 2012-07-04T16:42:14.650 に答える