3D GAMESTUDIO-Magazin Ausgabe 01 | Oktober 20051
3D GAMESTUDIO-Magazin Ausgabe 01 | Oktober 20051
3D GAMESTUDIO-Magazin Ausgabe 01 | Oktober 20051
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
sehen dass das Ergebnis stimmt.<br />
Vec_Rotate(Richtungsvektor, Vektor Angle);<br />
Die zweite etwas komplexere Vektor-Funktion. Diese Funktion dreht die Richtung des ersten<br />
Vektors um die Pan, Tilt und Roll Werte des zweiten Vektors. Hört sich kompliziert an, ist aber an<br />
einem Beispiel sehr einfach zu verstehen.<br />
Vec_set(temp.x,vector(50,0,0)); //setzt temp Vektor auf (50 | 0 | 0)<br />
vec_rotate(temp.x,camera.pan); //rotiert temp Vektor um Kamera Drehung<br />
vec_add(temp.x,camera.x); //addiert die Kameraposition zu dem Temp Vektor<br />
Nach dieser Anweisung ist der Vektor temp.x genau 50 Quants VOR der Kamera<br />
Vec_Cross(Vektor1,Vektor2,Vektor3);<br />
Diese Funktion ist leider nicht in C-Script vorhanden. Daher müssen wir sie auf wohl oder über<br />
selber schreiben. Folgende Funktion bildet das Kreuzprodukt aus Vektor1 und Vektor2 und schreibt<br />
das Ergebnis in Vektor3.<br />
function vec_cross(vec1,vec2,vec3)<br />
{<br />
vec_set(vec3.x,vector((vec1.y * vec2.z) - (vec1.z * vec2.y),(vec1.z * vec2.x) -<br />
(vec1.x * vec2.z),(vec1.x * vec2.y) - (vec1.y * vec2.x)));<br />
}<br />
Ich hoffe, dass dieses Tutorial Ihnen einen Einblick in die große Welt der Vektor-Mathematik gab.<br />
Falls nicht, oder falls noch Fragen offen sind, senden Sie mir bitte eine Email an<br />
TripleX@hawkgames.de .<br />
Vielen Dank für das lesen<br />
Timo Stark aka Triple-X<br />
<strong>3D</strong> <strong>GAMESTUDIO</strong>-<strong>Magazin</strong> ■ <strong>Ausgabe</strong> <strong>01</strong> | <strong>Oktober</strong> 2005 │15