|
VR Training Builder is a tool that allows users to create interactions inside the VR Viewer. Creating a simple interaction in the Training Builder requires the use of a Scene Node, an Event and a Response. For example when the VR viewer enters a specific area, an alarm sound plays. Inputs can take the form of a Scene State, an Animation Sequence, a Scene Object, or an Action. Functions include events and responses that are logically combined using Boolean operations. For ease of use, functions are created using diagrams of smart blocks and connections that link the corresponding components together in a visual scripting manner.
|
|
The Scene Node defines which object in the scene is the actor in the event system, but in some cases there might be a large number of objects, which requires the creation of separate events system for each one, and that is inconvenient.
This can be solved by the use of Template Node in SimLab Composer, instead of the regular scene node. The Add Template button in Training Builder is as shown in the image below. Refer to this article to learn more about Template Nodes.
|
|
|
|
The tutorial below shows how to use Template Nodes in VR.
|
|
|
|
Getting Started
|
|
When a user selects the “Training Builder” option from the “VR Workbench” ribbon, the dialog box shown below will appear. It contains the following options:
1) the current/selected Diagram.
2) create a new diagram.
3) edit Variables and initial values.
4) remove selected diagram.
5) all needed Inputs, events and responses functions and Boolean operations.
6) Unlimited work area.
7) Help.
|
|
|
|
To better understand this system, it should be read as an "If-then" statement. The user can add nodes, events, response functions and Boolean operations by clicking on them or by dragging and dropping into the work area. The connection lines define the information flow of inputs - blocks - events.
|
|
|
|
Icons
|
Inputs list
|
|
Icons
|
Events List
|
|
Icons
|
Responses List
|
|
Icons
|
Booleans List
|
|
Sequence
|
|
|
Scene Start
|
|
|
Apply Scene State
|
|
|
Variable Equals String
|
|
Scene State
|
|
|
Scene State Applied
|
|
|
Play Sequence
|
|
|
Objects Overlap
|
|
Scene Node (object)
|
|
|
Sequence Ended
|
|
|
Show/Hide
|
|
|
Object is Grabbed
|
|
String
|
|
|
Node Entered Node
|
|
|
Teleport to Camera
|
|
|
And Operation
|
|
Variable
|
|
|
Node Exited Node
|
|
|
Sound Action
|
|
|
Or Operation
|
|
Action
|
|
|
Node Triggered
|
|
|
Change Node Grabable State
|
|
|
Not Operation
|
|
Boolean
|
|
|
Node Grab Started
|
|
|
Stop Sequence
|
|
|
|
|
|
|
|
Node Grab Ended
|
|
|
Show Message Box
|
|
|
|
|
|
|
|
Delay
|
|
|
Change Node Action
|
|
|
|
|
|
|
|
|
|
|
Video Action
|
|
|
|
|
|
|
|
|
|
|
Advanced Change Variable Value
|
|
|
|
|
|
|
|
|
|
|
Branch
|
|
|
|
|
|
|
|
|
|
|
Get Attribute Value
|
|
|
|
|
|
|
|
|
|
|
Set Attribute Value
|
|
|
|
|
|
|
|
|
|
|
Glow Object
|
|
|
|
|
|
|
|
|
|
|
Unglow Object
|
|
|
|
|
|
|
|
|
|
|
Point To Object
|
|
|
|
|
|
|
|
|
|
|
Remove Point To Object
|
|
|
|
|
|
|
|
|
|
|
Get Position
|
|
|
|
|
|
|
|
|
|
|
Set Position
|
|
|
|
|
|
|
|
|
|
|
Fall to Surface
|
|
|
|
|
|
|
|
|
|
|
Reset Rotation
|
|
|
|
|
|
|
|
1. Lets make a simple exercise using the Training Builder. The main aim of the exercise is to run an alarm system (light and buzzer) when the Viewer enters a specific area. To do so, we need to select "Node Entered Node" from Events. Then we add two nodes from the “Inputs” box: The first one is for the user, and the second is for the specific area.
|
|
|
|
|
|
2. Select the Viewer Start Position from the objects tree or directly from 3d area and press on this icon to pick it into the first node, and select the specific area (you can make a specific area by create a box and make Alpha value equal zero for its material) and pick it into the second node.
|
|
|
|
|
|
3. To connect the two nodes with "Node Entered Node" event just hold press on the red point from first node and drop it in the "SceneNodeA" red point in "Node Entered Node" event, and the second node with the "SceneNodeB" red point as shown in the image below.
|
|
|
|
|
|
4. The two nodes are connect with the "Node Entered Node" event as shown below.
|
|
|
|
|
|
5. Now we need to add two different response functions: "Play Sequence" to start the light animation (you need to create an animation sequence before) and "Play Sound" for buzzer, also add two inputs "Sequence" and "Sound File" to pick the light animation and the buzzer sound effect files on them. Connect these inputs blocks with response functions, and "Node Entered Node" event with these two response functions by the same way in the step 3.
|
|
|
|
|
|
-
In edit variables and initial values dialog below, user can define infinite number of variable and get a values for them, the variable values must begin with letters and can only contain letters, numbers and underscores, These variables can be used to maintain certain conditions such as the status of doors (closed/open) windows, garage (empty/busy), engine (working/not working) and many similar examples, then these variables can changes with event functions into VR Viewer.
|
|
|
|
|
|
The video below shows an example of using VR Training Builder.
|
|
|
|