2016-11-27 38 views
0

我正在尝试进行简单的产品可视化。我想放大或移动相机朝向物体。我的代码如下所示:Unity3d使用鼠标滚轮移动摄像机

public class mouseMover : MonoBehaviour { 

     public Transform target; 
     public float speed; 


     void Update() { 

      if (Input.GetAxis ("Mouse ScrollWheel") < 0) { 
       float scroll = Input.GetAxis ("Mouse ScrollWheel"); 

       transform.LookAt (target); 
       transform.Translate(0, 0, scroll * speed, Space.World); 


      } 

      if (Input.GetAxis ("Mouse ScrollWheel") > 0) { 

       float scroll = Input.GetAxis ("Mouse ScrollWheel"); 
       transform.LookAt (target); 
       transform.Translate(0, 0, scroll * speed, Space.World); 
      } 

    } 

} 

但是当我尝试放大,它只是“飞”周围的对象,当相机上物体的另一侧获得,它开始退去。

回答

1

这是因为你用Space.World代替Space.Self:

void Update() 
{ 
    float scroll = Input.GetAxis ("Mouse ScrollWheel"); 
    transform.LookAt (target); 
    transform.Translate(0, 0, scroll * speed, Space.Self); 
}