Zweigleisig Geschrieben 18. Januar 2015 Geschrieben 18. Januar 2015 Hallo Gemeinde,ich habe ein paar Fragen bzgl. der in den LoD verwendeten Texturen und der Benenneung von Objekten.Für die Texturen habe ich mich für das .dds Format entschieden. Nach einigem Ausprobieren (nvdxt oder Gimp) exportiere ich nun transparente Texturen mit dem Gimp-Plugin als dxt5 mit mipmaps und nicht transparente Texturen als dxt1.Ist es sinnvoll für kleinere LoD auch kleinere Texturen zu erstellen? Ist es sinnvoll mipmaps zu erstellen? Die LoD befinden sich alle innerhalb EINER Blender-Datei. Das klappt beim Export soweit auch ganz gut allerdings habe ich das Gefühl, daß ich bestimmte Objekte vor dem Export umbennen muss, da sie sonst nicht wie gewünscht funktionieren. So kann ich z.B. Rad0_Lod_0 nicht benutzen, aber Rad0 funktioniert. Da sich alle LoD innerhalb einer Datei befinden, müssen die Objekte eindeutige Namen haben und momentan benenne ich sie vor jedem Export um.Gibt es die Möglichkeit alle Präfixe so zu verwenden, daß es dem Parser egal ist was dahinter steht? Grüße,Zweigl
Neo Geschrieben 18. Januar 2015 Geschrieben 18. Januar 2015 Hallo Zweigl,die Entscheidung für DXT 1 oder DXT 5 ist gut. Ob du Mipmaps selber generierst ist dir überlassen, spätestens das Studio erzeugt immer welche. Erzeugst du selber die Mipmaps, hast du mehr Kontrolle darüber, da das Studio nur ein einfaches Herunterskalieren für die Generierung verwendet. Kleinere Texturen für kleinere LoD zu verwenden ist nicht sinnvoll, da dies nur mehr Speicher verbraucht. Das Studio wählt automatisch die perfekte Mipmap aus, passend zur Anzeigegröße des Modells.Mehrere LoD-Stufen in einer Blender-Datei (bzw. einer X-Datei) unterstützt das Studio nicht, du musst daher deine LoD-Stufen in getrennten Dateien abspeichern.Viele Grüße,Neo
Zweigleisig Geschrieben 18. Januar 2015 Autor Geschrieben 18. Januar 2015 Hallo Neo,vielen Dank für die schnelle Antwort. DXT5 ist leider notwendig, da ich keine Fensterrahmen im Wagenkasten habe und die Bereiche innerhalb der Textur halbtransparent gemacht habe, um auf die _LS-Objekte schauen zu können. Mit DXT1 geht dann leider die Transparenz verloren (egal, ob mit nvdxt oder Gimp). Dadurch ist die eine Textur 5,5 MB groß und verursacht eine Warnung. Stört mich jetzt aber nicht weiter.^^Mit der Benennung kann ich mir helfen, indem ich nach dem Export in der .x Datei "suchen & ersetzen" drüberlaufen lasse, Grüße,Zweigl
Neo Geschrieben 18. Januar 2015 Geschrieben 18. Januar 2015 Hallo Zweigl,5,5 MB für eine DXT 5 Textur klingt schon nach sehr viel. In welcher Größe hast du sie angelegt? Erfahrungsgemäß bringen Texturen > 1024 Pixel keinen nennenswerten Mehrwert mehr.Viele Grüße,Neo
Zweigleisig Geschrieben 18. Januar 2015 Autor Geschrieben 18. Januar 2015 Hallo Neo,da sich die Beschriftung mit auf der Textur befindet ist sie 2048x2048. Die halbe Größe habe ich noch nicht ausprobiert, werde ich aber mal machen. Alternativ könnte ich auch eine HighDetail/LowDetail Variante machen, was mein ursprünglicher Plan war, allerdings in der Datenbank zu "Dubletten" führen würde.Hat MBS eigentlich einen Shader für Normalmaps bzw. andere Environment Maps? Grüße,Zweigl
Neo Geschrieben 18. Januar 2015 Geschrieben 18. Januar 2015 Hallo Zweigl,eine Möglichkeit wäre es auch, die Beschriftung auf einer extra Textur zu verwenden. Das erhöht zwar die Anzahl an Unterobjekten, aber wenn man dadurch mehrere MB an Texturspeicher einsparen kann, ist das auch ein Vorteil. Kommt immer auf die Situation drauf an.Einen Shader für Normal- und Environmentmaps gibt es noch nicht, steht aber bereits auf meiner ToDo-Liste.Viele Grüße,Neo
Zweigleisig Geschrieben 19. Januar 2015 Autor Geschrieben 19. Januar 2015 Hallo Neo,die Idee mit der ausgelagerten Beschriftung habe ich einmal ausprobiert. Die ursprüngliche Textur ist nun nur noch 1024x1024 und knapp über 1MB. Die Aufkleber habe ich auf eine 512x256 große Textur gebracht die 130K groß ist. Insgesamt eine gute Ersparnis bei geringem Qualitätsverlust der Kasten-Textur, aber ein großer Qualitätsgewinn bei den Anschriften.Wenn ich allerdings rauszoome sieht es so aus:Die Aufkleber werden komplett unleserlich und gelb gekrisselt.Die Faces/Planes liegen nicht direkt auf den dahinter befindlichen, sondern sind 1mm von diesen entfernt. Weiter weg sieht nicht gut aus, wenn man von der Seite guckt, dichter ran habe ich nicht ausprobiert. Grüße,Zweigl
Neo Geschrieben 19. Januar 2015 Geschrieben 19. Januar 2015 Hallo Zweigl,das könnte viele Gründe haben, vielleicht ist es ein Mipmap-Problem, vielleicht ein Transparenzproblem. Wenn du willst, schick mir das Modell einfach mal per Mail inkl. der Texturen zu, dann kann ich das schnell erkennen.Viele Grüße,Neo
Zweigleisig Geschrieben 19. Januar 2015 Autor Geschrieben 19. Januar 2015 Hallo Neo,zumindest in der Anschriften-Textur habe ich mit und ohne Mipmaps ausprobiert.Ich schicke dir gleich mal das Modell.^^ Grüße,Zweigl
Neo Geschrieben 19. Januar 2015 Geschrieben 19. Januar 2015 Hallo Zweigl,du hast deine Anschriften in einer transparenten DXT5-Textur gespeichert. Das ist aus mehreren Gründen problematisch. DXT 5 sollte nur dann verwendet werden, wenn das Objekt Halbtransparenzen verwendet, wie z.B. Glasscheiben. Eine rein digitale Transparenz (ja/nein) sollte als DXT 1 gespeichert werden. Sobald eine DXT 5-Textur zum Einsatz kommt, muss das Studio auf interne Optimierungen verzichten.Abgesehen davon sind Transparenzen für Schriften nicht geeignet, denn bei der Berechnung der Mipmaps verschmelzen sie mit dem Hintergrund. Und wenn dieser transparent ist, kommt es zu solchen Erscheinungen. Mein Tipp: Nimm eine nicht-transparente Textur und füge den Wagonhintergrund hinter die Schriften ein. Das wird ein deutlich besseres Ergebnis bringen.Viele Grüße,Neo
Zweigleisig Geschrieben 19. Januar 2015 Autor Geschrieben 19. Januar 2015 Hallo Neo,schade, daß ausgerechnet Schriften nicht für Transparenz geeignet sind.Da der Wagenkasten schmutzig ist, wirken die Aufkleber wie Fremdkörper, da es mir nahezu unmöglich ist den Hintergrund der Anschrift so aussehen zu lassen wie der Hintergrund über dem die Anschriftentextur liegt. Die Anschriften sind auf der Anschriftentextur komplett anders skaliert als auf der ursprüngichen Textur. Ich denke ich werde den bisherigen Weg über eine Textur gehen, wenn die Anschriften aufgrund des Hintergrundes eh nicht anders skaliert werden können. Grüße,Zweigl
BahnLand Geschrieben 19. Januar 2015 Geschrieben 19. Januar 2015 Hallo Zweigl,dass die Hintergrundfarbe von Beschriftungsfeldern von der Farbe des restlichen Fahrzeugs abweicht, kommt auch bei der großen Eisenbahn vor. Dann fahren die Fahrzeuge halt mit einem "Fleckerlteppich" herum. Ist also teilweise sogar vorbildtreu .Viele GrüßeBahnLand
Zweigleisig Geschrieben 20. Januar 2015 Autor Geschrieben 20. Januar 2015 Hallo BahnLand,solche Wagen kenne ich und ich finde es sehr schön, wenn etwas nicht fabrikneu aussieht. Allerdings wäre es mir lieber, solche Effekte beabsichtigt einer Textur hinzuzufügen.^^Die Idee, die Anschriften auf eine extra Textur zu bringen (Microsoft nennt das Ganze "Decaling"), ist auch sehr sinnvoll, da die Grundtextur deutlich kleiner ausfallen kann, wenn die "Aufkleber" ausgelagert werden. Solche Decals müssen aber in Verbindung mit der Grundtextur anders gerendert werden, damit die Decals nicht auf der Grundtextur flimmern.Da ich aber 3 Wagen bzw. Texturen habe, (B, AB, BD) hätten sie alle an denselben Stellen den Patchwork-Look, was ich nicht so hübsch finde. Da ich die Anschriften, wie auch den Rest der Details, relativ zeitaufwändig gegoogelt und als Vektorgrafiken erstellt habe, möchte ich sie natürlich auch nicht als kleine Striche zu Gesicht bekommen. Deswegen die 2048x2048 Textur. Beim Runterskalieren auf 1024x1024 geht halt vieles verloren. Ist jetzt aber auch nicht weiter schlimm, eine Mittelklasse GraKa mit 2GB RAM wuppt das locker und ich werde die Umbauwagen dann wohl nur lokal nutzen. Grüße,Zweigl
BahnLand Geschrieben 20. Januar 2015 Geschrieben 20. Januar 2015 Hallo Zweigl,Zitat... und ich werde die Umbauwagen dann wohl nur lokal nutzen.es wäre sehr schade, wenn Du die schönen Umbau-4-Achser nicht der MBS-Gemeinde zur Verfügung stellen würdest. Diese könnte man nämlich auch sehr schön mit den Umbau-3-Achserh von Seehund kombinieren.Viele GrüßeBahnLand
Neo Geschrieben 20. Januar 2015 Geschrieben 20. Januar 2015 Hallo Zweigl,wenn du es schaffst, dass die 2048er Textur statt DXT 5 nur mit DXT 1 gespeichert wird, dann hast du auch schon wieder viel erreicht und dann ist die Größe auch in Ordnung. So wie ich das gesehen habe, benötigst du für die Wagonhülle keine Halbtransparenzen.Viele Grüße,Neo
Zweigleisig Geschrieben 20. Januar 2015 Autor Geschrieben 20. Januar 2015 Danke für eure Vorschläge. Genug Motivation, um doch noch eine Lösung - mit Kompromiss - zu finden.^^Auf die Halbtransparenz der Fenster zu verzichten ist kein großes Problem. Mit DXT1 & Volltransparenz kann ich trotzdem die Löcher für die Rücklichter in die Textur bohren. Auch wäre eine Beleuchtung des Innenraumes mit volltransparenten Fenstern möglich, dann sind die "Scheiben" allerdings in der Farbe der _LS-Planes im Innenraum. Umgekehrt texturiert hätten die _LS-Planes den Farbton der Fenster, weswegen es nachts dann in Fensterfarbe leuchten würde. Ich denke mal, daß es nur beleuchtete Rücklichter geben wird.Sobald keine DXT5 Textur mit im Spiel ist, klappt es mit den volltransparenten DXT1 Decals um einiges besser. So hat das Flimmern deutlich abgenommen und auch wenn die Schriften teilweise etwas krakelig (liegt wohl an DXT1) aussehen, empfinde ich ein leichtes Flimmern während der Fahrt und beim Bewegen der Kamera nun nicht mehr als störend. Alle Texturen zusammen wiegen jetzt knapp 800K und LoD 0 hat etwas mehr als 10K Polys. Grüße,Zweigl
Neo Geschrieben 20. Januar 2015 Geschrieben 20. Januar 2015 Hallo Zweigl,das klingt auf jeden Fall so, als wärst du auf dem richtigen Weg.Viele Grüße,Neo
Zweigleisig Geschrieben 23. Januar 2015 Autor Geschrieben 23. Januar 2015 Hello again,mit DXT1 (Alpha=1) sieht der Wagen nun so aus.Weil das Modell keine modellierten Fenster hat, schaut man jetzt durch die volltransparenten Stellen der Textur in das Innere des Wagen. Auch wenn durch die kleinere Textur und die Kompression die Fensterrahmen nicht so optimal aussehen, finde ich es ganz akzeptabel, da dadurch deutlich weniger Polys anfallen.Irgendwie hätte ich aber trotzdem gern die Fensterscheiben in halbtransparent.So wie ich es verstanden habe verstehen sich DXT5 (halbtransparent) und DXT1 (volltransparent) aber nicht miteinander. Selbst wenn ich die Fenster modelliere, wäre es dann ja immer noch ein Gemisch aus DXT5 & DXT1. Mir fehlt da ein bisschen das Verständnis, darum frage ich mal so rum.Wie kann ich ein Modell mit halbtransparenten Texturen (z.B. Fensterscheiben), volltransparenten Texturen (z.B. Aufkleber) und nicht transparenten Texturen (z.B. Wagenkasten) zusammenstellen? Grüße,Zweigl
Neo Geschrieben 23. Januar 2015 Geschrieben 23. Januar 2015 Hallo Zweigl,du kannst DXT-1 beliebig mit DXT-5 mischen, da gibt es keine Probleme. Du musst dann aber eben die Bereiche auf deinem Wagon klar voneinander trennen. Im Moment hast du alles auf einer Textur, was performance-technisch das Optimum ist. Willst du nun aber halbtransparente Scheiben, ohne die anderen Bereiche zu beeinflussen, dann musst du die Scheiben als extra Mesh modellieren und eine DXT-5 Textur zuweisen. Wie immer gilt es hier einen Kompromiss zwischen Qualität und Performance zu finden.Viele Grüße,Neo
Zweigleisig Geschrieben 23. Januar 2015 Autor Geschrieben 23. Januar 2015 Hallo Neo,vielen Dank für die prompte Antwort. Ich werde es gleich mal umsetzen und eine Scheibe als Plane mit einer DXT5 Textur zwischen Kasten und Innenraum platzieren. Grüße,Zweigl
Zweigleisig Geschrieben 23. Januar 2015 Autor Geschrieben 23. Januar 2015 Langsam bekomme ich ein Gefühl für die Sache und möchte mich für eure Geduld bedanken. Mit nur 2 Polys und einer 144 Byte großen DXT5 Kachel mehr, sieht es nun schon deutlicher nach einem Fenster aus.^^ Insgesamt werden es dann 20 Polys, aber das ist es wert. Grüße,Zweigl
Neo Geschrieben 23. Januar 2015 Geschrieben 23. Januar 2015 Hallo Zweigl,prima, wichtig ist jetzt nur noch zu beachten, dass du die Scheiben in deinem Programm zu einem einzelnen Mesh verknüpfst, da das Studio sonst jede Scheibe einzeln rendern muss (siehe Unterobjekte). Am besten du fasst die Scheiben jeder Wagonseite zu einem Mesh zusammen, sodass am Ende nur 2 getrennte Unterobjekte entstehen.Viele Grüße,Neo
Zweigleisig Geschrieben 23. Januar 2015 Autor Geschrieben 23. Januar 2015 Hallo Neo,ist es sinnvoll, die Meshes nach Materialien zu trennen? Bisher habe ich alles nach Funktion vereinigt._Scale_1_100 Rad0 Rad1 Kasten Der Maßstab ist ein Empty. Rad0 und Rad1 habe ich zu je einem Mesh zusammengefasst. Der Rest ist im Kasten als ein Mesh gelandet, der aber mehrere Materialien hat. Sieht so auch OK aus. Trotzdem hat das Modell nach dem Import ins MBS, 12 Unterobjekte. Insgesamt gibt es 9 Materialien/Texturen + Rad0 + Rad1 + Kasten = 12, nehme ich an.So würde ich die Scheiben als einen Mesh joinen, bzw. mit dem Kasten joinen, damit es nur ein Objekt ist. Wenn das Studio allerdings alles nach Materialien aufdröselt, kann ich mir das ja ersparen. Bisher habe ich angenommen, daß ich mich an bestimmte Vorgaben halten muss und deswegen alles gejoint. Wenn ich mich allerdings gar nicht darum kümmern muss ist das viel angenehmer. Grüße,Zweigl
Neo Geschrieben 23. Januar 2015 Geschrieben 23. Januar 2015 Hallo Zweigl,bereits der Blender-Exporter trennt die Meshes nach Materialien auf. Selber joinen musst du normale Meshes nicht, denn das Studio fasst automatisch alle Meshes, die das gleiche Material verwenden und nicht speziell animiert werden, zu einem Mesh zusammen. Lediglich transparente Meshes spielen hier eine Sonderrolle, denn diese kann das Studio nicht selber zusammenfassen, da es diese beim Rendern je nach Blickwinkel unterschiedlich sortieren muss. Daher ist hier der Modellbauer gefragt, der alle auf einer Ebene liegende, transparente, das gleiche Material verwendete Meshes zu einem Mesh zusammenfügt.Aber es schadet nie einen Blick auf die Unterobjekte zu werfen und sich immer bewusst zu sein, woher diese kommen und ob es Einsparpotential gibt, z.B. durch Verwendung von weniger Materialien etc...Viele Grüße,Neo
Zweigleisig Geschrieben 23. Januar 2015 Autor Geschrieben 23. Januar 2015 Hallo Neo,ja einsparen geht noch. Eine einfarbige Kachel kann ich noch verlagern. Die anderen Kacheln sind mit 64x64 Pixeln jeweils 2878 Byte groß. Die Drehgestelle, Anschriften, der Kasten und das Innenleben haben jeweils eigene Texturen. Das neue Fenster nicht zu vergessen. Insgesamt sind es ca. 880K in 8 Texturen und 12K im Lod0 an Polys. Wenn die Kacheln in dieser Größe allerdings spürbare Performance Einbußen verursachen sollten, könnte ich mir nochmal Gedanken machen. Edit:Nach erneutem Aufteilen der UV-Koordinaten reichen letztendlich doch 2 Texturen aus. 1024x1024, DXT1 und 4x4, DXT5 zusammen 682k. Grüße,Zweigl
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden