2013-06-02 18 views
7

Od pewnego czasu kręcę się z LibGDX i chciałem łatwo przenieść moje programy do różnych systemów. Mam teksturę tła, którą chcę przeskalować do aktualnie używanej rozdzielczości. Obraz ma rozmiar 1920 x 1080, w jaki sposób mogę go zmienić na aktualnie używaną rozdzielczość w środowisku wykonawczym?(Java LibGDX) Jak zmienić rozmiar moich tekstur w LibGDX?

+1

Istnieje wiele sposobów na nswer to pytanie, które zależy od sposobu renderowania tekstury. Czy możesz podać więcej szczegółowych informacji o tym, co robisz? –

Odpowiedz

9
batch.begin(); 
    batch.draw(yourtexture, 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); 
    batch.end(); 

Korzystanie rzutnię aparat działa również:

batch.begin(); 
    batch.draw(yourtexture, 0, 0, cam.viewportWidth, cam.viewportHeight); 
    batch.end(); 
+6

To nie jest tak naprawdę scalling, po prostu zmniejsza się tekstury, gdy jest rysowane, słabe urządzenia będą miały z tym problemy .. –

5

Jeśli chcesz przeskalować na rysunku użycie:

Pixmap pixmap200 = new Pixmap(Gdx.files.internal("200x200.png")); 
Pixmap pixmap100 = new Pixmap(100, 100, pixmap200.getFormat()); 
pixmap100.drawPixmap(pixmap200, 
     0, 0, pixmap200.getWidth(), pixmap200.getHeight(), 
     0, 0, pixmap100.getWidth(), pixmap100.getHeight() 
); 
Texture texture = new Texture(pixmap100); 
pixmap200.dispose(); 
pixmap100.dispose(); 

Od:

https://www.snip2code.com/Snippet/774713/LibGDX-Resize-texture-on-load