0

私は LibGDX を使用したトップダウン RPG ゲームに取り組んでおり、ゲーム用の Ortho.. カメラを作成しています。ただし、そうすることで、タイル テクスチャのみがレンダリングされるようになりました。レンダリング コードは次のようになります。

カメラの初期化new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

camera.(呼び出しは実際にはメソッド内にあることに注意してくださいworld.update。ここで必要なコードの量を最小限に抑えることができると考えただけです)

更新/レンダリング:

camera.position.set(getPlayer().getPosition().x, getPlayer().getPosition().y, 0);
camera.update();
batch.setProjectionMatrix(world.getCamera().combined);
batch.begin();
world.render(batch);
batch.end();

ワールドの render メソッドは最終的にこれを呼び出します:

public void render(SpriteBatch batch, float x, float y, float w, float h) {
    batch.draw(region, x, y, w, h);
}

はどこregionですかTextureRegion

カメラがなくてもすべて正常に動作するので、テクスチャが順番にのみレンダリングされる理由について非常に混乱しています (私のタイル テクスチャはエンティティの下にレンダリングされます)。もっとコードを見たい場合は、私の github にもこれがあります:ここをクリック

4

2 に答える 2

2

後でこれに気づきませんでしたが、多くのレンダリング行を行ごとにコメントアウトして、何が間違っているかを確認できるかどうかを確認していましたShapeRenderer。どうやら、 aと a のShapeRenderer間に a を使用できないため、それを台無しにしますbatch.beginbatch.end

このbadlogicgamesフォーラムの投稿の助けを借りてこれを理解しました

于 2014-09-06T01:54:36.340 に答える