Version: 2023.1
言語: 日本語
ディープラーニングスーパーサンプリング
Camera コンポーネント

マルチディスプレイ

マルチディスプレイを使って同時に最大 8 つのモニター上にアプリケーションの異なるカメラビューを最大 8 つまで表示できます。PC ゲーム、アーケードゲーム機、パブリックディスプレイなどの設定に使用できます。

Unity は以下でマルチディスプレイをサポートしています。

  • デスクトッププラットフォーム (Windows、macOS X、Linux)
  • Android (OpenGL ES と Vulkan)
  • iOS

一部の機能は、一部のプラットフォームでのみ動作します。互換性の詳細については、DisplayScreenFullScreenMode の各 API を参照してください。

マルチディスプレイサポートの有効化

Unity のデフォルトのディスプレイモードは 1 つのモニターのみです。アプリケーションを実行するときは、Display.Activate() を使用して明示的に追加のディスプレイをアクティブにする必要があります。いったんディスプレイをアクティブにすると、非アクティブにすることはできません。

追加のディスプレイをアクティブにする最適なタイミングは、アプリケーションが新しいシーンを作成するときです。これを行うには、スクリプトコンポーネントをデフォルトのカメラにアタッチすることです。起動時に Display.Activate() を 1 回だけ呼び出しようにしてください。スクリプトをテストするための小さな初期シーンを作成すると便利な場合があります。

スクリプトサンプル

using UnityEngine;
using System.Collections;

public class ActivateAllDisplays : MonoBehaviour
{
    void Start ()
    {
        Debug.Log ("displays connected: " + Display.displays.Length);
            // Display.displays[0] は主要なデフォルトのディスプレイで、常にオンです。ですから、インデックス 1 から始まります。
            // その他のディスプレイが使用可能かを確認し、それぞれをアクティブにします。
    
        for (int i = 1; i < Display.displays.Length; i++)
            {
                Display.displays[i].Activate();
            }
    }
    
    void Update()
    {

    }
}

プロジェクトの複数ディスプレイのプレビュー

さまざまなカメラビューをプレビューするには、以下の手順を実行します。

  1. カメラの インスペクター で 、そのカメラの Target Display (ターゲットディスプレイ) を選択します。
Camera インスペクターの Target Display オプション
Camera インスペクターの Target Display オプション
  1. ゲームビューにいることを確認します。

  2. 左上隅の Display メニューからプレビューするディスプレイを選択します。

ゲームビュー の左上の Display ドロップダウン
ゲームビュー の左上の Display ドロップダウン

API サポート

Unity は以下の UnityEngine.Display API メソッドをサポートします。

メソッド 説明
public void Activate() 特定のモニターを、現在のモニターの幅と高さでアクティベートします。この呼出しは新しいシーンを開始するときに、一度だけ行われる必要があります。これは、新しいシーン内の Camera やダミーの GameObject に添付されたユーザースクリプトから呼び出すことが可能です。
public void Activate(int width, int height, int refreshRate) Windows のみ。カスタムの幅と高さの特定のディスプレイをアクティブにします。Linux と macOS X では、補助的なディスプレイは可能な場合は常にディスプレイの現在の解像度を使用します。

モニターディスプレイ位置の制御

デフォルトでは、ユーザーのコンピューターは、コンピューターの X, Y の仮想デスクトップに基づいてディスプレイモニターの相対的な位置をソートします。アプリケーションがソートなしで表示するようにこれをオーバーライドするには、コマンドラインからアプリケーションを起動して、-multidisplay コマンドラインフラグを使用してください。


  • Unity 2020.1で Android の Vulkan に対応しました。
ディープラーニングスーパーサンプリング
Camera コンポーネント