Nie Transformers gesehen?
Nerviges Texturflackern bei Bahnhofsmods
Willkommen in der Transport Fever Community
Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.
Die Registrierung und Nutzung ist selbstverständlich kostenlos.
Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.
Das Team der Transport-Fever Community
-
-
TheSaint73 oh da gab es Dinos? Mist habe ich komplett übersehen
-
Blackgrisu heisst es zumindest...
-
Möglicherweise kann man mit Polygon Offset in der .mtl etwas bewirken?!
Danke für den Tipp! Das probiere ich mal aus und schaue, ob es was bringt.
-
Für die Overlays dann ggf auch den alphaTest/Threshold ein bisschen manipulieren, sodass es keinen Schattenwurf gibt, auch wenn es ein bisschen über dem eigentlichen Bahnsteig schwebt.
-
Ich gehe davon aus, dass ich die Antwort von Urban Games/Yoshi auf das Ticket hier posten darf (private Infos wurden natürlich entfernt), weil sie unter anderem für lennardo97 und andere Modder interessant sein dürfte. Letztendlich würde das auch erklären, warum in Vanilla zum Beispiel dynamisch erzeugte Bahnhofsnamen und Gleisnummern flackern können oder eben auch Werbetafeln auf Mauern - in den Fällen kann der Abstand wahrscheinlich nicht eingehalten werden, sonst würden die Objekte freischwebend in der Luft hängen. Interessant ist noch, warum das Problem nicht grundsätzlich auftaucht, sondern nur bei bestimmten Konfigurationen.
ZitatWie auf transportfever.net und von dir schon vermutet wurde, handelt es sich bei der Thematik grundsätzlich um ein Z-Fighting-Problem. Die Problematik stellt sich immer dann, wenn die beiden Flächen parallel liegen und einen geringen Abstand zueinander haben. Bei Bahnsteigen passiert das z.B. dann, wenn die Bahnsteigpflasterung und die weißen Markierungen auf der selben Höhe sind. Dann ist der Abstand von diesen Flächen zur Kamera identisch und es kann nicht deterministisch festgelegt werden, welche Fläche zuerst gerendert wird bzw. welche danach und dabei die erste dann verdeckt.
Je größer der Abstand zwischen zwei Flächen ist, desto eher tritt das Problem nicht auf, da dann auch in größeren Distanzen oder bei verringerter Geometriegenauigkeit immer noch unterschiedliche Entfernungswerte vorliegen. Da man Bodenmarkierungen nicht unbedingt schwebend machen kann, kann man mittels des polygonOffset in den materials ein wenig tricksen. Dabei wird quasi die Entfernungszahl virtuell ein bisschen modifiziert, ohne die tatsächliche Position in der 3D-Welt zu manipulieren.
Als Vorlage können da vermutlich die Bodenmarkierungen bei den Flughäfen dienen. Bei denen ist diese Eigenschaft folgendermaßen konfiguriert:
polygon_offset = {
factor = -4,
forceDepthWrite = false,
units = -4,
},
Ich gehe davon aus, dass das auch bei Bahnsteigmarkierungen hilft, getestet habe ich es jetzt aber nicht.
-
im Lexikon steht ein ähnlicher Hinweis von Werner K.
Da geht es um z fighting Strassen.
Wäre das für jede Mod einzeln oder gibts sowas wie Generaleinstellungen? Wo muss ich das umstellen?
Vg Karsten
-
Nekro, weil:
Bei Kartengrößen "größenwahnsinning" und auch "riesig" kann es an den Kartenenden zu Texturflackern kommen, insbesondere bei den rechteckigen Formaten, die besondern lang sind, also 1:5 oder 1:4
In der Kartenmitte hört das Flackern auf!
Lösung:
noch nicht in Sicht
-
Das ist übrigens auch einer der Gründe, weswegen noch grössere Kartengrössen nicht möglich sind. Je grösser die Dimensionen, desto kleiner die Präzision.
-
Aber wieso sind sogar die Texturen auf Fahrzeugen betroffen? Was haben die mit der Kartengröße am Hut?
-
Die Koordinaten im globalen Koordinatensystem sind da draussen trotzdem mit grossen Zahlen.
-
Und für die Berechnungen müssen sie in Floating-Zahlen gewandelt werden und die haben inherent ein Skalierungsproblem wenn Zahlen unterschiedlicher Dimension zusammen kommen. Das produziert immer wieder lustige Effekte in Software die dann bei Simulation mit phyikalischen Prozessen nicht zu erklären sind.
Hier stossen dann die Dimensionen der Karte mit der kleineren Dimension des Modells zusammen und dann ist mit einmal 1.0+1.0-20 == 1.