Unity5.4 利用函數(shù)設(shè)置副物體跟隨主物體旋轉(zhuǎn)

效果(用鼠標(biāo)控制副物體旋轉(zhuǎn)):


image

通公式獲取圓的下一個(gè)坐標(biāo)位置:
x = vector3.x + r * cos(angle * PI / 180)
z = Vector3.z + r * sin(angle * PI /180)
源代碼:

public class Test : MonoBehaviour
{
    private Transform CylinderTranform;
    private float r;
    // Use this for initialization
    void Start()
    {
        CylinderTranform = GameObject.Find("Cylinder").transform;//獲取主物體坐標(biāo)
         r = Vector3.Distance(transform.position, CylinderTranform.position);//獲取主物體與跟隨物體距離,即半徑
    }

    float MouseX;
    // Update is called once per frame
    void Update()
    {
        transform.LookAt(CylinderTranform);
        MouseX += Input.GetAxis("Mouse X")*5;//獲取鼠標(biāo)位置*5
        //主物體X+半徑*cos(鼠標(biāo)位置*pi/180)
        var x = CylinderTranform.position.x + r*Mathf.Cos(-MouseX*Mathf.PI/180);
        var z = CylinderTranform.position.z + r*Mathf.Sin(-MouseX*Mathf.PI/180);
        transform.position = new Vector3(x, CylinderTranform.position.y, z);
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容