LiveLinkXR

Use LiveLink with XR devices through the LiveLinkXR plugin

Choose your operating system:

Windows

macOS

Linux

The purpose of Live Link is to provide a common interface for streaming and processing animation data from external sources into Unreal Engine (UE). It is designed to be extensible through Unreal Plugins, allowing third parties to develop new features—hopefully with no need to make and maintain Engine changes.

LiveLinkXR extends this functionality to be used with XR devices. By using the LiveLinkXR plugin, you can add XR sources such as Vive Trackers and HMDs for use with the Live Link tool.

LiveLinkXR currently only supports SteamVR.

This article aims to walk you through setting up and configuring the LiveLinkXR plugin, adjusting the tools various settings, and to provide potential troubleshooting and workaround steps.

Enabling LiveLinkXR

  1. Click the Edit tab to expand., Under the Configuration heading, click Plugins.

    LLXR_WindowsPlugin.png

  2. Use the search box to find the LiveLinkXR plugin, then click Enabled.

    LLXR_LocateLLXRPlugin.png

    You may also need to enable the SteamVR plugin.

  3. Click Yes in the box that appears.

    LLXR_BetaOptIn.png

  4. Click Restart Now to restart UE with the plugin enabled.

    LLXR_PluginRestart_RAW.PNG

  5. Launch the Live Link tool by expanding the Window tab and clicking Live Link.

    LLXR_OpenLiveLink.png

  6. Once opened, if you expand the Source window, you will see LiveLinkXR listed as a new source.

    LLXR_NewSourceInLiveLink.png

  7. Expand the LiveLinkXR Source option to view the various settings associated with it.

    LLXR_LiveLinkXRSourceSettings.png

Source Settings

The LiveLinkXR Source settings allow you to adjust data sources and adjust the local update rate.

Setting Name

Purpose

Track Trackers

Track all Vive Trackers within SteamVR.

Track Controllers

Track all controllers.

Track HMDs

Track all HMDs.

Local Update Rate in Hz

Update rate (in Hz) at which to read the tracking data for each device.

Adding a LiveLinkXR Source

Although the process below was drafted using a Vive HMD with trackers, you should be able to use Live Link XR with any VR device that is supported by SteamVR.

SteamVR must be running to add a new LiveLinkXR source. Consult the SteamVR Troubleshooting page for help setting up SteamVR.

Once the LiveLinkXR plugin is enabled and you have adjusted the settings to match your needs, you will be able to add a XR source.

  1. Launch the Live Link tool, expand the Source window, and under LiveLinkXR Source click Add.

    LLXR_LiveLinkXRSourceSettings.png

  2. If you have configured everything correctly, after clicking Add you should see items added to the tables in the Live Link tool. These items should correspond to the Data Sources you have selected under the Data Source settings.

    LLXR_LiveLinkXRNewSource.png

The IDs found under Subject Name are a combination of the device type and the internal hardware serial number for the device. The internal hardware serial number is different from the serial number printed on the device itself. Some devices may not have internal serial numbers.

Associating VR Sources with Blueprints and Meshes

After you enable the LiveLinkXR plugin, your project will gain access to LiveLinkXR Blueprints and Meshes. These valuable premade items can help you get started. This section will walk you through locating and using those items.

  1. Navigate to the Content Browser, expand the View Options menu, and select Show Engine Content and Show Plugin Content.

    LLXR_SelectandViewOptions.png

  2. You should immediately see new items appear within the Content Browser navigation window.

    LLXR_NewContent.png

  3. Within the Content Browser, locate the LiveLinkXR Content folder and open the Blueprints folder under it.

    LLXR_LiveLinkXRBlueprints.png

  4. Drag the BP_LiveLinkXR_DataHandler into your scene.

    You can verify the tracking data you're receiving with the Toggle Debug Vis option. Do this by using the Toggle Debug Vis debugging tool.

    1. After you have set up sources in Live Link and have dragged the BP_LiveLinkXR_DataHandler into your scene, select the handler from the World Outlier and navigate to the Details panel.

    2. Expand the Default category and click the Toggle Debug Vis button.

    LLXR_DataHandlerToggleDebugVis.png

    1. A BP_LiveLinkXR_DebugVis debug visualization should appear in your level for each Live Link Source that you have set up.

    2. These items should then move around based on their real-world movements.

  5. Select BP_LiveLinkXR_DataHandler from the World Outliner and navigate to the Details panel.

    LLXR_DataHandlerDetails.png

  6. To add a new entry, expand the Default section under Details, and click the Add (+) button next to Subject Name to Attached Actor .

    LLXR_DataHandlerAddAttachedActor.png

  7. In the textbox next to the new element, enter the Subject Name from the Live Link window.

    LLXR_AddSubjectNameToDetails.png

  8. Repeat this process as needed for all sources that you want to track.

  9. Use the dropdown menu next to your element to map the tracking data to the Object or Actor in the scene.

    LLXR_AttachTrackingToTracker.png

Calibration

You can use the Calibrate button next to Toggle Debug Vis to set a new tracking origin relative to an arbitrary actor in the world. When you click it, the transform from the LiveLink Subject Calibration Subject Name is used to calculate a new world origin transform relative to the transform of the Calibration Target Actor .

  1. To take advantage of the Calibrate feature, first select BP_LiveLinkXR_DataHandler from the World Outliner . In the Details panel, select an actor in your level from the dropdown next to Calibration Target Actor .

    LLXR_CaliratePickActor.png

  2. After selecting the target actor, enter the Calibration Subject Name in the box provided. This should match one of the LiveLink Subject names being tracked.

    LLXR_CalirateEnterSubject.png

  3. After adjusting the settings, click the Calibrate button next to Toggle Debug Vis .

  4. Notice that the relative tracking origin of the devices is now relative to your new calibration.

LLXR_DataHandlerPostCalibration_RAW.PNG

LLXR_DataHandlerPreCalibration_RAW.PNG

On the left is the location information for the BP_LiveLinkXR_DataHandler actor when initially dragged into the level. On the right is the location information after calibration relative to another actor in the level.

Using Vive Trackers without an HMD

By default, you cannot use the Vive Trackers without an HMD. This section outlines a potential workaround that should allow you to use Trackers without an HMD within UE.

This process is a potential workaround that is unsupported by Valve, HTC, or Epic. It has the potential to stop working unexpectedly or cause unexpected issues with SteamVR. We recommend that you only attempt this workaround if you are an expert with SteamVR troubleshooting.

  1. First, fully shut down Steam and SteamVR.

    Ensure this by checking the Task Manager for any lingering Steam processes after closing the main program.

  2. Locate the following file on your computer: <Steam Install Directory> /steamapps/common/SteamVR/drivers/null/resources/settings/default.vrsettings .

    LLXR_WorkaroundSteamVRSettings_RAW.PNG

  3. Copy the file and add "_BACKUP" to the end of the file extension.

    LLXR_WorkaroundSteamVRSettingsBackup.png

  4. There are a few ways to back up the files outlined in this process. Copying the original and changing the file extension is the method shown below.

  5. Open the original default.vrsettings file in a text editor.

  6. In the driver_null object, change the enable property value from false to true .

    LLXR_WorkaroundSteamVRSettingsNullEnable_RAW.PNG

    If using nDisplay, set windowWidth , windowHeight , renderWidth , and renderHeight to 0 (zero). This will help you to avoid the un-minimizable VR Composer window in the middle of the screen.

  7. Save and close.

  8. Locate the following file: <Steam Install Directory>/steamapps/common/SteamVR/resources/settings/default.vrsettings .

    LLXR_WorkaroundSteamVRSettingsSecondFile.png

    The file names are similar, but they are located in different folders.

  9. Create a backup of the default.vrsettings file.

    LLXR_WorkaroundSteamVRSettingsSecondBackup.png

  10. Under the steamvr heading, change the requireHmd setting to false .

  11. Under the steamvr heading, change the forcedDriver setting to "null" .

  12. Under the steamvr heading, change the activateMultipleDrivers setting to true .

  13. Once you have updated the correct settings, the file should look something like this:

    "steamvr": {
    "requireHmd": false,
    "forcedDriver": "null",
    "forcedHmd": "",
    "displayDebug": false,
    "debugProcessPipe": "",
    "enableDistortion": true,
    "displayDebugX": 0,
    "displayDebugY": 0,
    "allowDisplayLockedMode": false,
    "sendSystemButtonToAllApps": false,
    "loglevel": 3,
    "ipd": 0.063,
    "ipdOffset": 0.0,
    "background": "",
    "backgroundUseDomeProjection": false,
    "backgroundCameraHeight": 1.6,
    "backgroundDomeRadius": 0.0,
    "environment": "",
    "hdcp14legacyCompatibility": false,
    "gridColor": "",
    "playAreaColor": "",
    "showStage": false,
    "activateMultipleDrivers": true,
  14. Save and close the default.vrsettings file.

  15. Launch Steam and SteamVR.

  16. Because you have altered the SteamVR settings, you may need to run the Room Calibration setup again.

  17. After completing Room Calibration, relaunch SteamVR and you should be able to track devices without the need for an HMD.

    LLXR_WorkaroundSteamVRFinal_RAW.PNG

  18. When you are ready to use the HMD again, close SteamVR , restore the edited files from the backups , and relaunch SteamVR.

Troubleshooting

SteamVR Issues

If your HMD, Controllers, or Trackers are not appearing in SteamVR, then they will not appear in UE. If you are having issues setting up your VR devices, it is recommended that you review the Steam VR Troubleshooting guide for assistance.

언리얼 엔진 문서의 미래를 함께 만들어주세요! 더 나은 서비스를 제공할 수 있도록 문서 사용에 대한 피드백을 주세요.
설문조사에 참여해 주세요
건너뛰기