Skip to main content
With the project, plugin, and map in place, this module walks through creating the core actor that drives your visual — BP_Settings — adding the shape mesh to it, and fully configuring the xrlive_UIpanel component that connects your visual to the xRLive operator system.

1. Create BP_Settings

In the Content Browser, navigate to your plugin’s Blueprints folder (Plugins > MyFirstVisual Content > Blueprints). Right-click in the empty area and choose Blueprint Class. In the Pick Parent Class dialog, click All Classes at the bottom and search for XRLiveActor. Select it and click Select.
Unreal Engine Pick Parent Class dialog showing common classes, with the All Classes link visible at the bottom

Pick Parent Class dialog — search for XRLiveActor and select it as the base class

Name the new Blueprint BP_Settings. This is the actor that will hold all xRLive SDK components and drive the entire visual.
Content Browser showing the Blueprints folder with a new BP_Settings Blueprint Class asset

BP_Settings Blueprint created in the Blueprints folder

Drag BP_Settings from the Content Browser into the level viewport to place it in the scene.

2. Add the Cube component

For this tutorial we use a Cube Static Mesh, but the shape component can be replaced by any Unreal Engine asset type — including but not limited to custom Static Meshes, Skeletal Meshes, Instanced Static Meshes, Niagara Particle Systems, lights, audio components, and more. The xRLive operator control system works the same regardless of what is in the scene.
Double-click BP_Settings to open the Blueprint editor. In the Components panel on the left, click + Add and choose Cube (or Static Mesh if you prefer to assign the mesh manually).
BP_Settings Blueprint editor showing the Components panel with Cube selected, and the Details panel on the right showing Static Mesh set to Cube

BP_Settings Blueprint editor — Cube Static Mesh component added and selected

The Cube is the shape the operator will control. Its transform, color, and visibility will all be driven by operator controls in later modules.

3. Add the xrlive_UIpanel component

Still in the Components panel, click + Add again and search for xrlive_UIpanel. Select it to add it to the actor. With xrlive_UIpanel selected in the Components panel, look at the Details panel on the right — it contains three sections that configure how your visual connects to the xRLive system.
Blueprint editor Details panel with xrlive_UIpanel selected, showing the Widgets section with four empty class references, Camera section, and Xrlive UI Settings section

xrlive_UIpanel Details panel — three sections: Widgets, Camera, and Xrlive UI Settings


Widgets section

The Widgets section sets the four widget classes that xRLive instantiates when your visual runs. Each class reference has a specific role: Set each field by clicking its dropdown and selecting the corresponding class.
xrlive_UIpanel Details Widgets section showing MBP Viewport Class Ref set to xRLive_Viewport, Custom Panel Widget Class set to xRLive_CustomPanel, MBP Category Container Class set to xRLive_CategoryContainer, and MBP Widget Controller Class set to xRLive_WidgetController

Widgets section fully configured — all four class references assigned

When testing inside the Unreal editor, the Viewport widget and the CustomPanel widget both render in the game window without separation — all widgets share the same game viewport. If the Viewport widget visually overlaps the operator panel, you can configure a key toggle to control its visibility at runtime. This is covered in Test in the Editor.

Camera section

The Camera section configures the xRLive camera actor that the system uses to correctly render viewport-based features.
You can also adjust FOV, Sensor Width, and Focal Distance at runtime from Blueprint using the Apply Camera Settings node. See Camera Settings for the full reference.
xrlive_UIpanel Details Camera section showing Camera Class Ref set to xRLive_Camera and Camera Spawn Info expanded with Spawn Location Z set to 92

Camera section configured — xRLive_Camera assigned and Spawn Location set to 0, 0, 92


Xrlive UI Settings section

The Xrlive UI Settings section has two responsibilities:
  • UICategories — this array is where you declare the operator control categories and their controls. It is empty for now; you will fill it in the next module (Define the Control List).
    • Allow Save Preset — when enabled, xRLive builds and saves a JSON preset file for this visual after each session. Disable this for visuals that do not use the preset system, such as gameshows or Audience visuals that manage their own state independently.
Leave Allow Save Preset enabled for this tutorial. The shape visual uses presets to remember operator control positions between sessions.

What you have now

BP_Settings is fully configured with:
  • A Cube Static Mesh component that the operator controls will manipulate
  • An xrlive_UIpanel component with all four widget class references assigned, the xRLive_Camera actor class set, the camera positioned at 0, 0, 92, and preset saving enabled
In the next module you will declare the operator control categories and controls inside UICategories.

Define the Control List →

Declare the movement and shape control categories inside UICategories.