2011-01-15 13 views
2

Ich arbeite an einem Spiel mit OpenGL-Anzeige Sprites, d. H. 2D Quad-Mapped-Grafik ohne Projektion, die auf mehreren verschiedenen Bildschirmgrößen angezeigt werden. (zB iPhone Retina/Nicht-Retina, iPad .. mein nächstes Projekt wird das Problem auf Desktop-Auflösungen erweitern, die viel zahlreicher sind)Wie kann man Sprite-Art-Assets für verschiedene Auflösungsbildschirme erzeugen?

Ich bin OK mit der Handhabung unterschiedlicher Seitenverhältnisse, die von OpenGL und meine behandelt werden können Platzierung der Sprites. Ich bin auch OK mit etwas anderen Auflösungen - benutze die gleiche Kunst und grenze den Bildschirm ein, oder zeige ein bisschen mehr Informationen an ... aber wenn die Dinge anfangen, um 50% zu wachsen/zu schrumpfen, ist das ein großes Problem.

Was ist ein Standardverfahren zum Generieren der Art Assets in dieser Situation? Erstellen Sie für die größte Auflösung und lassen Sie OpenGL einfach über die Größenänderung während der Rasterung fürchten, oder generieren die Leute für jede Hauptauflösung Zeichensätze?

Gerasterte Sprite-Kunst neigt dazu, hässlich zu werden, wenn sie gedehnt wird (interpoliert), also bin ich besorgt ... aber die Erzeugung verschiedener Größen bedeutet für praktische Zwecke, dass ich mit Vektorzeichnungen gehen und mehrere Auflösungen exportieren muss. Begrenzt den Künstler und ist etwas kompliziert, was das Laden und Verwalten der Assets angeht

(Ja, ich kann es einfach "nur versuchen", aber ich habe bereits eine Vorstellung von den Ergebnissen. Ich suche nach Lösungen Leute Benutze und Winkel, an die ich vielleicht nicht gedacht hätte Diese Frage hat eine (n) Antwort (en) ist nicht subjektiv oder faul)

Antwort

3

Sie haben Recht, dass das Skalieren von Bitmaps dazu neigt, Sprites schlecht zu machen. Es gibt ein paar Möglichkeiten, damit umzugehen:

  1. Zeichnen Sie sie (Pixelart) mit allen erforderlichen Auflösungen. Das ist eine Menge Arbeit, aber Sie haben die volle Kontrolle.
  2. Zeichnen Sie sie (Vektoren) und rendern Sie sie in allen erforderlichen Auflösungen. Weniger Arbeit, aber Skalierung über 50% oder 200% kann zu schlechten Ergebnissen führen.
  3. Zeichnen Sie sie (3D-Anwendung) und rendern Sie sie in allen erforderlichen Auflösungen. Ziemlich viel Arbeit, aber eine sehr konsistente Menge an Sprites.

Für Sie kostenlos jede dieser Optionen sind die Bitmaps nachbearbeiten, sie zu bereinigen oder Details hinzufügen, aber wenn Sie dies tun, für die Optionen 2 und 3, die Kette brechen und die Änderungen übernehmen müssen erneut, wenn der gleiche Satz erneut gerendert wird.

Eine andere Möglichkeit besteht darin, die Variation der Auflösungen zu begrenzen.

Soweit ich weiß, ist es in der (Spiel-) Industrie sehr üblich, alle (oder die am meisten verwendeten/sichtbaren) Sprites so pixelgenau wie möglich zu machen. Dafür zahlen sie den Künstlern für ...

+0

Für # 3 welche Art von 3D-Anwendung? – Nektarios

+0

# 3 ist eine Möglichkeit 2D-Sprites zu rendern. Sie verwenden ein 3D-Modellierungsprogramm, um ein 3D-Modell mit seinen Animationen zu erstellen. Dann renderst du verschiedene Positionen in Bitmaps, um sie als 2D-Sprite zu verwenden. Auf diese Weise sorgt der 3D-Modellierer für Konsistenz, mögliche Schatten und Perspektive. –

+0

Ok, danke für die Klarstellung - ja, ich verstehe, wovon du sprichst – Nektarios

Verwandte Themen