If you launch the switchboard launcher and listener and execute the project from there, you can see the command being executed on the listener. You can use that in a .bat to launch the project in “ndisplay mode” or you can add the launch arguments to a shortcut.
Here is an example on how to launch a built project:
“{YOUR_PROJECT_PATH}\Built_project.exe” -game None -messaging -dc_cluster -nosplash -fixedseed -NoVerifyGC -noxrstereo -xrtrackingonly -RemoteControlIsHeadless -StageFriendlyName=“Node_0” -MaxGPUCount=2 -dc_cfg=“{YOUR_PROJECT_PATH}\ndisplay_config.ndisplay” -dx12 -dc_dev_mono -dc_node=Node_0 Log=Node_0.log -ini:Engine:[/Script/Engine.Engine]:GameEngine=/Script/DisplayCluster.DisplayClusterGameEngine,[/Script/Engine.Engine]:GameViewportClientClassName=/Script/DisplayCluster.DisplayClusterViewportClient,[/Script/Engine.UserInterfaceSettings]:bAllowHighDPIInGameMode=True -ini:Game:[/Script/EngineSettings.GeneralProjectSettings]:bUseBorderlessWindow=True -ini:Input:[/Script/Engine.InputSettings]:DefaultPlayerInputClass=/Script/DisplayCluster.DisplayClusterPlayerInput -unattended -NoScreenMessages -handleensurepercent=0 -UDPMESSAGING_TRANSPORT_MULTICAST=“230.0.0.1:6666” -UDPMESSAGING_TRANSPORT_UNICAST=“127.0.0.1:0” -UDPMESSAGING_TRANSPORT_STATIC=“192.168.0.10:9030” -ExecCmds=“DisableAllScreenMessages” -windowed -forceres WinX=2560 WinY=0 ResX=2560 ResY=1440 -CONCERTRETRYAUTOCONNECTONERROR -CONCERTAUTOCONNECT -CONCERTSERVER=“Ventana_Espacial_test_benja_MU_Server” -CONCERTSESSION=“MU_Session” -CONCERTDISPLAYNAME=“Node_0” -CONCERTISHEADLESS -DPCVars=“Slate.bAllowNotifications=0,p.Chaos.Solver.Deterministic=1”
Probably some commands are not needed if you’re using just one machine.
You can also launch a project which is not prebuilt like this:
“C:\Program Files\Epic Games\UE_5.3\Engine\Binaries\Win64\UnrealEditor.exe” “{YOUR_PROJECT_PATH}\{PROJECT_NAME}.uproject” -game None -messaging -dc_cluster -nosplash -fixedseed -NoVerifyGC -noxrstereo -xrtrackingonly -RemoteControlIsHeadless -StageFriendlyName=“Node_0” -MaxGPUCount=2 -dc_cfg=“{YOUR_PROJECT_PATH}\ndisplay_config.ndisplay” -dx12 -dc_dev_mono -dc_node=Node_0 Log=Node_0.log -ini:Engine:[/Script/Engine.Engine]:GameEngine=/Script/DisplayCluster.DisplayClusterGameEngine,[/Script/Engine.Engine]:GameViewportClientClassName=/Script/DisplayCluster.DisplayClusterViewportClient,[/Script/Engine.UserInterfaceSettings]:bAllowHighDPIInGameMode=True -ini:Game:[/Script/EngineSettings.GeneralProjectSettings]:bUseBorderlessWindow=True -ini:Input:[/Script/Engine.InputSettings]:DefaultPlayerInputClass=/Script/DisplayCluster.DisplayClusterPlayerInput -unattended -NoScreenMessages -handleensurepercent=0 -UDPMESSAGING_TRANSPORT_MULTICAST=“230.0.0.1:6666” -UDPMESSAGING_TRANSPORT_UNICAST=“127.0.0.1:0” -UDPMESSAGING_TRANSPORT_STATIC=“192.168.0.10:9030” -ExecCmds=“DisableAllScreenMessages” -windowed -forceres WinX=2560 WinY=0 ResX=2560 ResY=1440 -CONCERTRETRYAUTOCONNECTONERROR -CONCERTAUTOCONNECT -CONCERTSERVER=“Ventana_Espacial_test_benja_MU_Server” -CONCERTSESSION=“MU_Session” -CONCERTDISPLAYNAME=“Node_0” -CONCERTISHEADLESS -DPCVars=“Slate.bAllowNotifications=0,p.Chaos.Solver.Deterministic=1”
You can export an .ndisplay
from the corresponding ndisplay configuration asset, inside Unreal.