2016-06-02 5 views
0

Ich machte und ein Spiel für Android mit libgdx mit einer virtuellen Breite und Höhe von 320 x 480. mein Problem ist auf andere Auflösung. Ich habe kein künstlerisches Talent, also habe ich keine Idee, was ich damit anfangen soll. ich meine Kamera wie dieswie man Spielbild auf größeren Geräten repariert

this.camera = new OrthographicCamera(); 
this.camera.setToOrtho(false, 320, 480); 

ich diese zwei Screenshot habe, habe ich das Libgdx Beispielbild für Einfachheit.

an diesem ersten Screenshot correct

mit config.useImmersiveMode = false;

wo ich mein Spiel entwerfen. alles ist perfekt. Wie Sie sehen können, ist das quadratische Bild perfekt gezeichnet.

auf diesem zweiten Screenshot stretch

das config.useImmersiveMode = true;

das Bild mit streck, auf meinem Spiel der ganze Spielkunst Strecke ist, die es so hässlich ist, zu betrachten. Ich habe keine Vorstellung davon, was zu tun ist, um die richtige Lösung zu finden.

Wie Sie Spielentwickler, was ist Ihr Ansatz für dieses Problem? flappy bird funktioniert gut mit verschiedenen Geräten

+0

Viewports übernehmen dies für Sie. Auch wenn Sie nicht wirklich pixelgenaues Rendering wünschen, rate ich davon ab, die Bildschirmauflösung als Kameraeinheit zu verwenden. Nutze sinnvolle Einheiten. Viele Anfänger gehen schief, indem sie alles mit Pixeln machen, Ihr Spiel muss keine Pixel kennen. – Madmenyo

Antwort

0

Anstatt zu dehnen können Sie den Zoom der Kamera basierend auf den Bildschirmabmessungen berechnen und einstellen. Auf diese Weise wird ein Teil des Spielfelds ausgeschnitten, wenn der Gerätebildschirm verschiedene Proportionen hat, aber Sie werden nicht das richtige Seitenverhältnis verlieren.