텍스처의 원래 크기 (256,056)로 스프라이트를 (0,0)에 그릴 때 잘 동작하지만 위치 나 크기를 변경하면 스프라이트가 엉망입니다. 여기 코드입니다 :LibGdx 스케일링 대신 텍스처 자르기
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)를 변경하는 경우 그것?
는
here을 같이 사용'sprite.draw (배치)'이 아닌'batch.draw (스프라이트, ...); '. Sprite가 TextureRegion을 확장하도록 libgdx의 근본적인 설계 문제라고 부를 수 있습니다. 다음 주요 버전에서 수정 될 것으로 기대됩니다. – Xoppa