使用物理相机
使用多个相机
第一次创建 Unity 场景时,它仅包含一个摄像机,这在大多数情况下就足够了。 但是,您也可以将任意数量的摄像机添加到场景中,并以不同的方式组合它们的视图,如下所述。
切换相机
默认情况下,相机渲染的图像覆盖整个屏幕贴图笔刷,因此一次只能看到一个相机的图像(即具有最高深度属性的相机)。 通过在脚本中禁用一台摄像机并启用另一台摄像机,您可以从一台摄像机“剪切”到另一台摄像机,从而为您提供场景的多个视图。 这在某些情况下很有用unity调用摄像头,例如在俯视地图视图和第一人称视图之间切换时。
using UnityEngine;
using System.Collections;
public class ExampleScript : MonoBehaviour {
public Camera firstPersonCamera;
public Camera overheadCamera;
public void ShowOverheadView() {
firstPersonCamera.enabled = false;
overheadCamera.enabled = true;
}
public void ShowFirstPersonView() {
firstPersonCamera.enabled = true;
overheadCamera.enabled = false;
}
}
C# 脚本示例
var firstPersonCamera: Camera;
var overheadCamera: Camera;
function ShowOverheadView() {
firstPersonCamera.enabled = false;
overheadCamera.enabled = true;
}
function ShowFirstPersonView() {
firstPersonCamera.enabled = true;
overheadCamera.enabled = false;
}
JS 脚本示例
渲染画中画
通常,您希望至少有一个摄像机视图覆盖整个屏幕(默认设置),但在屏幕的一小块区域内拥有另一个视图通常很有用。 例如3D素材,您可以在驾驶游戏中显示后视镜,或者从第一人称视角在屏幕一角显示俯视小地图。 您可以使用相机的 Viewport Rect 属性设置相机屏幕矩形的大小。
视口矩形的坐标相对于屏幕是“标准化的”。 下边缘和左边缘为 0.0 坐标,而上边缘和右边缘为 1.0。 坐标值为 0.5 表示位于中间。 除了视口大小之外unity调用摄像头,具有较小视图的相机的深度属性还应设置为比背景相机更高的值。 确切的值并不重要,规则是具有较高深度值的相机的渲染将覆盖在具有较低深度值的相机的渲染之上。
相机
使用物理相机
文章来源:https://docs.unity.cn/cn/2018.4/Manual/MultipleCameras.html