Texture Streaming Pool Over Budget – Unreal Engine Editor

Obwohl die Warnung „ TEXTURE STREAMING POOL OVER“ (gefolgt von einem Wert in Mebi Bytes ) einen einschüchternden roten Text verwendet und alles in schreienden Großbuchstaben geschrieben ist, ist dies kein Grund zur Panik. Dies ist eine sehr häufige Warnung, die einfach mitteilt, dass die Texturen in der Szene mehr Speicher verbrauchen, als ihnen zugewiesen wurde, und die Engine daher begonnen hat, die Qualität Ihrer Texturen zu verringern, um dies auszugleichen.

Um zu verstehen, warum diese Warnmeldung angezeigt wird, musst du ein grundlegendes Verständnis des Textur-Streaming-Systems von Unreal haben – was es tut und warum es so wichtig ist. Hier ein kurzer Überblick.

Was ist Textur-Streaming?

Ganz gleich, welche Art von Umgebung man erstellt, das Level wird Texturen haben. Selbst wenn du nicht für jedes einzelne Asset 4k-Textur-Maps verwendest, summiert sich die Datenmenge, die diese Texturen enthalten, sehr schnell. Es ist eine Menge Informationen, die man gleichzeitig im Speicher behalten muss.

Hier kommt das Textur-Streaming-System von Unreal ins Spiel. Es verwendet eine Kombination cleverer Techniken, um Texturen nach Bedarf dynamisch ein- und auszuladen, um die Leistung des Spiels zu verbessern. Es verwendet auch eine Detaillierungsoptimierungsmethode namens Mipmapping , um die Auflösung der Texturen zu erhöhen oder zu verringern. Dadurch wird sichergestellt, dass zu jedem Zeitpunkt die geringste Menge an Texturdaten geladen wird, ohne die visuelle Wiedergabetreue zu beeinträchtigen.

Durch die Verwendung dieser Technik nehmen die Texturen 33 % mehr Speicherplatz auf der Festplatte ein, aber es bedeutet, dass weniger Daten gleichzeitig geladen werden. So werden die Texturen auch aus der Ferne viel besser aussehen. Streaming-Daten (einschließlich Mipmap-Informationen) werden als Teil des Verfahrens „ Build all levels“ vorberechnet . Es kann eigenständig generiert werden, indem du im Menü „Build“ die Option „ Build Texture Streaming“ auswählst.

Es gibt mehrere Möglichkeiten, die Warnmeldung „Texture Streaming Pool Over # MiB“ zu beheben. 

1. Möglichkeit

Die erste, wenn auch unproduktive Möglichkeit, diesen Fehler zu beheben ist den Befehl ‘DisableAllScreenMessages’ in die Konsole einzugeben und alle Warnmeldungen werden unterdrückt. Kann mit dem Befehl ‘EnableAllScreenMessages‘ auch wieder rückgängig gemacht werden. Damit beim nächsten Start des Editors nicht wieder die Meldung erscheint, kann der Befehl auch im Level-Blueprint ausgeführt werden -> Execute Console Command.

Denke bitte jedoch daran, dass dies nicht wirklich etwas löst, und auch Meldungen unterdrückt, die gewollt sind, zum Beispiel bei der Funktion ‘Print String’.

2. Möglichkeit

Erhöhe einfach die Größe des Textur-Streaming-Pools, um Ihre Texturdaten zu umfassen, und schon bist du fertig. Dies ist natürlich nur ratsam, wenn deine Hardware genügend Speicher übrig hat.

Du kannst die Größe des Streaming-Pools im Editor mit dem folgenden Konsolenbefehl ändern, wobei # der Wert ist, der als Megabyte festlegt wird.

r.Streaming.PoolSize #

Denke daran, dass, wie bei vielen über die Konsole eingegebenen Konfigurationsbefehlen, die Änderung der Größe des Pools auf diese Weise nur vorübergehend ist. Es wird wieder auf den Standardwert zurückgesetzt, wenn der Editor erneut geöffnet wird. Wenn du möchtest, dass diese Änderung bestehen bleibt, musst du zur Konfigurationsdatei meinProject/Config/DefaultEngine.ini des Projekts navigieren und r.Streaming.PoolSize =# zum Abschnitt [/Script/Engine.RendererSettings] hinzufügen. Wenn es nicht existiert, erstelle es.

In die Zwischenablage kopieren

Wie groß muss mein Textur-Streaming-Pool sein?

Hier ist ein kurzer Tipp, um die Mindestgröße in MB herauszufinden, die dein Textur-Streaming-Pool haben muss, um die Texturdaten des Levels zu erfassen.

Wenn du r.Streaming.PoolSize 1 in die Konsole eingibst, wird der Textur-Streaming-Pool auf 1 MB gesetzt und alle Texturen werden sofort ausgeblendet – aber das ist in Ordnung. Es ist nur vorübergehend.

Du wirst jetzt bemerken, dass, während du dich auf der Karte bewegst, die Warnmeldung über Budgetüberschreitungen des Textur-Streaming-Pools aktualisiert wird, um mitzuteilen, wie viel Budget überzogen wurde. Bewege dich auf der Karte herum und wähle die höchste Zahl aus – dieser Wert (+1) ist die minimale Poolgröße.

Der Editor Text aus dem Video:

In die Zwischenablage kopieren

Das Video zum Tutorial auf YouTube:

Aus datenschutzrechlichen Gründen benötigt YouTube Ihre Einwilligung um geladen zu werden. Mehr Informationen finden Sie unter Datenschutzerklärung.
Akzeptieren