Ein Zusammenschluss ist weder beabsichtigt noch mit geringem technischen Aufwand möglich: Unsere Strecke basiert auf einem anderen Streckentemplate als Pietmaniack 's Strecke, das heißt, es gibt verschiedene Startkoordinaten, die das Zusammenfügen sehr schwer machen.
Beiträge von RelaxXio
-
-
SeKu nur bei Objekttexturen, bei den Vorschaubildern nicht
-
alle Bilder die größer als 2 MB sind
Das Thumbnail von Salzburg-Schwarzach ist grad mal um die 70kB groß und bereitet trotzdem Probleme
-
Was passiert wenn ich die AP aus dem Ordner entferne, nachdem ich diese in den Ordner entpackt habe?
Dann sollte es gehen
Oder die AP ohne das Bild neu packen (AP-Dateien packen)
-
Gandalf der Weise Vorerst leider schon... Hab auf meiner Installation bereits alle Strecken abgeackert und "fehlerhafte" Thumbnails neu exportiert. Braucht eben auch ein Stündchen, da zuerst alle Strecken außer die von DTG aus dem Content/Routes-Ordner verschoben werden müssen und dann portionenweise wieder zurück. Und dazwischen immer testen, ob sich der TS nicht wieder aufhängt.
-
Ich habe testhalber ein Vorschaubild für eine Strecke mit verschiedenen Einstellungen aus GIMP exportiert. Der TS hat sich immer dann aufgehangen, wenn die Option "Interlacing (Adam7)" beim Export aktiviert war. Auflösung und Seitenverhältnisse sind ihm dagegen komplett egal.
-
-
Der Shaderbug im Straßenloft von vR ist eher auf einen schlecht programmierten Shader zurückzuführen. Da liegt die Textur ja wie immer unter "Textures" relativ zur XSec-Datei gesehen. Problem bei meiner Scenery-Straße ist halt, dass der TS dann überhaupt keine Textur mehr anzeigt, obwohl der Pfad zur vR-Textur richtig angegeben ist.
Man kann übrigens am Gehweg neben der Straße sehen, dass der LoftTexDiffTrans.fx-Shader im Gegensatz zum LoftTexDiffAlpha.fx-Shader, der bei der Straße verwendet wird, richtig funktioniert und nicht diese Anzeigefehler produziert.
-
Update: Inzwischen hat mein Problem eine Lösung gefunden, die allerdings eine Modifikation der Dateien von virtualRailroads benötigt. Wenn ich den Shader in der XSec-Datei vom betreffenden Loft von "LoftTexDiffAlpha.fx" auf "LoftTexDiffTrans.fx" ändere, ist das Problem auf meinem Rechner beseitigt. Das Aussehen der Straße an sich verändert sich dabei in keinster Weise.
Pietmaniack Ich habe extra die vR-Textur via RSBin-Tool in eine DDS-Datei exportiert und im Source-Verzeichnis unter genau demselben Pfad und Namen abgelegt. Dann in Blender diese DDS-Datei in der Textur eingetragen, und aus Blender exportiert, anschließend ebenfalls aus dem Blueprint-Editor mit der Option "Export This Only" die IGS exportiert.
-
Die Situation ist folgende: Auf meiner Strecke befindet sich eine Unterführung für eine Schnellstraße. Während die Straße auf einem Damm verläuft, wird das Gleis durch einen ca. 50m langen Tunnel unter der Straße geführt. Ich habe diesen Tunnel mitsamt etwas umgebenden Damm nun als Szenerieobjekt erstellt, am Gleis platziert und die Schnellstraße, ein Loft von virtualRailroads, über den Tunnel und den Damm verlegt. Hier zeigt sich das Problem: Der
LoftTexDiffTransLoftTexDiffAlpha-Shader von dieser Straße hat einen Bug, der darunterliegende Schatten sichtbar werden lässt.Da dass natürlich nicht schön aussieht, war meine Lösung, den Loft als .obj-Datei in Blender zu importieren und mit der Textur von virtualRailroads, die immer noch im vR-Ordner gespeichert ist, zu mappen und wieder als Szenerieobjekt zu exportieren. Problem: die Textur wird im TS nicht mehr angezeigt, stattdessen sehe ich nur "Missing Texture". Der Pfad in der GeoPcDx ist komplett richtig, die GeoPcDx und die BIN von meinem Objekt liegen natürlich im eigenen Provider. Nur zeigt die GeoPcDx auf die Textur von virtualRailroads in deren Provider. Ich hatte eigentlich vor, die Straße als Szenerieobjekt genau an der Stelle mit den Shader-Problemen zu platzieren und den richtigen Loft wegzulöschen. Damit die Straße nahtlos an den restlichen Loft anschließt, sollte sie dieselbe Textur haben wie der Loft von vR.
-
Auf der Tauernbahn Version 2 sind mir in der letzten Zeit leider Frame-Einbrüche bis hin zu kurzen Freezes im Sekundentakt aufgefallen. Im Logmate-Report wiederholen sich folgende Zeilen hunderte Male (pro Sekunde!):
Code2023.03.10 22:58:41.774 - [RunTimeError] - Mix level / orientation difficulties 2023.03.10 22:58:41.774 - [RunTimeError] - 2023.03.10 22:58:41.774 - [RunTimeError] - cLandscapeTextureManager::MixLevelAndOrientation() 2023.03.10 22:58:41.774 - [RunTimeError] - 2023.03.10 22:58:41.774 - [RunTimeError] - LandscapeTextureManager.cpp : 60
Bei einem Quick-Drive, Spieldauer ca. zwei Minuten, wächst der Logmate-Report auf stattliche 12 MB an. Bei längeren Spielen läuft es anfangs noch halbwegs okay und ohne große Performance-Einbrüche, später dann kommt es zu sekündlichen Freezes. Neuinstallation der Strecke habe ich bereits probiert. Dazu habe ich den Streckenordner sowie den RSSLO_Tauernbahn_V2-Ordner unter Assets/RSSLO-Routes gelöscht und anschließend den Installer der Strecke ausgeführt.
-
Es ist schon wieder ein paar Tage her, seit ich zuletzt etwas zu diesem Thema geschrieben habe, aber jetzt habe ich das blinkende Standalone-Warnlicht mit Point Light fertiggestellt.
Als erstes braucht man dazu ein klassisches Scenery-Objekt, in Blender erstellt. Dieses enthält einen "licht_day" Node, welches ein ausgeschaltetes Licht mit TexDiff-Shader darstellt, und einen "licht_night" Node mit dem eingeschalteten Licht (Tex) und einem runden Lichtschein (AddATex, ViewFacing). (Man kann auch noch einen 1x1x1m großen, unsichtbaren Würfel hinzufügen, um das Objekt im Editor leichter auswählbar zu machen.) Bei der statischen, nicht-blinkenden Versionen im TS des Lichts sorgen die Anhängsel "_day" und "_night" dafür, dass die jeweiligen Nodes zum richtigen Zeitpunkt angezeigt werden.
Als nächstes erstellt man im BlueprintEditor einen "Scriptable Scenery Blueprint", referenziert die IGS-Datei mit dem Licht als Geometry ID und fügt bei der Script Component das LUA-Skript ein, welches abwechselnd die Nodes licht_day und licht_night sichtbar macht.
Im nächsten Schritt erstellt man einen "Point Light Blueprint", weist ihm irgendeine IGS zu und wählt eine Farbe.
Im wiederum nächsten Schritt erstellt man einen normalen "Scenery Blueprint" und fügt ihm zwei Child-Objekte hinzu: Einmal den vorhin erstellten "Scriptable Scenery Blueprint" und das Point Light. Beim Scenery Blueprint wird auch der Name und die Kategorie eingestellt, unter der das Licht im TS später gefunden werden soll. Dann exportiert man den Scenery Blueprint mit allen dazugehörigen Objekten ("Export With References").
Auf das geskriptete Blinklicht haben die Anhängsel _day und _night allerdings keinen Einfluss, weshalb das Licht durchgehend blinken würde, ungeachtet der Tageszeit im Spiel. Das muss im Skript Pi mal Daumen mit voreingestellten Zeiten geregelt werden. (Es geht meines Wissens leider nicht besser.) Nodes werden im Skript mit "ActivateNode" aktiviert/deaktiviert, das Point Light mit "Activate". Mehr dazu siehe hier und hier.
Womit ich außerdem noch Probleme hatte, war die Regelung der An- und Aus-Zeiten im TS für verschiedene Tages- und Jahreszeiten. SysCall("GetSeason"); gibt nur, wenn es aus dem Update()-Loop aufgerufen wurde, korrekte Werte zurück. Da man aber pro Szenario nicht für jeden Frame die Jahreszeit erneut abfragen muss, lässt sich das mit einer Funktion regeln, die nur beim ersten Durchlauf ausgeführt wird:
Code
Alles anzeigenfunction Setup() end function Initialise() callTheFunction = true; Call("BeginUpdate"); end function Update() callOnce(); ... -- weiterer Code, wird für jeden Frame erneut ausgeführt ... end function callOnce() if (callTheFunction) then ... -- Code, der genau einmal am Start ausgeführt werden soll ... end callTheFunction = false; end
Das war bei mir schlussendlich der Weg, der zur Lösung geführt hat.
-
Andere Frage: Kann man in ein Scenery-Objekt ein blinkendes Spot-Light integrieren? Gibt es überhaupt eine Möglichkeit, Lua-Skript in ein Objekt einzubinden, das nicht mit dem Gleis verbunden ist (wie zB BÜs, Signale etc.)? Wofür ist der sog. "Scriptable Scenery Blueprint" dann überhaupt gut?
Edit: Ich habe es nun nach stundenlangem Herumprobieren und mithilfe von Kollegen aus dem Train Sim Modding-Discord geschafft, das Licht skriptgesteuert und mit Point Light blinken zu lassen.
-
Es ist natürlich praktisch, wenn man noch ein Mesh hat, worin man das Licht verstecken kann. Aber gibt es eine Möglichkeit, eine ViewerFacing-Plane (eine Fläche, die sich immer zum Spieler dreht, zB bei Vegetation oder Lichtern) ohne irgendein anderes zusätzliches Objekt, worin man die Plane verstecken kann, "unsichtbar" zu machen? Ein anderer Weg als über eine transparente Textur fällt mir da nicht mehr ein. Um 180° Rotieren (mit Backface Cullling) geht auch nicht, da die Fläche trotzdem immer zum Spieler gerichtet sein wird.
Anwendungsfall wäre ein Standalone-Licht, das blinken soll.
-
Wenn ich das Blinklicht durch eine animierte Textur darstellen will, dann muss ich extra zur normalen Textur noch eine "unsichtbare" Textur erstellen, was ich unnötig finde.Außerdem lässt sich dann das Verhältnis von der Ein-Zeit zur Aus-Zeit nicht mehr so einfach steuern, d.h. wenn das Licht unregelmäßig blinken soll. Das Licht ist dann immer gleich lang ein wie aus, es kann nicht länger ein als aus, oder umgekehrt, sein.
-
Node auf 0 skalieren funktioniert leider nicht, laut Briage-Manual nimmt das IA-Format nur Position und Rotationen. Ich habe auch bereits probiert, bei einem "Scriptable Scenery Blueprint" bei Script Component ein Testskript einzutragen, aber in der Logmate-Datei habe ich keine Ausgabe von dem Skript finden können. (Also keine Zeile mit "Hello World!") Eine andere Möglichkeit wären ja noch animierte Texturen, die abwechselnd die richtige Textur und eine transparente Textur darstellen, aber das ist halt nicht der sauberste Weg.
Testskript:
-
Guten Abend!
Wie kann ich eine Blink-Animation für einfache Scenery-Objekte erstellen? Das Objekt soll abwechselnd sichtbar und wieder unsichtbar gemacht werden. Ein Beispiel für eine Anwendung wäre ein Blinklicht, das einfach nur in regelmäßigen Abständen an und wieder aus gehen soll. Muss ich den Weg über eine Blender-Animation gehen oder gibt es auch einen Weg mit LUA-Script?
-
-
ice Dass es eine integrierte und deswegen minder leistungsstarke Grafik ist, ist ja das Eine. Das war mir schon von vornherein klar. Aber dass DX9 eben nicht mehr direkt unterstützt wird, ist das andere, und das habe ich aus den verschiedenen Testberichten im Internet auch nicht herausgelesen. Auch wenn eine Grafik nicht den Leistungsanforderungen des TS entspricht, so sollte der TS doch zumindest, wenn auch sehr langsam, darauf laufen. Und nicht einmal das tut er, leider.
Ich weiß nicht, bei wem ich mich eher bedanken sollte: DTG dafür, dass sie sich zurücklehnen und das Geld dafür abkassieren, dass die User es schon irgendwie schaffen werden, den uralten, bockigen TS zum Laufen zu bringen, oder Intel dafür, dass sie einige ältere, aber immer noch gute Spiele, und die dazugehörigen Communities unter den Tisch fallen lassen, da kommerziell nicht relevant...
-
Ergänzung: Ich habe herausgefunden, dass sich Szenarien mit dem ICE 3M von DTG auch mit dem "Dynamische"-Haken fahren lassen, allerdings nur mit Schattenqualität ganz links. Sobald ein KI-Zug entgegenkommt, der nicht kompatibel ist, hängt sich das Spiel auf.
bahnjan Eigentlich wird man ja dafür bestraft, dass man sich eine der neueren CPUs mit integrierter Grafik kauft, nur um festzustellen, dass das Spiel nicht darauf läuft.