2016-08-21 114 views
2

我是通過慣性傳感器將數據流入虛幻引擎。它輸出非標準化數據的四元數的格式:++虛幻引擎中的四元數旋轉萬向節問題

X = 6561.00000 
Y = 6691.00000 
Z = 2118.00000 
W = 2078.00000 

我將其應用到演員,C,使用:

this->SetActorRelativeRotation(rotsQ); 

,這讓我奇怪的萬向節問題。

當我旋轉節距90度時,它在節距中旋轉。

我在偏航中旋轉90度。

當我旋轉節距90度,它在卷中旋轉。

我嘗試將它轉換爲一個FRotator和翻轉軸,一次應用一個軸並切換旋轉順序。我曾嘗試將Actor設置爲0,0,0,然後添加旋轉值。無論我做什麼,我都會看到同樣的事情。任何幫助在這裏將非常感激!

難道這是一個習慣性問題嗎?我可以在這裏嘗試什麼?

回答

0

目前還不清楚您的傳感器輸入數據是否顯示旋轉或絕對值的變化。如果是絕對值,請嘗試使用SetActorRotation而不是SetActorRelativeRotation

如果輸入數據表示增量旋轉,請嘗試使用AddActorLocalRotationAddActorWorldRotation

+0

感謝您的回覆。這些值是絕對旋轉。我嘗試過使用setActorRotation,並看到完全相同的結果。我明白使用四元數應該可以解決這個問題,但無論如何,我都無法擺脫它! – anti