版本:Unity 6 (6000.0)
语言:English
从摄像机投射射线
使用多个摄像机

沿着射线移动摄像机

有时需要获取对应于屏幕位置的射线,然后沿着该射线移动摄像机一个组件,用于创建场景中特定视点的图像。输出要么绘制到屏幕上,要么作为纹理捕获。更多信息
参见 词汇表
。例如,您可能希望允许用户使用鼠标选择一个对象,然后放大到该对象,同时将其“固定”到鼠标下方的相同屏幕位置(例如,当摄像机查看战术地图时,这可能很有用)。执行此操作的代码非常简单。

using UnityEngine;
using System.Collections;

public class ExampleScript : MonoBehaviour {
    public bool zooming;
    public float zoomSpeed;
    public Camera camera;

    void Update() {
        if (zooming) {
            Ray ray = camera.ScreenPointToRay(Input.mousePosition);
            float zoomDistance = zoomSpeed * Input.GetAxis("Vertical") * Time.deltaTime;
            camera.transform.Translate(ray.direction * zoomDistance, Space.World);
        }
    }
}
从摄像机投射射线
使用多个摄像机