unity中 canvas下物体的朝向跟随

    public Transform target;


    private Vector3 direction;
    void Update()
    {
        //第一种
        //direction = target.position - transform.position;
        //transform.up = -direction.normalized;

        //第二种
        if (target != null )
        {
            // 获取目标物体的方向
            Vector3 direction = target.position -transform.position;

            // 计算朝向角度  其中90f根据实际需求调整
            float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg+90f;

            // 更新UI物体的朝向
           transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
        }

        //if (target != null)
        //{
        //    // 获取目标物体位置并使当前物体朝向目标物体
        //    Vector3 targetDirection = target.position - transform.position;
        //    transform.rotation = Quaternion.LookRotation(targetDirection, );
        //}


    }

你可能感兴趣的:(unity,游戏引擎)