Sono stato in giro con LibGDX da un po 'di tempo e volevo trasferire facilmente i miei programmi su sistemi diversi. Ho una texture di sfondo, che voglio ridimensionare alla risoluzione attualmente utilizzata. L'immagine è 1920x1080, come posso cambiarla con la risoluzione attualmente utilizzata in fase di esecuzione?(Java LibGDX) Come si ridimensionano le mie trame in LibGDX?
7
A
risposta
9
batch.begin();
batch.draw(yourtexture, 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
batch.end();
Utilizzando la finestra fotocamera funziona anche:
batch.begin();
batch.draw(yourtexture, 0, 0, cam.viewportWidth, cam.viewportHeight);
batch.end();
+6
Questo non è davvero scalling, è solo restringere la trama quando viene disegnato, i dispositivi poveri avrebbero problemi con questo .. –
5
Se si desidera ridimensionare a disegnare l'uso a:
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();
Da:
https://www.snip2code.com/Snippet/774713/LibGDX-Resize-texture-on-load
ci sono molti modi per a Rispondi a questa domanda che dipende da come stai andando a renderizzare la trama. Puoi fornire ulteriori dettagli specifici su ciò che stai facendo? –