2012-09-21 97 views
0

如何在統一3d中圍繞其中心點旋轉3D遊戲對象。在統一中圍繞其中心點旋轉對象3d

+0

我想我不明白這個問題。 Transform.rotation = myTargetRotationQuaternion – Kay

+0

in Update(): transform.rotation * = Quaternion.Euler(0,30,0); //度數你想旋轉對象每幀。 http://docs.unity3d.com/Documentation/ScriptReference/Transform-rotation.html – Shadow

+0

或http://docs.unity3d.com/Documentation/ScriptReference/Transform.Rotate.html – Shadow

回答

1

的兩種常用方法旋轉對象是

  1. 的旋轉屬性在變換中。使用這一個,您可以設置目標對象旋轉的精確座標。但是,如果要製作動畫並且通過四元數類型給出值,則必須自行管理平滑度。我建議使用靜態方法Quaternion.Euler因此可以在一個X值傳遞,Y,Z。下面的例子設定爲順時針旋轉90度的Y軸的對象:

    transform.rotation = Quaternion.Euler (0, 90, 0); 
    
  2. 第二種方法使用的在同一個轉換屬性中的旋轉方法。此方法允許您傳遞對象旋轉的度數,並且已經接受X,Y和Z座標,而不是四元數。下面 的例子在Y軸對象1度按順時針方向旋轉:

    transform.Rotate (0, 1, 0); 
    

爲了更好地理解這兩種方法之間的區別,如果你使用的更新方法的第一個,你會看到對象在Y軸上靜止旋轉90度。更新中使用的第二個示例將使對象在Y軸上順時針旋轉(速度太快)。