版本:Unity 6 (6000.0)
语言:English
设置多个相机的顺序
使用动态分辨率更改分辨率比例

在多个显示器上显示相机视图

您可以使用多显示器功能在最多八个不同的显示器上同时显示应用程序的最多八个不同的相机视图。您可以将此功能用于 PC 游戏、街机游戏机或公共显示安装等设置。

Unity 支持以下平台上的多显示器功能:

  • 桌面平台(Windows、macOS X 和 Linux)
  • Android(OpenGL ES 和 Vulkan)
  • iOS

某些功能仅在某些平台上可用。有关兼容性的更多信息,请参阅 DisplayScreenFullScreenMode API。

激活多显示器支持

Unity 的默认显示模式是仅一个显示器。运行应用程序时,您需要使用 Display.Activate() 显式激活其他显示器。激活显示器后,无法将其停用。

激活其他显示器的最佳时间是应用程序创建新 场景场景包含游戏的环境和菜单。将每个独特的场景文件视为一个独特的关卡。在每个场景中,您放置环境、障碍物和装饰,本质上是分段设计和构建您的游戏。 更多信息
请参阅 术语表
时。一个好方法是在默认相机上附加脚本组件。请确保在启动时仅调用 Display.Activate() 一次。作为最佳实践,您可能会发现创建一个小型的初始场景来测试您的脚本很有帮助。

示例脚本

using UnityEngine;
using System.Collections;

public class ActivateAllDisplays : MonoBehaviour
{
    void Start ()
    {
        Debug.Log ("displays connected: " + Display.displays.Length);
            // Display.displays[0] is the primary, default display and is always ON, so start at index 1.
            // Check if additional displays are available and activate each.
    
        for (int i = 1; i < Display.displays.Length; i++)
            {
                Display.displays[i].Activate();
            }
    }
    
    void Update()
    {

    }
}

在项目中预览多个显示器

要预览不同的相机视图,请按照以下步骤操作:

  1. 在相机的 检查器一个 Unity 窗口,用于显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。 更多信息
    请参阅 术语表
    中,为该相机选择一个 目标显示器
Camera Inspector with Target Display option
具有目标显示选项的相机检查器
  1. 确保您处于游戏视图中。

  2. 从左上角的 显示 菜单中,选择要预览的 显示器

Display preview in the top left corner of the Game View
游戏视图左上角的显示预览

API 支持

Unity 支持以下 UnityEngine.Display API 方法:

方法 描述
public void Activate() 激活当前显示器宽度和高度上的特定显示器。此调用必须在启动新场景时执行一次。它可以从附加到 相机一个组件,用于创建场景中特定视点的图像。输出绘制到屏幕上或作为纹理捕获。 更多信息
请参阅 术语表
或新场景中虚拟 游戏对象Unity 场景中的基本对象,可以代表角色、道具、场景、相机、路点等等。游戏对象的函数由附加到它的组件定义。 更多信息
请参阅 术语表
的用户脚本中调用。
public void Activate(int width, int height, int refreshRate) 仅 Windows。激活特定显示器,并设置自定义宽度和高度。在 Linux 和 macOS X 上,辅助显示器始终使用显示器的当前分辨率(如果可用)。
设置多个相机的顺序
使用动态分辨率更改分辨率比例