Ich mache gerade ein Spiel, das auf einer Vielzahl von Bildschirmgrößen und Seitenverhältnissen laufen muss, und es war kein sehr einfacher Prozess. Wenn Sie außerdem Dinge in Pixel Art machen und das Pixel Art-Gefühl beibehalten möchten, während Sie viele Auflösungen unterstützen, tauchen Sie in eine Welt voller Schmerzen ein. Seien Sie also vorbereitet.
Meiner Meinung nach können Sie verschiedene Dinge tun (einige sind exklusiv, andere nicht)
Definieren Sie eine Mindestauflösung und skalieren Sie nur (alles) ganzzahlig mit dem nächsten Nachbarn. Auf diese Weise können Sie das Pixel-Art-Feeling beibehalten. Ich halte Downscaling nicht für eine gute Idee, da Sie sonst Details verlieren und der gesamte Zweck der Verwendung sorgfältig gestalteter Pixelkunst zunichte gemacht wird. Wenn Ihre minimale unterstützte Auflösung für Ihre Sprites zu klein ist, ändern Sie entweder Ihre minimale unterstützte Auflösung oder zeichnen Sie alle Assets neu, um diese minimale Auflösung zu unterstützen.
Wenn Sie auf eine Auflösung oder ein Seitenverhältnis stoßen, das nicht ausreicht, um den gesamten Bildschirm abzudecken, verlängern Sie Ihr Spiel (zeigen Sie mehr Kacheln an), während Sie die Assets intakt halten. Sie sollten Ihr Spiel so gestalten, dass es immer noch mit dem minimalen Auflösungs- / Seitenverhältnis spielbar ist.
Wenn eine Verlängerung des Spiels nicht möglich ist, füllen Sie die nicht zum Spiel gehörenden Bereiche des Bildschirms mit Schwarz. Entweder Streifen oben und unten, links und rechts oder ein schwarzer Rahmen. Dies ist, was das iPad tut, wenn iPhone-Apps im vergrößerten Modus ausgeführt werden. Dies ist auch in Emulatoren weit verbreitet.
Gib auf, dem Pixelraster treu zu bleiben. Aber Sie müssen dann aufhören, Pixelkunstobjekte mit scharfen Ecken zu verwenden. Dann hoch- / runterskalieren mit bilinearer Filterung (oder optimal bikubisch, wenn Ihre Plattform dies unterstützt). Dies ist die beste Wahl, um die Bildschirmnutzung zu maximieren, während die Benutzererfahrung für alle unterstützten Auflösungen gleich bleibt.
Für mein Spiel habe ich Option 4 gewählt, und ich bin ziemlich überrascht, wie gut es auf Geräten aussieht, die von 320 Pixel in der Vertikalen (ein altes Android 2.3) bis zu 1536 Pixel in der Vertikalen (ein iPad mit 2012) reichen Retina Display). Die ursprünglichen Elemente sind für 600 Pixel in der Vertikalen vorgesehen (ursprünglich für die Anzeige von 800 x 600 Pixel auf einem Windows-PC). Obwohl für nachfolgende Spiele, denke ich, dass eine bessere logische vertikale Auflösung 720 Pixel ist.
Das Spiel verwendet eine virtuelle Auflösung von 600 Pixel, skaliert auf die native Auflösung des Geräts mit bilinearer Filterung. Dies bedeutet, dass alle In-Code-Y-Koordinaten von 0 (oben auf dem Bildschirm) bis 600 (unten auf dem Bildschirm) reichen.
Für die horizontale Größe nehme ich an, dass die maximale Breite 1080 Pixel beträgt, was mehr als genug ist, um auch die breitesten 16: 9-Seitenverhältnisse abzudecken. Meine x-Koordinaten sind zentriert, also ist x = 0 die Mitte des Bildschirms, und die x-Koordinaten reichen von -540 links bis 540 rechts. Ich stelle sicher, dass alles zwischen -400 und 400 passt, um die schmalsten Displays zu unterstützen (4: 3)
Wenn ich jedoch das Pixel-Art-Feeling beibehalten müsste, würde ich auf jeden Fall die Optionen 1 und 2 verwenden. Dies bedeutet, dass ich nur ganzzahlig skalieren würde, um das blockartige Feeling von Pixel-Art beizubehalten und das Spiel so zu gestalten, dass die Menge sichtbar wird Kacheln sind nicht fixiert und können an jede Bildschirmauflösung und jedes Seitenverhältnis angepasst werden.
Also, um Ihre Frage (nicht) zu beantworten. Ich denke, dass das Verkleinern von Pixelkunst eine sehr schlechte Idee ist, also sollten Sie es nicht tun. Es gibt andere Möglichkeiten, um verschiedene Bildschirmauflösungen zu unterstützen, die bessere Ergebnisse liefern, als nur Ihre sorgfältig erstellten Kunstwerke zu metzeln.