Trainz Developer Diary / Trainz Entwickler Tagebuch

  • Aus dem Trainz Developer Tagebuch:


    Multi-Fenster-Support


    Mac-User werden den Anblick dieser Fenster kennen. Anders als die lange im Content-Manager bestehende, durch Tabs steuerbare Oberfläche, ermöglicht die Mac-Version (vonT:ANE) das Arbeiten in mehreren Fenstern gleichzeitig. Es ist etwas einfacher aber gleichzeitig gibt es mehr Kontrolle über die Bereiche, die für "Power-User" wichtig sind. Wir werden dieses Paradigma auch für T:ANE für Windows adaptieren. Für die technisch Interessierten bedeutet das auch, dass wir von dem antiquierten MFC zu einem nativen C++ Framework umsteigen werden, was wiederum besser Performance und Userexperience bedeutet.


    may1.png


    Das oben stehende Bild zeigt einige verschiedene Strecken gleichzeitig geöffnet zusammen mit einigen Content-Manager-Fenstern. Jedes Fenster ist zur Laufzeit skalierbar und man kann von einem zum anderen Fenster springen.


    Der Portierungsprozess


    Das Überführen des Trainz-Asset-Loaders von der Jet- zur E2-Engine ist ein bisschen so wie eine komplette Brücke zu verschieben, Stein um Stein. Es sind tausende Dateien beteiligt und sie stehen alle zueinander auf nicht triviale Weise in Beziehung. Objekte können an sie gebundene Gleise haben. Gleise können an sie gebundene Objekte haben. Objekte und Gleise orientieren sich am Boden, aber die Bodenform kann durch Tunnel und Drehscheiben beeinflusst werden. Es ist für Menschen nicht wirklich möglich alle Beziehungen auf einmal zu verstehen, deshalb müssen wir es Stück für Stück machen.

    In der Praxis bedeutet das, dass wir eine Datei zur Zeit von TS12 nehmen, alle Verbindungen zu anderen Dateien, die noch nicht überführt wurden, heraus zu kürzen, und sie dann in T:ANE einzubinden. Das lässt Dinge zu Anfang kaputt erscheinen, aber je mehr Dateien übernommen werden, können wir die Teile wieder zusammenstecken. Es ist wie beim Puzzlen, je mehr Teile an der richtigen Stelle liegen, desto einfacher ist es neue Teile anzuordnen.


    Bei der Spieleentwicklung gibt es lange Perioden, in den nichts Interessantes passiert, aber dann gefolgt von einer Explosion an visuellen Ergebnissen. Während des Portierungsprozesses haben wir eine ganze Menge Zeit damit verbracht, für den Bildschirm weniger relevante Dinge zu bearbeiten, dann nur die Werkzeuge und jetzt endlich beginnen wir erkennbare Bilder zu sehen.


    Wir können bereits bestehende Objekte laden und mit einer freien, schweifenden Kamera durch die Welt navigieren. Das ermöglicht uns zu erkennen, welche Objektklassen korrekt funktionieren und welche nicht, und andere Limitierungen zu identifizieren. Bodentexturen überblenden sich jetzt korrekt, nachdem wir den Flickenteppich-Effekt, den wir während des letzten Monats benutzt haben, ausgebaut haben. Zusätzlich werden weitere Systeme regelmäßig portiert, überprüft und im Detail verbessert, sowie einige erste Optimierungen durchgeführt, um sicherzustellen, dass unsere internen Tests mit angemessener Geschwindigkeit laufen.
    may5.png


    Sie werden bemerken, dass noch keinerlei User-Interface oder Spielverhalten existiert. Die User-Interface-API wurde bereits entwickelt und wir sind grade dabei diese zu implementieren und alle kritischen Fehler, die sie vom Laufen abhalten, zu entfernen.


    Sie werden auch noch keine Anzeichen der neuen T:ANE-Features, wie Partikel-Effekt-Kollision oder das Physik-Werkzeug, sehen. Wie auch immer, das Design für diese Systeme wird mit den Pioneer Council und Trainz Enthusiast Group Mitgliedern verbessert und wir werden in den nächsten Wochen anfangen mehr Details über diese Features bekannt zu geben. Unser nächster Tagebucheintrag wird Sie über den neusten Stand der Physik-Werkzeuge informieren und wir werden eine Stand-Alone-Version der Werkzeuge an unsere Alpha-Tester veröffentlichen.


    Im Folgenden sind einige aktuelle Screenshots angehängt, die T:ANE und TS12 vergleichen. Während wir noch einige Schritte zu gehen haben, um aufzuschließen, ist dieser Zustand in diesem Stadium vollkommen wie erwartet. Wir werden bald den Punkt erreichen, wo T:ANE TS12 überholen- und hinter sich im Staub liegen lassen wird!


    may2.png


    Zur Zeit ist unser Textur-LOD (Level of Detail) noch nicht portiert. Um also zu vermeiden nur hochaufgelöste Tetxturen zu laden, erzwingen wir derzeit die Nutzung der gering aufgelösten Texturen (und keine Bumpmaps).


    may3.png


    In diesem Beispiel kann man erkennen, wie die Rasterlinien schnell zu einem flimmernden Chaos von gestrichelten Linien in T:ANE werden. Dies resultiert aus dem fehlenden Mip-Mapping, welches zur Zeit noch nicht implementiert ist.


    may4.png


    Dieser Vergleich zeigt die derzeitige flache Beleuchtung in T:ANE, was sich durch ein ausgewaschenes Aussehen ausdrückt. Echte Beleuchtung und Schatten sind die nächsten großen Engine-Systeme, die implementiert werden.


    Unsere Alpha-Tester werden in Kürze die Möglichkeit bekommen sich den Prozess anzuschauen, und es dauert nicht mehr lange, bis unsere Pre-Beta- und Beta-Tester in den Genuss von T:ANE kommen werden und es rigorosen Tests unterziehen können.

  • Danke Sachsenbahner,


    da freu ich mich schon auf die Pre-Bata Phase.


    Gruß Heiko

  • Ich bedanke mich auch für den Beitrag.
    Es stellt sich für mich nur eine Frage, wenn ich die Bilder sehe.
    Was ist mit der Gelände Gestalltung? Ich sehe immer noch dieses 10 Meter bzw. 5 Meter Raster, war da nicht die Rede von, das dieses geändert wird?
    Kann aber sein das ich da etwas überlesen habe und mein Englisch ist nun auch nicht das beste.
    Also nicht gleich wieder los wettern, es ist nur eine ganz höffliche Frage und vielleicht gibt es hier ja jemanden Der mehr Info dies bezüglich hat.
    Ansonsten freue ich mich wie sicher viele hier auf das T:ANE.


    Lg. Karl-Heinz

  • Zitat

    In der Praxis bedeutet das, dass wir eine Datei...


    Dieser Absatz ist bei dir 2x vorhanden.

  • Danke für die Hinweise, habe die Fehler Korrigiert. Der neue Editor hat anscheinend so seine Macken. Speziell beim Formatieren von Texten werden Änderungen z.T. nicht übernommen oder andere Dinge gehen kaputt…


    @Rettungsrentner: Ich kann mich nicht erinnern etwas über eine neues Raster gehört zu haben. In den Features war mal von neuen Tools und Geländeüberhängen (also Gelände mit negativem Steigungswinkel) die Rede, allerdings werden diese noch nicht im ersten Release implementiert sein.
    Allerdings klingt es in dem Artikel derzeit so, dass sie versuchen TS12 (fast vollständig) zu portieren und dann anfangen die Verbesserungen und Optimierungen vorzunehmen. Genau so könnte es auch mit dem Raster sein.


    Ich will an dieser Stelle aber keine Diskussion über die Sinnhaftigkeit des Übernehmens von Altlasten in ein neues System lostreten, kann mir aber auch gut vorstellen, dass einige Kompromisse eingegangen werden, um die Kompatibilität zu Strecken und Objekten aus TS12 zu gewährleisten (Stichwort Tunnel und Drehscheiben mit Digholes).


    Gruß
    Sachsenbahner

  • Neuer Monat, neuer Tagebucheintrag:


    Physik-Tuning und Testen


    Während die Engine-Entwickler die grundlegende Infrastruktur für TANE vorbereitet haben, haben unsere anderen Entwickler die neuen Game-Features entwickelt. Heute fokussieren wir uns auf die Physik-Simulation und das Engine-Bearbeitungs-Modul, Codename Engineer.


    Da das TANE-Interface noch nicht vollständig ist, wird das Engineer-Modul derzeit in einer TS12-basierten Codebasis gehostet. Dadurch, dass wir früh mit dieser Arbeit angefangen haben, haben wir mehr Zeit zum Testen und lässt uns Raum an den Physik-Fehlern zu arbeiten, die uns noch erwarten werden.


    Was ihr unten seht, ist der Einstieg in das Engineer-Modul. Es ist initial ähnlich dem Fahrer-Modul, aber enthält einige Extraanpassungen mehr und es wurden natürlich einige unnötige Funktionen deaktiviert oder entfernt. Derzeit wird alles mit Platzhaltertext gefüllt, sodass wir uns darauf konzentrieren können die Funktionalität so schnell wie möglich zu gewährleisten. Aufpolierte Grafiken stehen weiter hinten im Zeitplan und werden folgen, sobald die darunter liegenden technischen Funktionen fertiggestellt wurden.


    june1.png


    Das automatische Terrain- und Gleiserstellungstool (siehe oben) ist nahezu fertig und erlaubt Nutzern Testgleise mit bekannten Längen, Steigungen und Kurven zu erstellen. Über das "Train"-Tab (das Tab auf der rechten Seite) können Nutzer dann Lokomotiven und Wagen auf das Gleis setzen. Als nächstes können sie die Datenpunkte auf dem Graphen auswählen und sind dann bereit verschiedene Test zu durchlaufen. Abseits des Graphen-Monitors, werden im Fahrer-HUD zusätzliche Informationen während der Tests angezeigt, die auch in das .CSV Format exportiert werden können.


    june2.png


    Das Bild oben zeigt den Graphen mit verschiedenen Datenkurven für Zuggeschwindigkeit, Bremsdruck usw. Es werden noch eine Menge weitere Dinge folgen: "Zeitmanipulierungsegler" und die Engine-Bearbeitungs-Möglichkeit sind dioe wichtigsten davon, aber die Dinge entwicklen sich mit einer guten Geschwindigkeit.


    Zwei Wochen später…
    Praktisch sind ein ein paar Wochen vergangen seit unserem letzen Tagebucheintrag hier, also können wir jetzt den Zeitstrahl, Timer und die neuen Graphen-Variablen, sowie Kilometerzähler, Zug- und Bremskraft (pro Wagen/Lok und pro Zug) sind jetzt alle implementiert. Das Fahrer-HUD ist auch nahezu vollständig funktionsfähig wie auch die [/size]Engine-Bearbeitungs-Möglichkeit.


    june3.png


    Der Prozess bis zu diesem Stand beinhaltete einige Phasen: internes Design, interne Überprüfung, externe Überprüfung durch unsere TEG- und TPC-Gruppen, initiale Implementierung, internes testen, weitergehende Implementierung und Funktionserweiterung, mehr Testen, Fehlerbehebung und dann die Vorbereitung für das externe Release an unsere Alpha-Tester.


    Während wir immer noch mehr Variablen hinzufügen müssen, und wir derzeit den Basis-Modus für den "Engine-Datei-Bearbeitungsdialog" (ein "Zaubertippen"-Eintrag [vermutlich Autovervollständigung], um Spezifikationen aus realen Daten zu erstellen), hat dieser Prozess gezeigt, dass das Tool robust genug für externe Tests ist. Wir sind sehr zufrieden mit dem Fortschritt bei diesem System.


    Zuletzt - auch wenn wir verstehen, dass nicht jeder diese tools nutzen wird, sind wir uns sicher, dass die resultierenden Verbesserungen bei der Engine-Performance und unser darunter liegendes Physik-System jedem vor allem eine realistische Simulation zur Verfügung zu stellen.


    Um mehr über die inneren Funktionen dieses Systems zu erfahren, könnt ihr den WIP Wiki-Eintrag für Engineer hier lesen.


    Gruß
    Sachsenbahner

  • Ich dachte es passt hier gut rein, ein Info-Video der Entwickler


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.