nDisplay Overview

Describes how multiple computers work together in an nDisplay rendering network.


Every nDisplay setup has a single master computer, and any number of additional computers.

  • Each computer in the network runs one or more instances of your Project's packaged executable file.

  • Each Unreal Engine instance handles rendering to one or more display devices, such as screens or projectors.

  • For each of the devices an instance of Unreal Engine handles, it renders a single viewpoint on the same 3D scene. By setting up these viewpoints so that their location in the 3D world matches the physical locations of the screens or projected surfaces in the real world, you give viewers the illusion of being present in the virtual world.

  • The master node is also responsible for accepting input from spatial trackers and controllers though connections to Virtual-Reality Peripheral Networks (VRPNs), and replicating that input to all other connected computers.

nDisplay network overview

The image above shows a possible nDisplay network. Like all nDisplay networks, one of its PCs acts as the master node. This master node accepts input into the system from a VRPN server, which relays signals that come from spatial tracking devices and other controller devices. The network also contains several other PCs that run other instances of the Unreal Engine Project. Each of these cluster nodes drives one or more display projectors.

One application instance that renders to one display device.
This is the most straightforward way to set up a host for nDisplay. For each projector or display device you need, you set up one computer to handle rendering to that device. On that computer, you run one instance of the Unreal Engine. Typically, in this scenario, you'll set up that application instance to render a single rectangle of 3D space into a single viewport.

Multiple application instances that each renders to one display device.
If you have computers in your network that have multiple graphics cards and that can handle driving multiple display devices, you can run multiple instances of the Unreal Engine on those computers. You'll direct each instance of the Unreal Engine to render a different rectangle of 3D space, and dispatch each to a different graphics card.
This approach can work well if the CPU and memory requirements of your Project are light enough that you can run multiple instances on the same computer.

One application instance that renders to multiple display devices.
With this option, you run a single instance of your Unreal Engine application on your computer, but you set it up to render multiple separate rectangles of the scene's 3D space into different areas within a large window. You then use a technology such as NVIDIA Mosaic or NVIDIA Surround to split up that single large window and render each separate area on a different display devices.
In this scenario, the benefit of using nDisplay in conjunction with Mosaic or Surround is that you can render viewports that accurately match the physical arrangements of your different monitors, even when those monitors do not lie along the same plane. However, all viewports are being rendered by the same instance of Unreal Engine, so you can't benefit from having multiple graphics cards installed on the same computer.

nDisplay Components

nDisplay adds several components to the usual Unreal system architecture:

  • A Plugin that works inside the Unreal Engine. It communicates and synchronizes information between all the application instances that make up the cluster, makes sure all instances render the same frame at the same time, makes sure each display device renders the correct frustum of the game world, and more.

  • A network provisioning and management application, called nDisplayLauncher. You run this application on a single computer in your network to automatically launch and quit your packaged Unreal Engine application on all the computers in your network.

  • A separate listener application, called nDisplayListener, that runs on each computer. This application listens for incoming requests from the nDisplayLauncher, and processes those requests on the local computer.

  • A shared configuration file that contains all the settings nDisplay needs to start up the right number of instances on the right computers, each rendering the right points of view on the game's 3D world to produce the illusion of a seamless rendering across all display screens or projectors. See the nDisplay Configuration File Reference.

Blueprint API

You can control the behavior of the nDisplay system in your game's runtime logic using its Blueprint APIs.

To get to the functions exposed in these APIs:

  1. For most nDisplay Blueprint functions related to cluster management, querying input devices, nDisplay rendering, and more, create a new N Display > Get DisplayCluster Module API node in your Blueprint.
    For functions that set up bindings and reflection between VRPN input devices and Unreal Engine input events, create a new N Display > Get DisplayClusterInput Module API node in your Blueprint. See also Binding Device Channels to UE4 Inputs.

  2. Drag from the Out API pin of your node, and look under the Display Cluster or Display Cluster Input category:

Select Skin

新しい Unreal Engine 4 ドキュメントサイトへようこそ!