Когда я рисую спрайт в (0,0) с исходным размером текстуры (256,256), он отлично работает, но когда я изменяю положение или размер, спрайт перепутался. Вот код:LibGdx Cutting Texture Вместо масштабирования
private SpriteBatch batch;
private Sprite sprite;
private OrthographicCamera camera;
@Override
public void create() {
camera=new OrthographicCamera(600,600);
camera.position.set(0,0,0);
camera.update();
batch=new SpriteBatch();
sprite=new Sprite(new Texture("TestBlock_01.png"),0,0,256,256);
}
@Override
public void render() {
Gdx.gl.glClearColor(1, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
batch.setProjectionMatrix(camera.combined);
batch.draw(sprite,sprite.getX(),sprite.getY(),sprite.getWidth(),sprite.getHeight());
batch.end();
}
Но теперь, когда я изменить положение и размер до (-100, -100,100,100):
Как я могу исправить Это?
Используйте 'sprite.draw (партия)', 'не batch.draw (спрайт, ...);'. Вы можете назвать это основной проблемой дизайна libgdx, чтобы Sprite расширил TextureRegion и, надеюсь, он будет исправлен в следующей крупной версии. – Xoppa