Bei einer Rotation, die nur um die z-Achse verläuft, sollte die z-Achse unverändert bleiben. Die obige Empfehlung ist also genau das Gegenteil von dem, was Sie wollen.
Nehmen wir an, Sie haben eine beliebige OpenGL-Matrix:
%Vor%Wo die t_i Elemente Übersetzungen sind und die r_jk Elemente Komponenten der Rotation sind. Sie möchten eine Matrix, die so aussieht:
%Vor%Wenn die Matrix keine Skalierungsfaktoren hat oder in der Nähe einer Singularität liegt, sollten Sie dies erreichen können, indem Sie einfach die z-Teile der Matrix auf Null setzen und dann die Spalten neu normalisieren. Da eine OpenGL-Matrix eine Spaltenhauptreihenfolge ist:
%Vor%