Großer Texturspeicher bei meinen Bussen

Das Forum befindet sich im reduzierten Betrieb. Die Addon- und Supportforen bleiben weiterhin verfügbar.
Bitte beachte, dass OMSI nicht mehr weiterentwickelt wird. Ein Teil der Entwickler widmet sich inzwischen der Entwicklung eines neuen Simulators. Weitere Informationen zum LOTUS-Simulator findest Du hier.
  • Hallo,

    ich hab derzeit das Problem das meine busse (C2 und Vdl), im Vergleich zu anderen Bussen, extrem viel Texturspeicher (C2 mit 4k texturen 1800mb---> trotz der runterregulierung auf 1k texturen immernoch 900mb),(VDL 1000mb) benötigen. Wenn man das bspw. mit dem Facelift vergleicht, braucht dieser nur ca. 300mb.

    Kann mir da einer Tipp geben?

    Danke im voraus.

    Mfg

    Mx200

  • Welches File Format verwendest du und wie viele Texturen benötigt z.B. den Innenraum? Hast du da alles auf eine Textur geklatscht oder mehrere unterschiedliche Texturen festgelegt?


    Kann das selbe Verhalten bei jedem Fahrzeug hervorrufen, wenn ich mehrer unterschiedliche Texturen festlege, die alle auf 4096 x 4096 gebaked sind und das File Format .dds verwenden.

  • Gerne, also PNG würde ich unterlassen. PNG neigt dazu sehr schnell zu schwarzen Texturen zu führen. Dazu benötigt es teilweise noch nicht mal einen vollen Texturspeicher. Ich hatte das früher des öfteren mit meinen Fahrzeugen. Bin dann von PNG und TGA zu DDS gewechselt.


    (Als DDS Einstellungen einfach nach DXT5 konvertieren, entweder mit oder ohne Alphakanal).


    150 Texturen die dauerhaft benutzt werden oder unterschiedlicher Natur zum Einsatz kommen? Also ich vermute jetzt nicht das ein Fahrzeug 150 Texturen benutzt, soweit ich vernommen habe bietest du ja immer ganze Pakete an. Ist nicht viel aber auch nicht wenig.


    - Wenn du Innenraum Texturen hast, solltest du versuchen so viel wie möglich auf eine Textur zu bekommen. Kann dir da gerne mal ein Beispiel zukommen lassen.

    Du kannst da ruhig kleinere Elemente auch auch mit einer kleineren UV-Map ausstatten.


    Ich bin mir gerade nur nicht sicher ob OMSI alle Texturen aus einem Ordner lädt oder nur die aktuell benötigten. Ich meine es sind nur die aktuell benötigten, kann mich da aber auch täuschen.


    Ich würde aber auf jeden Fall erstmal damit anfangen, von png auf DDS zu wechseln. TGA muss nicht unbedingt sein aber PNG sollte weg.

  • Ich hab mal ein Test durchgeführt:


    Eine Datei: 4096x4096 Pixel groß

    Jeweils nur ein weißer Hintergrund.


    TGA verbraucht mit 48 MB den größten Speicherplatz. Gefolgt von DDS mit 16 MB und dann JPG mit 1,06 MB und PNG mit ein paar 60 KB.


    Mit DDS hast du kaum qualitativen Verlust zu TGA. TGA ist demnach faktisch dafür verantwortlich, das du am meisten Texturspeicher verbrauchst.


    Ist natürlich doof in der aktuellen Situation, aber ich würde mal die TGA Dateien nach DDS konvertieren und schauen. Ich glaub OMSI müsste das auch so gebacken bekommen ohne das du das Material in Blender neu zu ordnest.

  • Danke für den Test.

    Hab jetzt mal alle tga texturen rausgnommen.

    Ist zwar jetzt "nurnoch" 600mb aber trotzdem noch ziemlich viel im vergleich zum facelift (und die dds sind ja noch nicht drinn xD)

  • Ich glaube den Facelift darfst du da nicht so als Referenz nehmen, die Texturen sind teilweise sehr niedrig aufgelöst und haben allgemein eine niedrige Qualität. Ist so eine Mixtour aus BMP, JPG und TGA.


    Ich bin der Meinung das man ruhig ein wenig mehr Texturspeicher benutzen darf. Soll ja am Ende nicht nur ein schönes Modell sein, sondern auch schöne Texturen haben. :D

  • Ja für mich ist das auch kein problem. Ich hab auch mit 1700mb kein problem das iwas weiss wird oder so. Aber andere können deswegen nichtmal den Bus spawnen. Und leider geht ein wechsel auf dds ohne das in allen modellen zu ändern nicht.

  • Echt nicht? WTF, ich meine das es funktioniert hat oder hatte. Funktioniert es nicht, dass du im Model und in der Model Datei die .tga Datei angibst und im Textur Ordner die DDS drin steht? Bei Chrizzly's NG313 (an dem ich gerade arbeite) geht das wohl so (es steht .tga im Model und in der Model Datei - im Textur Ordner sind nur .dds).


    Ansonsten wünsche ich dir jetzt schon viel Spaß, wenn du das ändern willst :D

  • Ok. Funktioniert doch nach Neustart. xD

    Naja hab jetzt alle tga zu dds gemacht und komme jetzt immerhin nichtmehr über 1000mb (im Vergleich vorher bis zu 1900mb).

    Ist zwar immernoch nicht wenig, aber wenn nich noch jmd nh weitere Idee hat muss das so bleiben xD

  • also DDS hat im Vergleich zu TGA doch einige nachteile - vorallem bei kleineren Texturgrößen führt das schnell zu Artefakten.
    Soweit ich weiß liegen Texturen immer im unkomprimierten Format im Grafikspeicher. es macht also Grundsätzlich keinen Unterschied, ob man eine 4k jpg-Datei nutzt oder eine 4k dds Textur. Der Vorteil von DDS ist, dass das Format quasi "nativ" von DirectX verstanden wird. Der Vorteil von anderen Formaten ist der geringere Speicherbedarf auf der Platte.
    Wir nähern uns ganz einfach einem Limit in OMSI. der Payware O305G hat, iirc, eine 1k Textur für den kompletten Gelenkbus - heute hat man oft schon 4k pro Wagenteil und das zieht sich durch alle Texturen durch. "schöner", "schärfer", "realistischer" geht halt irgendwann nicht mehr - dafür stehen in OMSI nicht genug Ressoucen zur Verfügung.
    Hinzu kommt auch, dass sich die Texturgröße quadratisch zum Speicherbedarf verhält. Verdopple ich die Kantenlänge , vervierfache ich den benötigten Grafikspeicher.

    Grundsätzlich sollte kein Texturplatz verschwendet werden. Habe ich beispielsweise 2 verschiedene Sitztypen, die entweder- oder angezeigt werden, sollten diese auf eine eigene Textur, damit der andere Sitz, der aktuell nicht angezeigt wird, nicht den vorhandenen Texturplatz verschwendet. Alles auf so wenige Texturen wie möglich zu setzen macht nur dann sinn, wenn diese Objekte dauerhaft angezeigt werden.
    Einzige Lösung hier ist: Texturgröße reduzieren, und wenn möglich um ein vielfaches, auch wenn es nichtmehr so gut aussieht.

  • oh, und noch ein kleiner Nachtrag: als Kompressionsformat würde ich generell DXT1 verwenden. DXT5 und 3 speichern zusätzlich den Alphakanal , welcher häufig gar nicht benötigt wird und nur bei Transparenzen oder als Maskentextur verwendung findet. Das reduziert die Dateigröße um bis zu 50%.