In this lesson, we learned to set up 3D billboard effects using Unreal Engine’s nDisplay feature. However, due to my FMP animation project, I am more interested in using this display technology to control multiple screens simultaneously to play one video. My animation project design requires a face composed of computer screens, and this technology should help me achieve this. This technology mainly works by having the viewports of these display devices share the same viewpoint. By maintaining a certain correspondence between each screen’s rendering perspective and the actual position, we can create an illusion of being in a virtual world. Practically, this means selecting a screen and projecting a 3D image onto it.

Firstly, we need to create a UE project and enable nDisplay in the plugins. After installing the plugin, enable nDisplay in the project settings and create the necessary assets. Start the listener and launch the client through the switchboard, adding actions to the listener event, which requires adding interfaces (such as display interfaces). Lastly, listener events include JSON and binary data, with binary data being more efficient.

If we’re not very familiar with the nDisplay structure, it helps to know it has a configuration containing multiple nodes, each essentially a window instance, like running a program. Each window can have multiple viewports, and we can define the size and position of each viewport, allowing for one-to-many or many-to-one configurations. Currently, with one computer, I aim to have four instances running on it. The first project window has one viewport, the second has two, the third has two, and the fourth has four, enabling one computer to run four instances and approximately nine viewports. Here, we hide the remaining windows upfront, leaving only these four, mastering the basic use of nDisplay
If issues arise when opening the plugin and loading the switchboard, we need to understand that the nDisplay structure contains multiple nodes, each a window instance that can include multiple viewports. In the demo project, clicking the switchboard may not respond because only the main node receives input. To achieve multi-screen synchronization, interfaces must be called to send events and properties to other nodes. Checking “Only Main Node” ensures only the main node executes; otherwise, both the main and other nodes execute.