Rotation eines virtuellen 3D Modells

    Rotation eines virtuellen 3D Modells

    Hi,
    Ich habe ein "virtuelles" 3D Modell später mehr dazu. Ich möchte nun es Rotieren d.h. Vertikal und Horizontal bzw. (Z und X) Rotation. Für die die es nicht Wissen damit ist das Drehen eines 3D Modells gemeint. Da es virtuell ist gäbe es jetzt kein Problem jedoch will ich noch die Kollision zweier virtuellen 3D Modelle prüfen.
    Was mein ich mit virtuellen 3D Modell?
    Damit mein ich das ich nur die Variablen X Y Z Länge Breite und Höhe habe. Also nichts Grafisches keine Engine u.a. .
    Höhe - Die Höhe des 3D Modells von unten nach oben gemessen.
    Länge - Die Länge von Links nach rechts.
    Breite - Den durchmesser von vorne nach hinten.
    X - Die X Position von Links nach Rechts gemessen auf der virtuellen Karte.
    Y - Die Y Position von vorne nach hinten gemssen auf der virtuellen Karte.
    Z - Die Z Position von unten nach oben gemessen auf der Karte.
    Ich habe es hier gepostet weil es mehr mit Mathematik zu tun hat.
    Hier mein Code für die Kollisionserkennung:

    VB.NET-Quellcode

    1. Public Function Kollision(ByVal Obj1 As Objekt, ByVal Obj2 As Objekt) As Boolean
    2. Dim sx, sy, sz As Boolean
    3. sx = (Obj1.X < Obj2.X And Obj1.X + Obj1.Länge >= Obj2.X) Or (Obj1.X > Obj2.X And Obj2.X + Obj2.Länge >= Obj1.X) Or Obj1.X = Obj2.X
    4. sy = (Obj1.Y < Obj2.Y And Obj1.Y + Obj1.Breite >= Obj2.Y) Or (Obj1.Y > Obj2.Y And Obj2.Y + Obj2.Breite >= Obj1.Y) Or Obj1.Y = Obj2.Y
    5. sz = (Obj1.Z < Obj2.Z And Obj1.Z + Obj1.Höhe >= Obj2.Z) Or (Obj1.Z > Obj2.Z And Obj2.Z + Obj2.Höhe >= Obj1.Z) Or Obj1.Z = Obj2.Z
    6. If sx And sy And sz Then MsgBox("kollision")
    7. Return sx And sy And sz
    8. End Function

    Freue mich echt über die Hlfe von euch Mathe Pro's.
    Mfg
    Loadsoft