【发布时间】:2015-08-16 21:12:37
【问题描述】:
我有这种方法可以向前/向后和向左/向右平移相机。我不知道为什么,但是是什么导致相机在靠近地形放大时移动得很好,但在缩小时移动很慢?
这是我如何平移相机:
void CameraPan(){
if(Input.GetMouseButton(2)){
transform.rotation = transform.rotation;
transform.Translate(Vector3.right * -Input.GetAxis("Mouse X") * 20f, Space.World);
transform.Translate(Vector3.forward * -Input.GetAxis("Mouse Y") * 20f, Space.World);
}
}
这是我的缩放方式:
void CameraZoom(){
float scroll = Input.GetAxis("Mouse ScrollWheel");
if(scroll < 0){
transform.Translate(0, 0, scroll * scrollSpeed);
}else if(scroll > 0){
transform.Translate(0, 0, scroll * scrollSpeed);
}
}
无论放大还是缩小,如何以相同的速度平移相机?
【问题讨论】:
-
随着相机离目标越来越远,横向移动(如平移)会导致视觉变化较小——这就是为什么太阳在天空中似乎没有移动,即使在你行驶了数百英里之后.也许您可以通过更改相机的field of view 来进行缩放?
-
我试过这样做,问题是一切看起来都太奇怪了。