How it works
The 4 projectors are configured with Hardware based warping, this means that the outputs on the computer are just straight WQXGA (2560x1600)
This means Unreal nDisplay can function without loading in mesh or image based warp files into the nDisplay system. This is both much more efficient and much easier to maintain should warping ever need adjusting.
This system can then be applied to any Unreal project with minimal requirements, as all of the plugins required to make it function are part of the Unreal engine.
How to configure an Unreal Project
The first part of setting up a project is to copy the IglooUnrealToolkit_UWE plugin, from the saved location of
D:/Camera Packages
To the Plugins folder in the root of your project.
If a plugin’s folder doesn’t yet exist; You can make an empty folder called ‘Plugins' and place it in there.
To check that the plugin has imported successfully;
Click Edit → Plugins
Under the Installed section on the left will be the Livestreaming group
In this group the IglooUnrealToolkit_UWE plugin should be installed and active.
Plugin Assets
To view the assets within the plugin you’ll need to enable “Show Plugin Assets” within your Content Browser Settings.
Then you should be able to see the Plugins folder on the left hand panel of the content browser. Which can be expanded out to view the IglooUnrealToolkit_UWE content.
IglooFlyingPawn
This blueprint creates the movable player system using two VRPN inputs from Optitrack. One for the Head, and one for the Controller (Hand).
The Head input moves the nDisplay eye position, and changes how the world is viewed in the Cave.
The Controller (Hand) input moves the crosshair around the cave and controls your direction.
It also handles movement input, and button presses.
Extending this blueprint is the preferred choice when adding extra interaction to the Cave system
UWE_nDisplay
This is the Unreal Asset version of the nDisplay configuration file. It allows you to preview the nDisplay setup in the editor, and change and edit the setup using a visual UI system rather than manually editing the config file.
Data/UWE_LiveLinkPreset
This is a preset for the LiveLink system, it needs to be placed in both the Live Link Plugin section of the Project Settings, and also the UWE_nDisplaySetup config.
Setting up your level
Placing Actors
Drag both the IglooFlyingPawn and the UWE_nDisplay actors into your scene.
Then in the Live Link plugin settings, within Project Settings, add the UWE_VRPN_Preset as the default LiveLink Preset.
You also need to open the IglooFlyingPawn and add the LiveLink preset to the Head and Hand controllers.
The final place to add the LiveLink preset is the UWE_nDisplay system. It needs to be added to the Class Defaults page.
Corrupt Crosshair
One final thing that may become corrupt when importing the prefabs is the material used for the crosshair.
Check that the Texture on the Crosshair material is set to CrossHairOne as the default texture.
Also check that the cross hair material is applied correctly to the crosshair object in the IglooFlyingPawn prefab
nDisplay Launcher
Instead of using Switchboard and switchboard listeners. Unreal 5.1 has introduced a new plugin called nDisplay Launcher, which is imported and activated along with the IglooUnrealToolkit_UWE plugin.
You can find it’s icon on the ribbon menu.
Initial Setup
To overcome a bug with Unreal 5.1 a command line argument is required for nDisplay to function correctly. To edit this value, click the 3 dots next to the nDisplay Launcher icon, and select Advanced Settings
Then under the Console rollout, add an Additional Console Variable with the following statement:
DC.OverrideMaxTextureDimension=16384
This will allow nDisplay to make full use of the UWE canvas, and enable it to work on all 3 walls and the floor.
Launching nDisplay
Finally, after all the setup is complete, you can launch the level by clicking the nDisplay Launch Icon on the ribbon menu.
When you’ve finished using the Unreal level within the CAVE you will often have to click the Stop nDisplay Launcher Icon to be able to make any changes to any Unreal files. Otherwise you’ll get a ‘can’t save error'
How it should look
This is how the scene should look once enabled via switchboard.
The output should span all of the projector outputs, and create a 3D dual pipe image.
The Controls
The 3D glasses with the Optitrack markers on, will move the perspective of the camera system.
The Playstation Wand controller will move the crosshair around towards the direction you are pointing.
Thumbstick on the PS controller controls movement, and forwards is the direction you are pointing with the wand.
X on the PS controller, when held, will rotate the world view via a drag motion, and releasing will cement this new rotation.
O on the PS controller is unbound to any functions at this stage, but it could be used for interaction with objects.
Adjusting the Player Speed
This is done using the following values on the IglooFlyingPawn Class:
Changing the Max Speed to 6000 is usually a good starting point.
Also lowering the Acceleration will help with motion sickness, and the movement is less jarring.
Add Comment