[Unity3D] 如何实现围绕旋转

 1 public class CameraMove : MonoBehaviour {
 2     private Camera c;
 3     private float rotateSpeed = 10;
 4 
 5     private void Start() {
 6         c = this.GetComponent<Camera>();
 7 
 8     }
 9 
10     private void Update() {
       //获取虚拟按键
11 float mouseX = Input.GetAxis("Mouse X"); 12 /*
      
这里有个错误,rotateSpeed参数无效,实际旋转速度由 13 this.transform.RotateAround()第三个参数决定
       */
       //匀速旋转
14 mouseX *= rotateSpeed *Time.deltaTime; 15 16 //建议使用本地坐标X,世界坐标Y 17 //模拟飞飞鼠标右键按住不放旋转,即围绕角色上下左右旋转 18 //RotateAround(注视谁,移动坐标,移动多少米) 19 if (Input.GetMouseButton(1)) {
         //左右环绕旋转镜头
20 this.transform.RotateAround
(this.transform.parent.position, new Vector3(0, mouseX, 0), 10); 21 } 22 23 } 24 }

以角色为轴心点,围绕旋转,注意相机位置

时间若流水,恍惚间逝去
原文地址:https://www.cnblogs.com/alanshreck/p/13554371.html