Unity 在2D中實現LookAt


由於Transform.LookAt是使Z軸看向目標,而2D基本是由X和Y軸構成的。所以在2D的游戲中,不太好使用。

所以用代碼實現一個2D的LookAt函數。

 

例子:

我們使怪物的眼睛一直看着雲。

怪物的眼睛朝向和localX軸的朝向一致,所以使怪物看着雲,即將localx指向雲。

給怪物掛上腳本

腳本編寫

寫法一:

	void Update () {
        Vector2 direction = target.transform.position - transform.position;
        float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg;
        transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
	}

 

寫法二:

void Update () 
    {
        Vector3 v = (target.position - transform.position).normalized;
        transform.right = v;
	}

 

隨后移動雲,怪物也會跟着轉向。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM