F. Tasklist Editor
The Tasklist controls the entire training procedure, including instructions, order of actions, and validation of user interactions in the VR scenario.
The Tasklist is used to define and control the workflow of a VR training scenario.
In URealXR, the Tasklist acts as the central process logic that determines what the user has to do and in which order. It organizes the training into sections and tasks, assigns interactive actors to those tasks, and provides instructions to the user during the VR experience.
Main purposes of the Tasklist
1. Define the workflow of the training The Tasklist specifies the sequence of actions the VR user must perform, for example assembling or disassembling parts.
2. Organize tasks into sections Tasks are grouped into sections so that complex procedures can be structured into clear steps.
3. Connect objects with tasks Actors in the scene (such as gears, tools, or levers) can be assigned to tasks, which allows the system to detect when the user performs the correct interaction.
4. Provide instructions to the user Text entered in the Tasklist can be displayed on an Info Screen or Monitor, guiding the user through the training process.
5. Measure training progress and time The Tasklist can start timers and track how long a user needs to complete the training.
Create a new project using the URealXR template. Go to the Editor folder and right-click on Start. Then, left-click on Run Editor Utility Widget.

At the top, select the Tasklist Editor tab. This editor is divided into two main sections: the left section, where tasks are created, and the right section, where individual actors can be assigned to tasks.
In the first step, we will focus on the left section.

First, we want to create a new task list. To do this, click the +Add Tasklist button.

In the Tasklist Title field, enter a name for the task list. It should be meaningful and clearly describe the topic it refers to.

If you check the box Use First Task as Timer Starter, the first task will be used as the start signal for measuring how long the training takes.

With the Starting Task dropdown menu, you can conveniently choose which task to begin with. This is especially useful when creating complex and lengthy trainings, allowing you to test only specific sections. Select your desired entry point and start debugging from there.

In the next step, create a new section by clicking the +Add Section button. This section can be assigned various functions.

To open the section, click on the gray area with the mouse.

The Timer Section Title field is used to give the created section a meaningful name so that it can be easily identified. For example: Place the Gear. Once you assign a label, it will be displayed at the top of the section next to the “1”.

The Monitor Section Title is used to control the written instruction on the monitor. Whatever you enter here will later be displayed as text on the info screen (if one is available). Most of the time, it makes sense to use the same text for both fields.

To continue with a practical example, we will now create a small setup in the scene. Drag the gear named SM_Gear from the VRAssembling/meshes folder into the viewport.

Convert the gear into an interactive object using the Moveable (Basic) Transformer. Choose a slot name and click on Assembly. Finally, click on Spawn.

Now, use the Outliner to select the gear part and move it to the left.

In the next step, spawn an Info Screen into the scene using the Tool Spawner, so you can view the entries from the task list.

Position it as shown in the illustration.

Now let’s go back to the Tasklist Editor and take a look at the next functions.
With the two buttons “Add Selected” under Images and Videos, you can select pictures and videos from the Content Browser and assign them to the section using “Add Selected”. These will then be displayed on the info screen.

To illustrate this with an example, go to the folder VRAsssembling/Textures in the Content Browser and select the texture named “ControllerBelegungDeutsch”.

Then, in the Tasklist Editor, press the “Add Selected” button next to Images. The image will then be assigned automatically.

To give you a better idea of what we have already done, we will display a preview. To do this, click on the three dots in the menu bar and select “Simulate”. Then press the Play symbol.

The result should look as follows. Exit the real-time preview by pressing the Stop symbol.

In the preview, we saw the Monitor Section Text and the selected image. Multiple images can also be added one after another by repeating the process. The same applies to the video function. It works in exactly the same way.
In the next step, we will explore the Media Screen function in the Tasklist Editor.

To demonstrate this feature, open the Toolspawner and click on the Media Screen button under Helpers. Place the monitor in the scene as shown in the illustration.

Now return to the Tasklist Editor and assign the Media Screen to the section by clicking on the corresponding button.

If you now start the Simulation Mode again, you should see the Media Screen, which displays the image you previously selected.

The Media Screen is best used when you want to display a graphic or video independently from the actual monitor. This can be useful for reasons of clarity, or to display an image or video at a specific location for safety-related purposes.
In the next step, we will take a look at the Audio function.
In the Content Browser, you can select any .wav audio files and assign them to a section by clicking the Add Selected button.

When the respective section starts in VR, the assigned audio file will automatically play.
Please note: if a task can be completed quickly and the audio file has not finished playing, it will be interrupted by the next section. This ensures that audio instructions do not overlap.
In the next section, we will explain the Robot Spline function. To activate it, open the Toolspawner, navigate to Helpers, and click the button labeled Robot Spline.

Place the Robot Spline above the table and assign it to the section via the Tasklist Editor.

Next, switch back to the Tasklist Editor and click the plus icon on the Robot Chat Text button.

In the textbox below, you can now enter a text that the robot will visually present in the VR scene using speech bubbles. This is particularly useful when the robot text matches the audio file, as it allows you to engage people with different learning preferences on multiple levels.


With the Robot Message Delay parameter, you can define how much time it takes to jump from one line (message bubble) to the next.

Now we have covered all the parameters of the section.
In the next step, we will take a look at creating a Task.
Tasks are used to link them with Actors from the scene. Click the Add Task button to create a new one within the section. You can create as many tasks as needed.

Under Timer Task Title, enter a name that describes the respective task. In our case: “Remove the gear”.
This text will then be displayed next to the numbering (e.g., 1.1) and serves as an overview.

In the Monitor Task Text field, enter the text you would like to see displayed on the monitor in VR. In this case, use the same text as in the previous step.

Now we come to the section where we link the converted Actors in the scene with the task list. Click the plus icon next to Actor.

Now direct your attention to the right side of the Tasklist Editor. Click the Unused button — here you will see all Actors that have not yet been linked to the Tasklist Editor.

Click on the Actor “Gear(1_BP_Slot_holo)” with the left mouse button. The Actor will then attach to your cursor. Drop it into the “No Actor Selected” field on the left side.

The result should look as follows:

Depending on the type of Actor, you will have different features available in the drop-down menu. Since the Gear is a Basic (Moveable) Actor, it can be placed and removed.
In the first step, we wil use "Assembled with Slot"

Save your work and test the scenario in VR. You will need to grab the gear and then place it at the designated location. After this action, the task will be considered completed.
In the next step, we will create another task within this section. Click Add Task and fill in the information as follows:

Then, look at the right section of the Tasklist Editor and click on All Assembling Actors. There you will find the Actor of the gear. Click on it and drop it onto the Create Actor Assignment button.

This time, in the drop-down menu for the Actor, select Disassemble, since we want to remove the gear.

You have now successfully created two tasks within the section.
When multiple tasks are created within a section, they are processed sequentially, from top to bottom. This order can also be adjusted afterwards using the arrows next to the tasks.

Last updated