2017-03-04 173 views
1

我已經看到了CannonJS FPS Demo,並且注意到它使用球體來進行玩家碰撞。我的角色不是球形,而是盒子或膠囊。CannonJS鎖定特定軸上的旋轉

我曾嘗試使用一個盒子進行碰撞,但我似乎無法在X或Z軸設置inertiaangularFactor上設置lock the rotation。當使用fixedRotation時,它鎖定所有軸的旋轉,但會導致運動受到嚴重限制。當使用沒有限制的箱子形狀時,箱子在移動時開始翻滾。

我會如何通過鎖定旋轉X和Z軸來保持玩家直立?

回答

0

只需設置angularDamping一對INIT用:

playerBody.angularDamping = 1; 

然後在轉動鑰匙處理動畫/運動部分使用:

playerBody.angularDamping = 0; 

,但不要忘了每個循環設置爲開始回到1. FixedRotation似乎只是防止了一些事情。我也試圖通過我自己瞭解: Here you can read more about it