Unity LookAt和LookRotation的使用

始終看向某一個物體

transform.LookAt(Obj.transform);
Debug.DrawLine(transform.position, Obj.transform.position, Color.blue);

保持和同一個物體,同一個朝向

   transform.rotation = Quaternion.LookRotation(Obj.transform.forward);
   Debug.DrawRay(transform.position, Obj.transform.forward, Color.red);

但是當(dāng)Obj發(fā)生上下移動(不在同一個水平面)時,就能看到差別了,物體始終朝向Obj,但是物體只改變水平方向的轉(zhuǎn)向

Vector3 dir = Obj.transform.position - transform.position;
        dir = new Vector3(dir.x, 0, dir.z);
        transform.rotation = Quaternion.LookRotation(dir);
        Debug.DrawRay(transform.position, dir, Color.green);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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