Schneller Tipp Optimieren von Texturen im Unreal Development Kit

In dem heutigen schnellen Tipp wird der neue Autor Ankash Kallyat die Optimierung von Texturen in Unreal Development Kit und einige der wichtigsten Punkte beim Importieren von Texturen in das UDK erörtern. Wir werden einige Möglichkeiten zum Speichern von Speicher betrachten, indem Sie Specular-Karten aus Diffuse-Karten extrahieren und mit LOD-Einstellungen arbeiten, um das Spiel zu optimieren.

Erneut veröffentlichtes Tutorial

Alle paar Wochen besuchen wir einige der Lieblingsbeiträge unserer Leser aus der gesamten Geschichte der Website. Dieses Tutorial wurde erstmals im Dezember 2011 veröffentlicht.


Bevor wir beginnen, möchte ich die von UDK unterstützten Formate auflisten. Die folgenden Texturformate werden unterstützt:

  • .bmp
  • .pcx
  • .tga
  • .schweben
  • .psd
  • .png

Ich bevorzuge meistens TGA, da es jetzt von den meisten Softwarepaketen unterstützt wird. Außerdem können Sie das Alpha optimieren. Ich speichere oft Texturen im TGA-Format, aber manchmal werden TGA-Dateien in 32 Bit und manchmal in einem einfachen Alpha-Format gespeichert, obwohl sie eigentlich keine Alpha-Informationen enthalten.

Dies ist sehr schlecht, da das UDK TGA-Dateien importiert und versucht, sie mit dem eingebauten Compressor (DXTC) zu komprimieren. Das Alpha wird jedoch von der Unreal Engine 3 nicht oder nicht vollständig komprimiert. Wenn Sie also wirklich keine Alpha-Informationen in der Unreal Engine benötigen, sollten Sie die Datei ohne Alpha speichern. Stellen Sie außerdem sicher, dass die Datei mit 8 Bit RGB / RGBA-Format pro Kanal gespeichert wird, um Komplikationen beim Import zu vermeiden.

Hier beginne ich mit einer einfachen Blattstruktur (Bananenpalme).

Klicken um zu vergrößern

Extrahieren einer Specular-Map aus einer Diffuse-Map

Wir alle neigen dazu, Dateien in drei verschiedenen Formaten zu speichern, d. H. Diffuse-, Specular- und Normal-Maps. Sie müssen jedoch nicht immer eine separate Glanzkarte speichern, da wir sie aus der diffusen Karte extrahieren können.

Klicken um zu vergrößern

Wie oben im Unreal-Material-Editor gezeigt, extrahierte ich die Rot- und Grün-Informationen aus der Diffus-Karte und multiplizierte sie. Ich multiplizierte es erneut mit einem konstanten Wert von 18 nur um das Ergebnis aufzuschlagen.

Sie können es nach Ihren Wünschen anpassen oder Sie können statt des Konstantenparameters eine 256 x 256-Spiegelkarte importieren. Sie können sehen, dass der zweite multiplizierte Wert ein wenig zu leuchten beginnt (was genau das ist, was wir wollten). Danach stecken Sie das Ergebnis einfach in den "Specular" -Knoten.

Sie können den konstanten Parameterwert auch in den Knoten "Specular Power" stecken, wenn Sie ein schönes und glänzendes spekulatives Ergebnis wünschen. Das ist es, wir haben gerade eine Spiegelkarte aus einer diffusen Karte erstellt und somit genügend Speicherplatz für das Laden einer weiteren Karte eingespart 1024 Res Map in Engine.


Tipps und Tricks importieren

Wann immer wir versuchen, eine Textur-Map zu laden oder zu speichern, versäumen wir es in der Regel, die Auflösung der Textur-Map zu überprüfen. Überprüfen Sie immer die Auflösung der Karte, da das UDK nur Texturen mit einer Auflösung von 2 (x2) importiert.

Zum Beispiel: 256 x 256, 512 x 512, 1024 x 1024, 2048 x 2048 und so weiter. Stellen Sie erneut sicher, dass die Datei in einem RGB / RGBA-Format mit 8 Bits pro Kanal gespeichert ist, um Komplikationen beim Importieren zu vermeiden. Um dies herauszufinden, öffnen Sie die Datei in Photoshop und gehen Sie zu Bild -> Modus -> und da solltest du sehen 8 Bits / Kanal ausgewählt. Wenn nicht, klicken Sie einfach darauf. Stellen Sie nach dem Laden der Textur sicher, dass Sie den LOD-Bias eingestellt haben.


LOD-Bias-Einstellung

Klicken um zu vergrößern

Wie in den obigen Textur-Eigenschaften gezeigt, habe ich die Bananenblatt-Textur mit einer Auflösung von 1024 x 1024 importiert, aber ich habe den LOD-Bias auf gesetzt 1. Was hier passiert, ist, dass die Auflösung um 1 Schritt (x2), also 512 x 512, abnimmt, sodass Sie dafür nicht Photoshop laden müssen.

Der Grund, warum ich die Last Bias eingestellt habe 1 Das liegt daran, dass unser Netz aus einfachem Laub besteht und 1024 x 1024 viel Speicherplatz beanspruchen wird. Nachfolgend ist der Unterschied zwischen "Mit LOD-Vorspannung" und "Ohne LOD-Vorspannung".

Gehen Sie in UDK zu Ansicht und dann zum Browserfenster und wählen Sie Texturstatistiken aus, um die Statistiken der in Ihre Szene geladenen Texturen anzuzeigen.


Ohne LOD BIAS-Einstellung

Klicken um zu vergrößern

Wie Sie im obigen Bild sehen können, werden die Texturen in einer Dimension von 1024 x 1024 geladen, ohne dass ein LOD-Bias gesetzt wird. Die Texturen verwenden hier jeweils etwa 1366 KB Speicher.


Mit LOD BIAS-Einstellung

Klicken um zu vergrößern

Im obigen Bild werden die Texturen in den Abmessungen 1024 x 1024 geladen, wobei jedoch der LOD-Bias auf eingestellt ist 1. Jede Textur benötigt etwa 342 KB Speicher.


FAZIT

Für Objekte, bei denen Sie hohe Details benötigen, müssen Sie den obigen Vorgang nicht ausführen. Bei einfachen statischen Objekten wie Laub, Gras, Blättern und anderen derartigen statischen Maschen können Sie sich jedoch für den obigen Vorgang entscheiden. Dies spart viel Speicher und optimiert so das Gameplay.


Verwandte Anleitungen:

  • Ein umfassendes Handbuch für Anfänger zu UDK
  • UDK - Erstellen von Ereignissen mit Unreal Kismet
  • Schneller Tipp: Eine Einführung in das Light-Mapping in UDK