Die Texture Streaming Pool Over Meldung ist ein Warnung, kein Fehler. Jeder der „Texture Streaming Pool Over“ in seinem Editor liest, wird feststellen, dass alldemnach wie „groß“ überschrittene Wert ist, immer mehr verschwommene Texturen sieht.Diese Meldung sehen vermutlich die meisten Unreal Engine 4 Nutzer irgendwann mal, aber keine Sorge, es gibt eine einfache Lösung für dieses Problem.
Texture Streaming Pool Over - So lösen!
Es gibt zwei Wege dieses Problem zu lösen. Die erste Lösung kann man direkt um Unreal Engine Editor innerhalb von wenigen Sekunden umsetzen und hat dann einen temporären Fix. Die zweite Möglichkeit ist ein permanenter Fix und dafür müssen wir Unreal Engine Editor Configs editieren – beide Wege sind kinderleicht.
- Temporäre Lösung
Für die temporäre Lösung benötigst du lediglich den geöffneten Unreal Engine Editor. Um den „Streaming Texture Pool Over“ Hinweis zu beheben musst du der Unreal Engine mehr Grafikspeicher zuweisen.
- Öffne die Unreal Engine.
- Oben links in der Menüleiste findest du den Punkt „Window“, klicke dort drauf – es öffnet sich ein Drop-down Menü.
- Im Untermenü von „Window“ öffnest du nun den Punkt „Developer Tools“.
- Dort klickst du auf „Output Log“ – eine Konsole öffnet sich.
Kurz: Window > Developer Tools > Output Log - In dieser Konsole gibst du unten im Textfeld folgendes ein (einfach kopieren und einfügen) :
r.Streaming.Poolsize 3000
Jetzt hast du dem Unreal Engine Editor 3GB Grafikspeicher zur Verfügung gestellt! Alternativ kannst du statt „3000“ (3000MB) auch „4000“ oder mehr eintippen. Dieser Wert stellt den MB Wert des Grafikspeichers da, den die Unreal Engine nutzen soll.
- Geht in den Installationsordner eurer Unreal Engine – bspw.:
X:\Unreal Engine\UE_4.27\ - Nun öffnet ihr den Unterordner „Engine“.
- Geht dann in den Unterordner „Config“.
Am Ende seit ihr in: X:\Unreal Engine\UE_4.27\Engine\Config\ - Sucht und öffnet mit eurem Windows Editor (alternativ ist Notepad++ zu empfehlen) die Datei:
BaseScalability.ini - Geht in dem Editor eurer Wahl oben links auf „Suche“ oder „Search“. Im Windows Editor findet ihr das oben links unter dem Menüpunkte „Bearbeiten“ oder alternativ in dem ihr STRG+F3 drückt.
- Sucht nach: r.Streaming.Pool
- In der Datei findet ihr jetzt eine Überschrift namens: [TextureQuality@Cine]
Gebt hier unter „r.Streaming.PoolSize=1000“, statt 1000 -> 3000 ein. - Wenn ihr jetzt eure Engine startet, solltet ihr 3 GB Grafikspeicher zur Verfügung haben.
Unter den Punkten [TextureQuality@Cine], [TextureQuality@1], etc. findet ihr die jeweiligen Qualitätsstufen der Unreal Engine, aka. die Scalability. Über diese könnt ihr auch direkt in der Unreal Engine die Darstellungsqualität wie in einem Computerspiel (Grafikoptionen) erhöhen oder mindern. „EPIC“ ist hier die höchste Stufe.
Was bedeutet "Texture Streaming Pool Over"?
Die „Pool Over“ Meldung bedeutet nur das euer Projekt mehr Grafikspeicher benötigt, als die Engine momentan zugewiesen hat.
Ist das für euch jetzt schlecht? Ja und nein! Grundlegend ist es immer besser wenn ihr sparsam mit Dingen wie dem Texture Pool, Draw Calls, Triangles usw. um geht. Sparsamkeit sorgt für mehr Performance. Gerade bei modernen Spielen muss man deswegen zwischen „Performance“ und „Aussehen“ abwägen.
Die Unreal Engine hat von Haus aus 1000 MB Grafikspeicher eingestellt. Im Jahre 2021, 2022 etc. ist das natürlich ein sehr geringer Wert, da man schon bei Nutzern mit schlechter Grafikkarte von einem Wert von mindestens 2 GB / 2000 MB ausgehen kann. Ich würde sogar schon von einem Wert von 4 GB / 4000 MB ausgehen – jedenfalls gehe ich bei meinem eigenen Spiel „Battle of Decay“ von einem solchen Wert aus. Habt ihr also diese Warnmeldung bekommen, heißt das nur, dass ihr gerade in eurem Level mehr als 1000 MB Grafikspeicher nutzt. Dies kommt durch Materials (also allen Texturen), Decals und auch durch Effekte – Nicht schlimm.
Texture Pool over bei über 4000 MB Grafikspeicher!
Computerspiele die bereits der Engine 4000 MB Grafikspeicher zugewiesen haben und immernoch diese Meldung bekommen, haben ein Problem. Geht immer von Nutzern aus, die schlechtere Hardware als ihr habt. Solltet ihr in eurem PC-Spiel also mehr als 4 GB Grafikspeicher nutzen, kann dies an folgenden Dingen hängen:
- Zu große Texturauflösungen (zu viele 4k / 8k Texturen)
- Zu viele hochauflösende Decals in einem Gebiet
- Unoptimierte Texturnutzung (Keine ORM Texturen)
- Keine Mip-Maps / Level of Detail bei Texturen
Bei Film- / Cinematic-Projekten ist das weniger ein Problem, da ihr euer finales Produkt rendert und somit kein Nutzer eure Unreal Engine Anwendung spielen oder eine Anwendung nutzen muss. Bevor ihr von den Begriffen verwirrt seit – ORM Texturen sind mehrere Texturen, die in eine Textur kombiniert wurden. Dies wird mit „grayscale Texturen“ gemacht (Roughness, Metallic, Ambient Occlusion) um performance zu sparen – und das mit Erfolg. So wird nicht nur der Speicherplatz, sondern auch euer Grafikspeicher entladen.
Beispiel: Ihr habt 3 Texturen die jeweils 2 MB groß sind. Je nach Optimierung könnt ihr statt 3x2mb durch ORM Texturen auch 1x2mb daraus machen. Somit schohnen diese ORM Texturen nicht nur euren Speicherplatz, sondern auch euren Grafikspeicher. Mehr dazu findest du in dem ORM Video Tutorial.
Alternative: Video Tutorial
Du bist eher der grafische Mensch oder hast keine Zeit zum lesen? Schau dir das Video Tutorial zu dem Thema an. Dieses beinhaltet einen temporären und permantenten Fix, wie auch eine Erklärung warum dieses Problem auftritt.
Texture Streaming Pool Over FIX & Erklärung – Unreal Engine Tutorial (German)
So könnt ihr in der Unreal Engine 4 den Texture Streaming Pool Over Hinweis beheben und ausblenden. Außerdem erkläre ich wieso diese Warnung auftritt und wie wir sie für immer beseitigen können. Ich nutze die Version 4.27.x, es spielt bei den Tutorials aber keine Rolle ob ihr bspw. die 4.14 oder höher verwendet.
Command:
r.Streaming.PoolSize 2000 (2000 = 2GB)