需求
在Unity中,有时我们需要让场景中的UI一直看向摄像机,随着摄像机的旋转而旋转,我们的实现思路是获取场景中需要看向摄像的UI,为它们设置为同一个tag,在脚本中通过查找所有物体为你所设置tag的名字,并将它们集中存储,然后获取摄像机的旋转角度,遍历所有的物体,并更新它们的旋转角度即可。
功能实现
第一步:在场景中为所有你需要旋转的UI添加tag。
第二步:新建脚本,脚本名字自取即可,
public class Test : MonoBehaviour
{
public float rotationspeed = 3;//旋转速度
//public float speedpostpone = 3;//移动延迟
public Transform targetmodel;//围绕的目标物体
private GameObject[] image;//需要旋转的物体
private void Awake()
{
image = GameObject.FindGameObjectsWithTag("ico");//你定义tag的名字
}
private void Update()
{
foreach(GameObject game in image)
{
game.GetComponent<Transform>().eulerAngles = new Vector3(targetmodel.eulerAngles.x, targetmodel.eulerAngles.y, 0);
}
}
}
第三步:将脚本添加到物体上,并指定参数
效果展示:
版权归原作者 只会写BUG的小白~ 所有, 如有侵权,请联系我们删除。