Tutorial zur Modellkonvertierung (MSTS > Rail Sim) Teil1

  • Tutorial by Astauder



    Dieses Tutorial besteht aus 2 Teilen.
    1. Allgemeinen Teil
    2. Teil 1


    Wir empfehlen allen die PDF-Version des Tutorials mit allen nötigen Dateien herunterzuladen, da diese übersichtlicher formatiert ist. Download hier


    Für dieses Tutorial werden noch weitere Dateien gebraucht, die ihr hier: downloaden könnt.http://rail-sim.de/railsim/tut…ts2rail/TUT_1_MSTS2RS.zip
    Allgemeiner Teil
    Vorwort :


    Aus persönlichem Interesse habe ich mir die Konvertierung einiger MSTS Objekte in den Rail
    Simulator vorgenommen. Die Modelle sind aus meinem Altbestand herausgesucht und für
    den Export mit 3D Canvas Pro in den Rail Simulator aufbereitet worden.
    Die Erfahrungen, die ich dabei gesammelt habe , sind in den Tutorien niedergeschrieben
    worden. Damit soll all denjenigen eine kleine Hilfe mitgegeben werden, die den gleichen Weg
    beschreiten wollen.
    Dies ist in keinem Fall ein Anfängertutorium und setzt die Kenntnisse zur Erstellung von
    Modellen für den MSTS bereits voraus.


    Die meisten Modelle waren schon für den MSTS mit dem Train Sim Modeller (TSM)
    produziert und damit vorhanden. Der TSM kann jedoch keine Modelle für den Rail Simulator
    exportieren und so war der Import der dst-Dateiformate nach 3D Canvas als 1. Schritt
    notwendig.
    Die Anpassungen und Änderungen der MSTS Dateien für den Export in den RS sind in
    diesem Tutorium beschrieben worden. Die Modellgeometrie wird von mir nur bezüglich der
    Zusätze für den RS kurz angesprochen. Hier gibt es meist keine Unterschiede zum MSTS,
    weder bautechnisch noch in der Organisation der Hierarchie.


    Auf Dinge, die bereits in den „DevDocs“ von KUJU Entertainment beschrieben wurden, gehe
    ich auch nicht weiter ein. Das Studium und die Kenntnis dieser Dokumente setze ich als
    Vorleistung voraus und gebe allenfalls ein paar Verweise. Außerdem gehe ich nicht auf
    Bautechnik der Modellgeometrie ein, da diese bereits ausführlich in den Canvas „Help-Files“
    beschrieben wird. Damit muß sich jeder selbst befassen.
    Es handelt sich um ein Fortsetzungstutorium , weitere Teile erscheinen nach Lust, Zeit und
    Bedarf.


    Bestandteile des Tutorium:


    Zur Unterstützung veröffentliche ich alle Source-Files , die im Tutorium beschrieben werden.


    1.) Die 3D Canvas Source Files *.3DC und die Originaltexturen (bmp/tga). Diese Files
    können von allen benutzt werden. Da die Freeware Version von Canvas diese Dateien
    einlesen und anzeigen kann. Wer jedoch keine lizenzierte Version von Canvas besitzt
    (Pro oder Trainworks) kann diese Dateien nur zu Lernzwecken analysieren.


    2.) Die (Source-Files) *IGS , die XML Konfigurationsdateien und die zur ACE
    konvertierten Texturen. Damit können auch Benutzer ohne Modellbau-Hobby die
    Modelle über den Export-Button vom Asset Editor in das Spiel einfügen.
    3.) Das Tutorial selbst ist in zwei Sprachen verfasst : Deutsch und Englisch


    4.) Die kommerzielle Nutzung der Sourcefiles auch nicht öffentlich ist grundsätzlich nicht
    gestattet. Private Nutzung und Veröffentlichungen als free download ist gestattet. Dies
    gilt auch für abgewandelte Varianten auf Basis meiner Modelle.


    [/color] Download der Source-Files hier (steht am Anfang des Beitrags bereits)
    Werkzeuge :
    Nachfolgend liste ich die von mir verwendeten Werkzeuge (Hilfsprogramme) einmal auf:


    1.) Grundvoraussetzung (kein zusätzliches Werkzeug) ist der installierte Railsimulator
    inklusive MK1 und MK2 Pack und der damit zur Verfügung stehende Asset Editor.


    2.) Ich glaube das kleine Grafikumwandlungsprogramm „ToAce“ ist schon mit dem MK2
    installiert. Es muß jedenfalls auch verfügbar sein. Man kann es als free download von
    „railsimulator.com“ bekommen. Für die DevTools und DevDocs gilt das Gleiche.


    3.) Ein weiteres Grafiktool sollte man sich von dieser Web site holen…
    http://www.mnwright.btinternet.co.uk/">http://www.mnwright.btinternet.co.uk/



    Es geht um die umrahmten Tools „Show“ und die zugehörigen DLLs.
    Was macht das Programm Show ? Wie schon der Name sagt, kann es verschiedendste
    Dateiformate anzeigen und sogar in andere Dateiformate konvertieren. Unter anderem
    kann auch das ACE-Format des RS gelesen und nach bmp oder tga konvertiert werden.

    4.) Für die Zwecke des Tutorials nicht zwingend erforderlich, jedoch zu empfehlen ist die
    Installation des Hilfsprogrammes RS Tools Pro. Die Bastler werden dieses Programm
    ohnehin schon installiert haben.


    5.) Die Web site von Amabilis (3D Canvas ) sollte zwar bekannt sein…
    http://amabilis.com/">http://amabilis.com/
    Wer jedoch keine lizenzierte Version hat und mit einem anderen 3D Modeller arbeitet,
    sollte sich zu Lernzwecken die Freeware Version holen und installieren, damit die
    Sourcefiles analysiert werden können. Dies ist aber keine Notwendigkeit. Mit der
    Freewareversion lässt sich ein Export in den RS ohnehin nicht durchführen.


    6.) Zuletzt benötigt man noch ein leistungsfähiges Grafikbearbeitungsprogramm. Hier
    gebe ich jedoch keine Empfehlung, da es eine Vielzahl von geeigneten Programmen
    gibt und jeder Bastler bestimmt schon einen eigenen Favoriten installiert hat. Auf
    Bearbeitung von Texturen gehe ich deswegen auch nicht im Detail ein, sondern gebe
    nur globale Hinweise.


    7.) Zu allerletzt noch ein Hinweis auf ein Freeware Programm zur Erzeugung von Bump
    Maps (normal maps) für den RS. http://www.xnormal.net/1.aspx">http://www.xnormal.net/1.aspx
    Dieses Programm kann natürlich wesentlich mehr und richtet sich in erster Linie an
    professionell arbeitende Designer, für die der Game Content nur eine lächerliche
    Spielerei ist. Die Funktion, die wir im Zusammenhang mit Bump Maps benötigen,
    werde ich im Tutorium an geeigneter Stelle beschreiben.


    Wer zu den Bastlern und interessierten „Content“ Erstellern gehört, sollte sich die Werkzeuge
    installieren. Die ausschließlich an den Objekten interessierten Benutzer können wie folgt
    verfahren:
    Im ZIP-File befinden dieses und die Tutorium Dokumente im PDF-Format. Man findet zwei
    komplette Unterverzeichnisse:


    A ) „Canvas Source“ Dies sind die nativen Canvas Files und die Basistexturen. Sie können
    auch mit der Freeware von Canvas geladen und analysiert werden. Dies ist nur für die
    Bastler gedacht.

    B ) „astauder“ Dies ist der komplette Pfad , wie er in das folgende Verzeichnis kopiert
    werden kann


    z.B. …\Programme\Rail Simulator\Source\



    Achtung: Den Laufwerksbuchstaben habe ich weggelassen. Er kann je nach individueller
    Installation die Buchstaben C, D, …. annehmen. Das Programmverzeichnis gilt nur für die
    deutsche Sprachversion von Windows. Das Verzeichnis „Rail Simulator“ ist unter Railworks
    anders benannt. Getestet wurde alles nur für RS1 und Windows XP.


    Nach kopieren des Verzeichnisses astauder kann der Asset Editor gestartet werden und
    man kann unter diesem Pfad eine beliebige xml Datei meiner Tutorial-Objekte aufrufen und
    laden. Ein Blick in die Rubrik „Child“ ist für die Bastler zu empfehlen um zu sehen wie das
    funktioniert. Dafür muß der Bereich aufgeklappt werden. Einfach auf den Minus-Button
    klicken.


    Zum Betrachten im Asset Viewer muß durch klicken auf Preview im Asset Editor eine
    temporäre Geometrie erzeugt werden. Dann zum Viewer Fenster wechseln , indem man das
    Editorfenster minimiert.
    Erachtet man das Objekt als brauchbar, kann es durch klicken auf Export im Asset Editor in
    den RS eingeführt werden. Danach kann das Objekt unter Aktivierung von …
    Provider : astauder
    Product : Addon
    … im world Editor gefunden und platziert werden.


    Die Objekte sind jedoch in erster Linie Tutorium Objekte und nicht unbedingt ernst gemeinte
    Scenery Objekte.
    Die eigentliche Beschreibung und Dokumentation der Objekte wird für Bastler in separaten
    Dokumenten behandelt, um die sich andere Benutzer nicht kümmern brauchen.


    Ich bitte darum, Fragen zum Tutorium nicht per Mail an mich zu stellen, sondern dies lieber
    in Foren zu diskutieren, da ich nur eingeschränkt über Zeit verfüge und die Diskussion und
    Beantwortung von Fragen auch anderen Benutzern zugänglich ist.
    <!-- e --><a href="mailto:arno.staudenmaier@gmx.net">arno.staudenmaier@gmx.net</a><!-- e -->
    erstellt 07/2009








    Teil 1 - Objektbezogen
    Vorwort:


    Die Objekte sind so konstruiert , das sie möglichst viele Eigenschaften und Möglichkeiten
    des Rail Simulators aufzeigen können. Dabei sind sie nicht immer mit günstiger Performance
    und sinnvollen Ausstattungen bezüglich des Einsatzzweckes erstellt worden. Deshalb sollte
    jeder genau prüfen, ob er diese Modelle im Rail Simulator verwenden möchte.
    Um eine möglichst identische Arbeitsumgebung in 3DCanvas zu erhalten, wie sie von mir
    verwendet wird, empfehle ich noch folgende Einstellungen vorzunehmen:
    Im Kopfzeilenmenü : Tools > Options …



    Bei Grid die Voreinstellung Size von 10 auf 20 ändern. Damit erhält man ein 20x20 m großes Schachbrettraster, an dem man die korrekten Größenverhältnisse schnell überprüfen kann. Die Grundeinstellung 10x10 m ist bei den vorliegenden Beispielen zu klein und der Mainpivotpunkt wurde von mir auf 10, 0, 10 gesetzt. Bones, Kamera, Light, Anim- Pfad deaktivieren, da sie erstmal nur die Übersicht stören. (Rote Umrandung). Das Schachbrettplateau auf „translucenc“ stellen. (Grüne Umrandung).
    Wer sich mit Canvas auskennt, kann natürlich seine Einstellungen beibehalten oder nach
    seiner Vorliebe wählen.


    A – Golf6
    Der Golf erklärt folgende Eigenschaften:
    Colorierung
    Schattenmodell
    Spezialshader : TrainSpecEnv.fx
    Nachtbeleuchtung : fx_night
    Lodeinstellungen
    Es gibt nur ein Sourcefile für 3D Canvas aber mehrere Varianten für den RS. Wie so etwas
    gemacht werden kann, wird in der Folge erklärt.
    Nach dem Laden des Files „Golf_6_4T.3DC“ sollte folgendes auf dem Bildschirm erscheinen:
    (Bild nächste Seite)
    Linke Seite die Hierarchie, sie muß noch aufgeklappt werden.
    Rechts das Perspektivfenster.



    Im Perspektivfenster findet man das Grundfahrzeug und die simple Geometrie der Lodstufe
    ab 150 m Sichtweite.


    Polycount:
    Modell LOD1 (bis 150m) : 702
    Modell LOD2 (bis 500m) : 115
    Schattengeometrie : 24
    Rest für groundlight, blob und lights : Summe 859 Polys



    Wenn man die „properties“ für Main (LOD1) aufruft, dann sieht man folgenden Fensterinhalt
    (Ausschnitt)
    In Zeile 1 ist der gescriptete Shader: TrainSpecEnv.fx angewendet worden. Er erzeugt
    einen Glanzeffekt entsprechend einem Metallic-Lack. Die Env Mask (schwarze Textur mit
    hellem, gelbem Punkt in der Mitte) ist hier nur ein Dummy. Diese Textur wird nicht in den RS
    eingeführt. Der RS nimmt seine eigene Maske , die etwa wie ein sich auf der Karosserie
    spiegelnder Himmel wirkt. Der Dummy muß aber im Slot sein, sonst funktioniert der Exporter
    nicht. ?? Die Env-Mask muß sich auch im texture-Verzeichnis (bei Source) befinden. Sie
    wird aber trotzdem nicht benutzt. Man kann auch eine komplett schwarze Maske benutzen,
    es würde im RS nicht anders aussehen, in 3D Canvas aber schon.
    Für diesen shader muß die Textur eine tga mit schwarzem Alpha Kanal sein. Der Alpha
    Kanal wird vom RS zur Darstellung des specular Effekts benötigt. Vorsichthalber habe ich
    bei TxAlpha = Translucency eingetragen. Ich bin mit nicht sicher ob dies notwendig ist, aber
    geschadet hat es auch nicht.
    Leider lässt sich der Shader nicht mit einer Colorierung kombinieren. Will man andersfarbige


    Fahrzeuge so muß die erste Zeile wie beim Passat geändert werden. (Siehe nächstes
    Objekt)
    Das geht natürlich nur , wenn die Karrosseriepolygone von den nicht zu färbenden
    Polygonen getrennt werden. Dies ist hier realisiert. Die Leuchten, Nummernschild, Grill und
    Räder sind separat und nicht in Zeile 1 enthalten. Diese Polygonflächen haben die Materialeigenschaft
    der Zeile 2. Die beleuchteten Teile der Leuchten sind hier komplett abgesplittet
    zum Part „lights“
    Die dritte Zeile lässt im Farbslot einen leicht gelblichen Farbton erkennen und hat im Ambient
    Slot den Wert 30. Der Ambient Wert kann zwischen 0 und 100 beliebig eingestellt werden
    und ist für nachts beleuchtete Polygone gedacht. Anders als im MSTS kann die Leuchtkraft
    hier stufenlos eingestellt werden. In diesem Fall ist die Materialeinstellung für das hintere
    Nummernschild mit 30% Leuchtkraft, während die Scheinwerfer und Rückstrahler mit 100%
    leuchten.
    Der Ambient Wert hat im MSTS keine Bedeutung und wird ignoriert. Die beleuchteten
    Polygone werden für den MSTS mit dem Wert 0 im Specular Slot eingestellt.
    In der Hirarchie befinden sich drei Gruppen mit der regulären Bezeichnung für die LODStufen
    des RS. Zwei dieser Gruppen liefern Besonderheiten des RS.
    1_0150_shadow_main : enthält die Schattengeometrie, in diesem Fall sehr simpel gebaut.
    Der Schatten ist gleichzeitig eine LOD-Stufe nach dem Verfahren der Ausblendung. Der
    Schatten verschwindet nach 150m Distanz. Der Schatten benutzt den dafür vorgesehenen
    Shader StencilShadow.fx . Weiteres dazu in den DevDocs und die „Properties“ des Shadow
    im Modell aufrufen und ansehen.
    1_0150_fx_night : enthält das Scheinwerferlicht auf dem Boden (groundlight) Durch die
    Verwendung dieses Gruppennamens, erkennt der Rail Sim, dass er diesen Lichtschein erst
    ab 18 Uhr Simulationszeit einschalten muß. Dies tut er auch. In den DevDocs ist dies
    ebenfalls erklärt. Hier wird ebenfalls ein spezieller Shader angewendet : AddATexDiff.
    Die Textur sieht aus wie ein Alpha Kanal und wird auch vom Shader so interpretiert. Die
    Transparenz erhöht sich zu den schwarzen Rändern immer mehr und ist bei rein schwarz
    praktisch Volltransparent. Dabei ist die Textur nur ein bmp. Die Funktionsweise wird im
    Zusammenhang mit der Tankstelle noch bildlich erklärt. Auch das Scheinwerferlicht ist eine
    Ausblend-LOD-Stufe und verschwindet nach 150m Distanz.
    2_0500_Main : Dahinter verbirgt sich nun die simple Geometrie der LOD-Stufe 2. Dies ist
    eine Austauschgeometrie. Das heißt, sie wird nach 150m die 1.LOD-Stufe komplett ersetzen
    und lässt das ganze Objekt nach 500m ganz verschwinden. Das kann im Asset Viewer
    dadurch getestet werden, dass man sich immer weiter vom Objekt entfernt und dabei das
    Objekt genau beobachtet. Die Umschaltung sollte fast unmerklich geschehen. Man kann die
    LOD- Umschaltung auch in Nahdistanz erzwingen, indem man den entsprechenden Slider
    nach rechts bewegt.
    Warum gibt es eigentlich keine Group : 1_0150_Main ?? Dies ist eine Eigenheit des
    Canvas RS Exporters. Schon für den MSTS war es vorgeschrieben, eine Main Group und
    ein Main Part zu haben. Daran erkennt der Exporter welches Part (Main) den Mainpivotpunkt
    des gesamten Objektes liefert. Dieser Pivotpunkt wird automatisch auch den anderen LOD
    Parts gleichen Namens (Main) zugeordnet. Dies ist auch der Grund, warum das LOD2
    Modell neben dem Hauptmodell steht. Normalerweise ein Unsinn und das gilt auch nur für
    3D Canvas.
    Wenn man sich das Bild mit den „Properties“ für Main (oben) noch einmal genau ansieht,
    entdeckt man rechts unten einen Bereich Custom mit zwei Feldern MSTS und Rail Sim.
    Im Rail Sim Feld ist der Group Name nach den Regeln des Rail Sims eingetragen. Dieses
    Feld überschreibt beim Exportieren den group Namen : Main
    Aber nur bei Verwendung des IGS Exporters new !
    Zum Schluß noch eine Erklärung des Parts blob. Dies ist ursprüglich gedacht als fester
    Bodenschatten unter einem Fahrzeug und dabei hatte man zuerst an Lokomotiven und
    Waggons gedacht. Mir hatte er aber gut gefallen und so habe ich ihn auch dem Golf


    spendiert. Der angewendete Shader nennt sich SubtractATexDiff und ist das Gegenstück
    zum Shader AddATexDiff. Den blob habe ich übrigends nicht selbst kreiert, sondern man
    findet ihn als dds im Pfad …Rail Simulator\dev\...
    Die Textur für „groundlight“ habe ich ebenfalls aus den KUJU Beispielen des Pfades
    …Rail Simulator\Source\developer\...
    Die lights brauche ich jetzt nicht mehr zu erklären, die sind einfach mit Ambient=100 nachts
    zum Leuchten gebracht worden. Man könnte diese Polygone mit dem Mainteil verschmelzen
    und diesen Polygonen trotzdem ein anderes Material zuweisen. Das ist durchaus möglich.


    B - PassatB5
    Der Passat erklärt folgende Eigenschaften:
    Colorierung (…der Karrosserie)
    Lodeinstellungen

    Der Passat ist sehr ähnlich wie der Golf aufgebaut. Die meisten Sachen wurden bereits am
    Golf erklärt. Hier wird nur das erklärt, wo es Unterschiede gibt.



    Polycount:
    Modell LOD1 (bis 150m) : 733
    Kleinteile in LOD1 (75m) : 208
    Modell LOD2 (bis 500m) : 80
    Schattengeometrie : 68
    Rest für groundlight, blob und lights : Summe 1089 Polys



    Zeile 1 ist auch beim Passat für die Karrosseriepolygone zuständig. Doch statt des
    TrainSpecEnv.fx shaders ist hier der Farbslot mit gelb belegt. Mit der zweiten Zeile wurden
    die Fenster blaugrün eingefärbt. Die dritte Zeile ist für die nicht zu färbenden Bauteile
    gedacht , deshalb ist der Farbslot weiß (keine Färbung=neutral)


    Mit der Änderung der Farbe der ersten Zeile lassen sich verschiedenste Farbvarianten auf
    Basis der Grundtextur erstellen.
    1_0075_smalparts : In der Hierarchie sieht man gleich an erster Stelle diese Gruppe. Hier
    sind die Dachreling und die Rückspiegel als Kleinteile zusammengefasst und werden
    innerhalb LOD1 schon bei 75m ausgeblendet. Dies hatten wir beim Golf nicht, da er keine
    Dachreling besitzt und die Rückspiegel sich für diesen Zweck nicht lohnen.
    Achtung : Der Rückspiegel hat ebenfalls die Karrosseriefarbe und der Farbslot muß auch
    hier die gleiche Farbe wie das Mainteil bekommen.
    Der Rest ist wie beim Golf und braucht nicht weiter erklärt zu werden.
    C – Tankstelle
    Bei diesem Modell handelt es sich um ein einfaches Landschafts-/Streckenmodell. Die
    meisten Eigenschaften sind schon oben erklärt.
    Es werden die Shader : TexDiff , SubtractATexDiff und StencilShadow.fx , sowie
    Colorierung genutzt. Die Colorierung ist im MSTS nicht zulässig bzw. wird beim Export
    komplett ignoriert. Die Shadow group müsste für den MSTS auch komplett gelöscht werden.
    Nach dem Öffnen der Source Datei in Canvas sieht das Objekt nicht so aus wie auf dem
    Bild. Die Polygonfläche „snow“ , sowie einige Schatten-Geometrien müssen erst „unvisible“
    sein. Mit der Maus das entsprechende Part mit der rechten Maustaste anklicken und im
    aufgehenden Menü den Haken von „visible“ entfernen.
    [img width=800 height=530]http://rail-sim.de/railsim/tut…il/konvertrailtomsts7.jpg[/img]


    Mit der Änderung der Farbe der ersten Zeile lassen sich verschiedenste Farbvarianten auf
    Basis der Grundtextur erstellen.
    1_0075_smalparts : In der Hierarchie sieht man gleich an erster Stelle diese Gruppe. Hier
    sind die Dachreling und die Rückspiegel als Kleinteile zusammengefasst und werden
    innerhalb LOD1 schon bei 75m ausgeblendet. Dies hatten wir beim Golf nicht, da er keine
    Dachreling besitzt und die Rückspiegel sich für diesen Zweck nicht lohnen.
    Achtung : Der Rückspiegel hat ebenfalls die Karrosseriefarbe und der Farbslot muß auch
    hier die gleiche Farbe wie das Mainteil bekommen.
    Der Rest ist wie beim Golf und braucht nicht weiter erklärt zu werden.



    Es geht im 2.Beitrag weiter ....... siehe weiter unten....

  • C – Tankstelle


    Bei diesem Modell handelt es sich um ein einfaches Landschafts-/Streckenmodell. Die
    meisten Eigenschaften sind schon oben erklärt.
    Es werden die Shader : TexDiff , SubtractATexDiff und StencilShadow.fx , sowie
    Colorierung genutzt. Die Colorierung ist im MSTS nicht zulässig bzw. wird beim Export
    komplett ignoriert. Die Shadow group müsste für den MSTS auch komplett gelöscht werden.
    Nach dem Öffnen der Source Datei in Canvas sieht das Objekt nicht so aus wie auf dem
    Bild. Die Polygonfläche „snow“ , sowie einige Schatten-Geometrien müssen erst „unvisible“
    sein. Mit der Maus das entsprechende Part mit der rechten Maustaste anklicken und im
    aufgehenden Menü den Haken von „visible“ entfernen.
    Drei Dinge will ich noch erwähnen:


    1.) Das Schattenmodell (Shadow) – Die DevDocs des RS geben als Empfehlung ca. 10%
    des Polycounts des Gesamtmodells an. Dies ist bei einigen Objekten schwer
    einzuhalten je mehr Ansprüche man an den Schatten stellt. Der Schatten auf dem Bild
    oben ist aber nicht der RS Schatten, sondern der Canvas Renderschatten auf Basis
    des MS DirectX Grafiksystems. Aus welchem Grunde sich KUJU für ein
    geometriebasiertes Schattensystem entschieden hat, das bleibt ihr Geheimnis.
    Vielleicht deswegen, weil der DirectX Schatten auch seine Schwächen hat. Man
    beachte nur den transparenten Schatten des Tankdaches und die Überlagerung des
    Stützen- und Dachträgerschattens.


    2.) Die Verwendung von Schläuchen bei diesem Objekt habe ich zum Ausgleich mit
    einem Ausblend-LOD bei 60m Distanz ausgeglichen. Es ist ursprünglich nur ein
    Übungsobjekt gewesen und war nicht zur Veröffentlichung gedacht.


    3.) Der Shader SubtractATexDiff wurde oben schon einmal erwähnt. Hier noch einmal
    eine Bildskizze zur Erklärung des Unterschieds zu BlendATexDiff. Bildbeispiel der
    „snow“-Textur:
    [img width=800 height=330]http://rail-sim.de/railsim/tut…il/konvertrailtomsts8.jpg[/img]


    Es handelt sich hier um die Textur für „snow“ als Wintertextur. Links die Textur mit Namen :
    „Tankstelle_Schnee“ und rechts die Winterversion „Tankstelle_Schnee_wi“. Texturiert wird
    mit der Normaltextur und die ist Volltransparent (also bei default nicht sichtbar), die
    Wintertextur wird nur bei Winter-szenarien aktiviert. Im Asset Viewer kann man die
    Jahreszeiten durchschalten und die Veränderungen bei Winter betrachten.
    Man könnte es sich auch einfacher machen und einfach die Betonstein-Kacheltextur als
    weiße Variante für den Winter dazugeben. Das würde die Performance entlasten, aber nicht
    so gut aussehen. Weitere Infos siehe DevDocs.
    Die Normaltextur ist Volltransparent aber als Translucency im TxAlpha Feld von Canvas
    deklariert. Die Wintertextur wird dann nur in Winterszenarien gegen die Normaltextur
    ausgetauscht. (Der RS erkennt das an der Namenendung: _wi)


    Polycount : Gesamt 1304 , davon Schattengeometrie 144 , Kleinteile 710, Hauptteile 308


    Setzt man nur die Hauptteile zur Schattengeometrie ins Verhältnis, so habe ich die
    Empfehlung von KUJU deutlich überschritten. Den RS Schatten bitte im Asset Editor
    ansehen, in Canvas kann man sich nur die Geometrie ansehen.
    Interessant ist bei diesem Modell die Blueprint XML-Datei. Im Asset Viewer erscheint es
    nämlich mit drei Autos bestückt. Hier wurden die Autos als „Childs“ eingetragen. Bitte mal
    einen Blick auf die Einträge des Blueprints werfen. Nicht die Geometrie, sondern die
    Blueprints der Autos werden verlinkt. Dadurch sind die Fahrzeuge auch separat nutzbar.


    Wer das selbst mal bei einem eigenen Modell einrichten will, der muß wie folgt vorgehen:
    Zuerst den Eintrag einsetzen, dann Preview aufrufen und zum Asset Viewer gehen. Das
    Child-Objekt erscheint jetzt genau über dem Mainpivotpunkt des Hauptobjektes. Da dies mit
    Sicherheit die falsche Position ist, einfach auf das Child-Objekt klicken und mit dem
    erscheinenden Gizmo die Position nach eigenem Wunsch verändern. Danach wieder zum
    Blueprint wechseln und sofort abspeichern. Erst jetzt bleibt die Position dauerhaft festgelegt.
    Für weitere Child-Objekte wiederholt man diesen Vorgang.



    D – Bushaltestelle
    Bei diesem einfachen Objekt geht es hauptsächlich um Scheibentransparenzen der Priorität
    2. Das heißt der Blick durch zwei Scheiben auf den Hintergrund muß funktionieren und zwar
    aus jedem möglichen Blickwinkel. Zusätzlich soll am Trapezblechdach Bump mapping
    dokumentiert werden, auch wenn es bei einem solchen Objekt eigentlich unsinnig ist. Es ist
    auch nur als Tutorial gedacht.



    Das Objekt besitzt nur eine Haupttextur einschl. des translucenten Scheibenbereiches als
    tga und sonst ist nur die Trapezblechtextur und die Betonsteintextur (gleiche wie bei der
    Tankstelle) wegen der Kachelung (tiling) separat erstellt. Hinzu kommt noch das „nightlight“
    als separte Textur. (1_0300-fx_night). Über die Funktion ….fx_night sprachen wir schon
    weiter oben.
    Alle Scheiben sind in der Gruppe 1_0180_glasses zusammengefasst und müssen auch
    nach dem Export in einer Gruppe liegen. Dies kann nur durch den „RS igs exporter new“
    realisiert werden. Der „Train Simulator wizzard“ funktioniert hier nicht.
    Für alle Gläser gilt :
    Shader: BlendATexDiff ; TxAlpha = Translucency ; Alpha priority = 2
    Polycount : Gesamt 242 , davon Schattengeometrie 84 (ca. 30 % statt 10 %)
    Das Verhältnis ist auch wieder denkbar schlecht. Das Dumme ist nur, je mehr man macht,
    umso besser siehts aus und die Performance geht in den Keller. Natürlich nicht bei diesem
    einen Modell, sondern wenn 1000 andere Modellbauer genauso handeln.
    Das Trapezblechdach ist das „Main“ Teil und es verwendet den Shader : TrainBump.fx



    Die erste Zeile ist für die Ränder und die Unterseite. Die zweite Zeile ist für das Trapezblech
    mit der Normal Map im Bump Slot. Dazu ist die Frage zu klären, wie erzeugt man eine
    Normal Map ?. Also habe ich die Trapezblechstruktur nach dem Prinzip der „Heightmap“.
    Dieses Prinzip will ich hier nicht erklären, da es schon in Wikipedia und an anderen Stellen
    im Web gut erklärt ist. Bitte selbst sachkundig machen.
    Height maps sind grundsätzlich Graustufenbilder. Das passt hier auch wunderbar, da
    Trapezbleche meist in dieser Farbe lackiert werden.


    Grundprinzip : Die höher liegenden Teile sind heller , die tieferliegenden Teile sind dunkler.
    Die obere Ebene ist also hellgrau, die Schrägen mittelgrau und die untere Ebene (Sicke)
    dunkelgrau. Alles mit meiner bescheidenen Kunst selbst gemalt und mit ein paar
    Nietenköpfen garniert. Das ganze Werk sieht zwar noch bescheiden aus, aber mit einer
    Normal Map kann man was draus machen.
    Jetzt kommt das Programm : xNormal (x86 release) Version 3.16.8.629 (meine Version)
    zum Einsatz, welches ich bereits im allgemeinen Tutoriumteil als Werkzeug empfohlen habe.
    Ich setze also mal voraus, dass es ordnungsgemäß installiert wurde.
    Man startet das Programm und man sieht den Startbildschirm.
    Auf der rechten Seite etwa in der Mitte den Button mit „Tools“ anklicken.
    Ganz links oben im Bild „Tools available“ findet man : Hight map to normal map
    Dort klicken und ein Doppelfenster erscheint: Links Height map und rechts Normal map
    Links bei Height map mit der rechten Maustaste hineinklicken.
    Mit „browse height map“ sucht man jetzt die als height map gemalte Trapezblech Textur (er
    braucht nur eine bmp, die height map von mir ist eine tga) und laden.
    Jetzt im rechten Feld auch wieder mit der rechten Maustaste klicken und „Generate“
    ausführen. Wenn die Bump map erscheint noch einmal mit der Maustaste rechts, dann kann
    die Bump map gespeichert werden.
    Die Bump map wird in den Bump slot von Canvas geladen (siehe Bild oben untere Zeile)
    Zuletzt gebe ich noch einen Tip, die gemalte height map Textur mit Bump mapping
    aufzupolieren. Mit GIMP 2.6.6 (freeware) funktioniert das so :


    [img width=800 height=329]http://rail-sim.de/railsim/tut…l/konvertrailtomsts11.jpg[/img]


    Nach dem Laden des Bildes die dargestellte Auswahl treffen.
    Es gibt jede Menge Einstellvarianten. Einfach mal etwas herumspielen und selbst
    ausprobieren. Auf diese Weise kann man bestimmte Texturen für den MSTS erheblich
    aufpeppen.
    Auch für den RS sollte man bei einfachen Objekten darüber nachdenken, ob Bump mapping
    wirklich lohnt. Im RS sieht es kaum anders aus als die Ergebnistextur aus GIMP (siehe
    nächste Seite)
    Man könnte diese Textur als Alternative mit shader TexDiff anstatt TrainBump.fx einsetzen.
    In GIMP benötigt man jedoch nicht unbedingt eine Graustufentextur. Die macht sich GIMP
    beim Bump map Prozess selber alles zusammenstellt.


    [img width=800 height=438]http://rail-sim.de/railsim/tut…l/konvertrailtomsts12.jpg[/img]


    Den Bus, den man im Asset Viewer sieht, habe ich zusätzlich spendiert, damit es nicht so
    kahl aussieht. Das ist wieder ein Child Eintrag. Wir sprachen schon darüber. Der Bus hat
    natürlich auch eine eigene XML-Datei und kann auch separat eingesetzt werden.
    Ich hoffe, das ich einigen hier ein paar Tips geben konnte und würde mich freuen, wenn es
    mehr Modeller geben würde, die ihren Content vom MSTS zum RS konvertieren wollen.
    Der RS ist bezogen auf das Grafiksystem und die Modelliermöglichkeiten auf jeden Fall der
    anspruchsvollere Simulator. Man möge dies nutzen und nicht nur 1:1 umsetzen.



    Arno Staudenmaier
    erstellt 07/2009

  • Zitat

    Aus welchem Grunde sich KUJU für ein
    geometriebasiertes Schattensystem entschieden hat, das bleibt ihr Geheimnis.


    Das hab ich mich mittlerweile schon fast hundertmal gefragt Astauder ;D


    Aber großes Lob an dich, für 3D Canvas Benutzer sind diese Tutorials sehr hilfreich.


    grüße


    Rail-X