unity相机围绕某物体做圆周运动

1.方法一

target.position 是圆心的位置,

Vector3.forward是旋转轴(Vector3.up / Vector3.right),

90表示每秒钟旋转90度也就是1/4圈,

脚本需挂载到相机上。

public Transform target;

 void Update()
 {
     transform.RotateAround(target.position, Vector3.up, 90 * Time.deltaTime);  
 }

2.方法二

target.position 是圆心的位置,

r是圆半径,也就是要旋转的向量,

transform.LookAt(target.transform),相机一直朝向圆心物体,

脚本需挂载到相机上。

public Transform target;
Vector3 r;

void Awake()
{
     r = transform.position - target.position;
}
void Update()
{
     r = Quaternion.AngleAxis(90* Time.deltaTime, Vector3.up) * r;
     transform.position = target.position + r;
     transform.LookAt(target.transform);
}

3.运行效果

 

0

扫描二维码关注公众号,回复: 16923548 查看本文章

猜你喜欢

转载自blog.csdn.net/qq_2633600317/article/details/131916776
今日推荐