- foreach(normal)
- {
- beschleunigung += partialKraft;
- drehMoment += cross(normalMat*urPos, partialKraft);
- }
- velPos += simspeed*beschleunigung;
- velAngles += simspeed*drehMoment; // Trägheitstensor vernachlässigt
- ModelMat = glm::translate(ModelMatFloater, ...//klappt wunderbar
- euA += velAngles;
- // Hier kommt der kritische Part, denke ich...
- // Rotation Variante 1(Euler)
- ModelMat *= glm::eulerYXZ(euA.y, euA.x, euA.z); // klappt ne Weile
- // Rotation Variante 2 (Quaternion)
- ModelMat *= glm::rotate(ModelMat, length(euA), normalize(euA)); //klappt auch nur ne Weile