DH-106s Bastelecke

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


  • Langsam geht es voran, nachdem ich gefühlt so ziemlich jeden Fehler, den es gibt, ausprobiert habe :) Das Gerät steht schon mal vor der Halle, skaliert scheint es auch. Im Moment ist die Textur nacktes Metall, also muß es jetzt angestrichen werden, und die Animationen fehlen auch noch.


    Falls es jemandem hilft:


    - Wenn ein Flugzeug in Blender gut aussieht und auch schön auf der z=0-Ebene steht, aber im Spiel irgendwie komisch im Boden versinkt, dann probiert einmal, die Kamera aus eurem Blenderprojekt zu löschen. Bei mir hat erst dieser Schritt das Flugzeug im Spiel anständig positioniert.


    - Wenn ein Gerät irgendwie "umgekrempelt" aussieht: Edit mode - Mesh - Normals - Recalculate Outside hilft meistens, man kann die Normalen auch von Hand auswählen und nach Bedarf umdrehen.

  • Noch eine Frage bitte.
    Die Ruder drehen sich im Spiel anscheinend anfänglich um die vertikale Achse, was zu eher skurrilen Ergebnissen führt. Dagegen wirkt die in zahlreichen .mdls auftauchende Zeile


    transf = transf.rotZYXTransl(transf.degToRad(x,y ,z), vec3.new(a, b,c, d)),


    Verstehe ich das richtig, daß x, y, z die Position der Drehachse in Grad ist? Die vier anderen Variablen scheinen sich auf einen Vektor zu beziehen. Nach Inspektion von Bandions exzellenter Ju-52/3m komme ich zum Schluß, daß a, b, c die gewünschte Position des Ursprungs der individuellen Meshs sein muß, aber welcher Wert d ist, habe ich bisher noch nicht rausfinden können...


    Der Anstrich kommt auch langsam voran: die Fenster sind schon da, wo ich sie haben will, und sobald die einmal positioniert sind, sollte der Rest des Anstrichs auch hinzubekommen sein.

  • Der Anstrich ist fast fertig...


    Ich habe nur gerade eine weitere Tücke gefunden, die ich mir nicht erklären kann. Die beiden Höhenruder waren (logischerweise) spiegelgleich und haben dementsprechend auch spiegelgleiche Zeilen in der .mdl bekommen:


    {id = "vehicle/plane/Tu104A/Tu104A_lod_0_HR_links.msh",
    transf = transf.rotZYXTransl(transf.degToRad(180, -90, 16), vec3.new(-14.89377, 1.11667, 4.02085, 1.0)),
    type = "MESH",},
    {id = "vehicle/plane/Tu104A/Tu104A_lod_0_HR_rechts.msh",
    transf = transf.rotZYXTransl(transf.degToRad(0, 90, 16), vec3.new(-14.89377, -1.11667, 4.02085, 1.0)),
    type = "MESH",},


    Sie sind zwar in der richtigen Position am Flugzeug, aber entlang der Drehachse um etwas mehr als den Faktor 2 gestreckt... Im Anhang sind zwei Bilder: das linke Ruder habe ich im Blender so angepaßt, daß es komplett falsch aussieht, aber im Model Viewer und Spiel richtig sitzt; beim rechten ist es umgekehrt.


    Wieso ist das so? Mit dem letzten Faktor (1.0) in der transf=...-Zeile habe ich schon ein wenig rumgespielt, der hat aber anscheinend nichts mit Streckungen zu tun.


    Könnte mich jemand hier erleuchten? Wo habe ich hier den Fehler gemacht?

    2 Mal editiert, zuletzt von DH-106 ()

  • Sind die Scale Faktoren denn alle 1? Wenn nicht mach mal Apply -> Rotation & Scale. War glaub ich Strg A oder Shift A. Eventuell isses ja so simpel. Dann die Meshes neu exportieren, msh und msh.blob mit den neuen überschreiben und die Zeilen in der mdl mit den neu exportierten transfer matrizen ersetzen. Sonst nutzt alles neu machen ja nix.

  • Vielen Dank für die Antwort. Es scheint, daß tatsächlich die Skalierung das Problem ist: die ist weit weg von 1.0. "Apply" hat noch nicht ganz so funktioniert, wie ich es gerne gehabt hätte; dann wird wohl eine größere Revision fällig sein.


    Aber es scheint, daß es weniger Arbeit ist als ich befürchtete: wenn man über die Teile einfach mit drei Skalierungsfaktoren drüberfährt und sie dann wieder einbaut, dann funktioniert es gar nicht so schlecht... Höhenruder und Seitenruder sehen schon mal so aus wie sie gehören, der Rest kann auch nicht mehr lange dauern.

    Einmal editiert, zuletzt von DH-106 ()

  • Dieses Forum ist eine echte Quelle der Erleuchtung...


    Die Ruder und Klappen bewegen sich jetzt so, wie sie sollen. Für Spaltklappen funktioniert die Animation gar nicht so schlecht, wenn man die Drehachse/den Ursprungspunkt des Meshes irgendwo weiter nach unten setzt, dann fährt die Klappe auch ein Stück nach hinten, wenn sie ausgefahren wird. Wenn die Klappe eher nach hinten fahren soll, dann kommt der Drehpunkt weiter nach unten und der Winkel sollte kleiner sein; wenn die Klappe ausgeschlagen werden soll, dann kommt der Drehpunkt näher an das Teil und ein größerer Winkel ist sinnvoller.


    Es sieht übrigens recht lustig im Spiel aus, wenn man versehentlich den Rumpf als Querruder deklariert. Das hat mich einige Zeit gekostet, bis ich darauf gekommen bin, warum sich das Gerät im Flug immer wieder in seine Einzelteile auflöst ;)


    Und jetzt fehlt nur noch... "nur noch"... das Fahrwerk. Im Blender sieht es schon gar nicht so schlecht aus; die Beine fahren ein und aus und die Klappen gehen auch passend dazu auf und zu. Aber: wenn ich das Teil mit seinen Keyframes exportiere, dann kommen diese Keyframes nicht in der .msh an; das Spiel bzw. der Modelviewer finden die Animationen nicht und stürzen kommentarlos ab, sobald es Zeit zum Einfahren des Fahrwerks wäre.


    Deswegen eine (hoffentlich?) letzte Frage: ist das auch wieder eine Frage der korrekten Benennung, wenn der Exporter die Keyframes nicht von selbst mitschickt, oder muß man die von Hand in die .msh reinschreiben?

  • In der .mdl kommt die Anfrage nach den Animationen an, man muß nur die beiden Kopfzeilen "local vec3 = require "vec3"" und "local transf = require "transf"" manuell dazugeben.


    Das Problem ist aber, daß die Keyframes in den Meshes irgendwie untergehen. Der Block ist zwar in der Datei, aber die Keyframes, die dann in dem Block...


    {
    time = 0,
    rot = { 0,0,0},
    transl = {0,0,0}
    },


    ... stehen würden, werden nicht mit exportiert. Die müssen dann halt von Hand reingeschrieben werden, und die beiden oben erwähnten Kopfzeilen fehlen auch. Und das ist unabhängig davon, welcher Art die Keyframes sind (RotLoc geht ebensowenig wie RotLocScale).


    Das Bugrad ist nicht so kompliziert: das fährt einfach nach hinten ein, und dann gehen die Klappen darüber zu. Das funktioniert auch schon ganz ordentlich, nachdem ich das von Hand geschrieben habe.


    Die Bewegung des Hauptfahrwerks ist leider wesentlich komplexer: der Schlitten, an dem die 4 Räder hängen, wird erst senkrecht gedreht: das sind schon mal zwei Keyframes. Dann fährt das Fahrwerksbein mit allem, was daran hängt, nach hinten in die Gondel ein, so daß die Räder nachher wieder horizontal, aber um 180° um die Y-Achse gedreht, darin zum Liegen kommen. Daß davor die großen Türen aufgehen und danach alle Türen wieder geschlossen werden müssen, ist wohl eher trivial zu animieren und mit maximal 4 Keyframes zu erschlagen.


    Deswegen wäre eine Möglichkeit, die Keyframes aus dem Blender direkt zu exportieren, eine echte Erleichterung gewesen. Aber auch von Hand ist das irgendwie zu schaffen, auch wenn es sicher eine Weile dauern wird. Türen zu öffnen und zu schließen ist kein echtes Problem, aber mühsam wird es, wenn Teile voneinander abhängig sind, so wie z. B. Räder, die irgendwie stimmig zusammen mit ihren Fahrwerksbeinen fahren müssen. Der Modelviewer ist hier echt nützlich; dann muß man nicht nach jedem einzelnen Anpassungsversuch den großen TPF anstarten.


    Ich muß zugeben, daß ich die Komplexität dieses Flugzeuges ein wenig unterschätzt habe, als ich es mir als erstes Projekt vorgenommen habe... wahrscheinlich hätte ich mit etwas strukturell einfacherem ohne so viele bewegliche Teile anfangen sollen.


    In diesem Thread ist eine gute Erklärung dafür, was da wo in die Meshdateien reingehört.

    Einmal editiert, zuletzt von DH-106 ()

  • Ich danke euch allen herzlich für eure Hilfe. Ihr habt mir einige Irrwege abgekürzt und graue Haare erspart :)


    Die Animationen habe ich letztendlich ganz klassisch von Hand und bewaffnet mit Bleistift und Taschenrechner gebaut, nachdem ich hier im Forum einige Threads gelesen und einige Flugzeuge von Bandion seziert habe. Es dauert ein wenig, bis man dahinter kommt, aber dann ist es nicht ganz frei von Logik. Zum Animieren ist der ModelViewer nicht genug zu preisen; der erlaubt nämlich nicht nur das schnelle Erstellen von schicken Bildern, sondern zeigt auch sofort, ob eine Anpassung am Gerät das Spiel abschießt, funktioniert, oder sogar gut aussieht.


    Das Flugzeug ist jetzt so weit, daß ich denke, es einmal vorstellen zu können. Hier sollte es zum Herunterladen bereitstehen, sobald ein Moderator seinen Sanktus dazu gegeben hat.


    Das nächste Projekt sollte mit etwas weniger Haareraufen verbunden sein (hoffe ich zumindest). Wieder ein Flugzeug, man könnte es das logische, weniger glamouröse Gegenüber der Tupolew nennen. Ein Screenshot hängt mit dran ;)

  • Hallo

    Das nächste Projekt sollte mit etwas weniger Haareraufen verbunden sein (hoffe ich zumindest). Wieder ein Flugzeug, man könnte es das logische, weniger glamouröse Gegenüber der Tupolew nennen. Ein Screenshot hängt mit dran ;)

    Sehr schön geworden, deine Tu-104. Das Drahtgitter deines nächst geplanten Flugzeugs sieht mir stark nach der Il18 aus. Liege ich da richtig?


    Tschö, Auge

  • Die letzten paar Tage konnte ich mich hier aus irgendeinem Grund nicht einloggen... Aber dafür bin ich mit der Iljuschin schön vorangekommen. Ihr hattet recht, das zweite Flugzeug geht viel schneller und einfacher.


    Die Animationen sind bald fertig, dann geht es noch an den Feinschliff der Texturen, und dann sollte das Gerät fertig sein.


    EDIT:


    Das Flugzeug ist fertig und hochgeladen. Sobald es einem Moderator gefallen hat, sollte es am bekannten Ort sichtbar sein.

BlueBrixx