Damit keiner was falsch versteht:
Ich will , dass Ihr hier Fragen stellt !
Aber stellt die Fragen erst dann, wenn ich den entsprechenden Bereich abgedeckt habe.
".....Nils Burgers. Was besseres hat Argon Prime einfach nicht!"
Werbung ende.
2b. Positionieren und Rotieren der Bauteile
Wems aufgefallen ist: Die Teile sind ja alle noch an derselben Stelle positioniert. Das ändern wir jetzt.
Zuvor werfen wir noch einen Blick auf einen der Parts ( ich nehme hier wieder den Rumpf) :
P 2; B 21;
{ 2;
0; 0; 0; 0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
Die
orangemarkierten Teile geben an, wo das Bauteil in Bezug auf den Koordinatenursprung (der durch Body 940 repräsentiert wird ) positioniert wird.
Um also ein Bauteil an die richtige Stelle zu verfrachten, muss ich also diese Werte ändern.
Und das geht so:
0; Ändere ich diesen Wert, bewegt sich das Bauteil nach rechts ( + ) oder nach links (-).
0; Ändere ich diesen Wert, bewegt sich das Bauteil nach oben ( + ) oder nach unten (-).
0; Ändere ich diesen Wert, bewegt sich das Bauteil nach vorne ( + ) oder nach hinten (-).
Nochmal etwas anders zusammengefasst:
P 2; B 21;
{ 2;
rechts/links; oben/unten; vor/zurück; 0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
Machen wir ein Beispiel: Ich will die Rotationssektion des M0 am Rumpf positionieren. Das blöde Ding steht in der Ausgangslage aber zu weit vorne.
Also muss ich es nach
hinten verschieben.
Um die Sache abzukürzen, hab ich das bereits getestet und den richtigen Wert ermittelt. Der Eintrag für das Rotationsteil sieht also so aus:
P 3; B 181; /rotationsteil
{ 2; 0; 0;
-137000; 0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
So dass ziehen wir jetzt bei allen Bauteilen durch die es nötig haben (also dem Rotationsteil und den Türmen.
Aber was ist das?
Die Türme passen irgendwie nicht, weil sie alle auf der Seite liegen.
Das kann man nur auf eine Art ändern: wir
rotieren die Teile !
-----------------------------------------------------------------------------------
--------------- R o t a t i o n ---------------------------------------------------
-----------------------------------------------------------------------------------
Werfen wir wieder einen Blick auf einen Part-Eintrag:
P 4; B 257; /turm1-seitlich-vorne-links
{ 2; 35000; 0; 700000;
0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
Die
Grünen Werte sind die Rotationswerte. Die ganze Geschichte ist mitunter kompliziert, aber wir kriegen das schon hin.
Und zwar so:
0.000000; Dieser Wert steht für den Winkel, mit dem rotiert wird. 360° entsprechen dabei dem Wert 1.00 , 180° dem Wert 0.50, 90° dem Wert 0.25 usw.
Dieser Winkel gilt für alle drei Rotationsachsen gleichzeitig. Die Nachfolgenden Werte geben dann an, wie der Winkel auf der jeweiligen Achse angewendet werden soll: 1.00 = 100%, 0.5= 50% usw.
Bei den Achsen handelt es sich um die
0.000000; Neigeachse ( rauf / runter )
0.000000; Drehachse (links / rechts)
0.000000; Rollachse ( uhrzeiger/gegenuhrzeiger)
(Hinweis für User aus dem Freistaat Bayern: Hier ist der Uhrzeigersinn einer normalen Uhr gemeint ( 3 rechts, 9 links ), NICHT der einer bayrischen Uhr

)
So das ganze nochmal am Part:
P 4; B 257; /turm1-seitlich-vorne-links
{ 2; 35000; 0; 700000;
Winkel; Neigen; Drehen; Rollen; -1; -1; } // 0
Anstatt nochmal ein Beispiel zu bringen, poste ich besser ein Bild, da man das dort besser erkennen kann, denke ich:
http://de.pg.photos.yahoo.com/ph/fs2ear ... m=ef5d.jpg
Ganz knifflig wird es, wenn ich ein Objekt um mehrere Achsen drehen will.
Das ist zum Beispiel bei den Türmen der Fall, die oben und unten am Xenon M0 sein sollen. Auf dem Bild sieht man schön, das der Turm ohne drehung flach und quer liegt. Er soll im Falle des oberen Turmes aber aufrecht stehen und in Flugrichtung zeigen.
Ich weiß nicht wieso, aber hier muss der Winkel für alle drei Achsen gleichzeitig zugewiesen werden, also das objekt um alle drei Achsen gedreht werden. (Wenn mans nur bei zwei Achsen macht, kommt was komisches raus.)
Der Eintrag sieht dann also so aus:
P 8; B 257; /turm5-oben
{ 2; 0; 65000; 145000;
0.250000; 1.000000; 1.000000; -1.000000; -1; -1; } // 0
Der Turm wird auf allen drei Achsen um
90° gedreht und zwar für
Neige- und DrehAchse rechtsrum und für Rollachse linksrum.
Das ganze muss man jetzt für alle 6 Türme durchziehen (wobei nur 2 Türme mehrachsig gedreht werden müssen *uff* )
das ergebnis der Rotation sollte dann so aussehen ( ich hab hier nur die Türme)
http://de.pg.photos.yahoo.com/ph/fs2ear ... pg&.src=ph
Unsere scene sieht also nach dem ganzen verschieben so aus:
/===============================================================
/ 3D Scene Mein Xenon M0
/===============================================================
VER: 3;
P 0; B -1; /Kamera
{ 8; 6000; 3200; -3400; 0; 0; 2200; 0.000000; -1; -1; } // 0
P 1; B 940; /Referenzbody
{ 2; 0; 0; 0; 0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
P 2; B 21; / Xenon M0 Rumpf
{ 2; 0; 0; 0; 0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
P 3; B 181; /Xenon M0 Rotationsteil
{ 2; 0; 0; -137000;0.000000; 0.000000; 0.000000; 0.000000; -1; -1; } // 0
P 4; B 257; /Xenon M0 Turm1-seitlich-vorne-links
{ 2; 35000; 0; 700000; 0.250000; 0.000000; -1.000000; 0.000000; -1; -1; } // 0
P 5; B 257; /Xenon M0 Turm2-seitlich-vorne-rechts
{ 2; -35000; 0; 700000; 0.250000; 0.000000; 1.000000; 0.000000; -1; -1; } // 0
P 6; B 257; /Xenon M0 Turm3-seitlich-mitte-links
{ 2; 65000; 0; 145000; 0.250000; 0.000000; -1.000000; 0.000000; -1; -1; } // 0
P 7; B 257; /Xenon M0 Turm4-seitlich-mitte-rechts
{ 2; -65000; 0; 145000; 0.250000; 0.000000; 1.000000; 0.000000; -1; -1; } // 0
P 8; B 257; /Xenon M0 Turm5-oben
{ 2; 0; 65000; 145000; 0.250000; 1.000000; 1.000000; -1.000000; -1; -1; } // 0
P 9; B 257; /Xenon M0 Turm6-unten
{ 2; 0; -65000; 145000; 0.250000;-1.000000; 1.000000; 1.000000; -1; -1; } // 0
und so im Spiel:
http://de.pg.photos.yahoo.com/ph/fs2ear ... pg&.src=ph
Fortsetzung folgt....