Create UI/Widget BP:


R click, Userinterface, Wideget BP
Type Canvas Panel, darg in interface
Drag Border child under Canvas Panel
Drag Vertical Box child under Border (don’t use Border directly as it can only have 1 child)
Drag Button under Vertical Box, child with a Text
Duplicate 2 more

image.png
Padding value for 1st Button as follow:
image.png

Go to Graph (top R corner), add following variables:
image.png
Back to Designer, choose text1, bind as text1 variable in Content
Repeat on text 2 and 3:
image.png
Back to Graph, complie, choose Text1 to 3, set their default values as Press me!
image.png
Delete all 3 defaults nodes in graph
Back to Designer, Button 1 → Event, + On Pressed (all functions in Widget used On Pressed)
image.png
Repeat for button 2 and 3. Now 3 new nodes created in graph
In graph, drag all 3 text variable as SET, name and connect as follow:
image.png

Create Actor BP:

Create new folder called Actor, in which create Actor BP, called UIActor, open it
Add Widget in Component, drag to DefaultSceneRoot (it will replace the Root)
image.png
Change Widget class to simple UI in Details
image.png
Drag the UIActor BP in scene


Create Modifier Player:


Open VR Pawn, viewport
Select WidgetInteractionLeft component (add one if no existed), Details:
Change Trace Channel to WorldDynamic
(repeat on WidgetInteraction Right component too)

(P.S. Pointer index is 0 on left, 1 on right, for different commands)
image.png
Tick show Debug
image.png

Go to VR Pawn Event Graph, Input Action Trigger Left/Right,
Disconnect the left right input trigger nodes,
image.png
reconnect as follow:
image.png

Test in VR preview
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.