2017-12-25 14 views
0

私はGameObject(ゴルファー)とGolfball GameObjectsを持っています。他のGameObjectに相対位置を保持しているGameObjectsを回転させる方法は固定されています。

画面をスワイプしてゴルファーを回転させることができます。次の二つの画像に示すように、このコードは、ゴルファーのスピンを有する

if (Input.GetMouseButtonDown(0)) 
{ 
    f_difX = 0.0f; 
} 
else if (Input.GetMouseButton(0)) 
{ 
    f_difX = Mathf.Abs(f_lastX - Input.GetAxis ("Mouse X")); 

    if (f_lastX < Input.GetAxis ("Mouse X")) 
    { 
     i_direction = -1; 
     m_CurrentObj.transform.Rotate(Vector3.up, -f_difX); 

    } 

    if (f_lastX > Input.GetAxis ("Mouse X")) 
    { 
     i_direction = 1; 
     m_CurrentObj.transform.Rotate(Vector3.up, f_difX); 

    } 

    f_lastX = -Input.GetAxis ("Mouse X"); 
} 

enter image description here

enter image description here

私はゴルファーに彼らの相対位置が固定されている保つことによってGolfballsを回転させる必要があります。

私はRotateAroundを使用する必要があると思います。

ゴルフボールをゴルファーに関してどのように回転させることができますか?

答えて

1

プレーヤーと同じピボットを持つ空のゲームオブジェクトの中にgolfballを置き、代わりにそのゲームオブジェクトを回転させます。ゴルフボールはlocalPositionを保持し、最終的にプレーヤの周りを回転します。

関連する問題