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.
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.
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!
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).
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.
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.