SceneNode \ Grab These events fire when a user picks up or lets go of a scene object in VR. Use them to react the moment an object is grabbed or released — for example to highlight a tool when it is held, or reset it when it is put down. Each event also tells you which user did it. Grab events Node Grab Started Reacts the moment a user picks up (grabs) a chosen object in your scene. What it does This is an event. It doesn’t wait for another node to start it — it watches a specific object in your scene and fires on its own the instant a user grabs that object. This is the ideal place to begin an action that should happen when someone first takes hold of something, like a tool, a handle, or a part to assemble. Each time the grab happens, the node hands you the object that was grabbed and the user who grabbed it, so you can react to exactly who did what. It only watches while its Enable input is true — turn that off and the event stops listening. Inputs Port Type What to connect Enable True / false While this is true the event is active and listening for the grab; set it to false to switch the event off. If you leave it unconnected it stays on. SceneNode Scene node The object in your scene to watch. The event fires when a user grabs this object. (The viewer start position can’t be used here.) Outputs Port Type What you get Execute Trigger Fires when the chosen object is grabbed. Wire this onward to the action you want to start. SceneNode Scene node The object that was grabbed — the same one you chose to watch. User User The user who grabbed the object, so you can tell who performed the action. Example SceneNode input Wrench Enable input true Execute output Fires the moment a user picks up the wrench SceneNode output Wrench User output Trainee 1 Tips Pair this with Node Grab Ended to know both when the user takes hold of the object and when they let go. Use the User output in a multi-user session to react only to the person who actually grabbed the object. Node Grab Ended Reacts the moment someone lets go of an object they were holding in your scene. What it does This node watches a scene object and fires the instant a user releases their grip on it — the end of a grab. It runs on its own; you don’t wire it after another node. As long as its Enable input is true, the node stays on the lookout. Each time a grab on the watched object ends, the node fires and tells you which object was let go and which user let go of it. Use it to react when a tool is set down, a part is dropped into place, or a handle is released — for example, snapping an object to a holder, playing a sound, or scoring a step in a training task. Watching for the release doesn’t change the object in any way; it simply notices the moment it happens. Inputs Port Type What to connect Enable True / false Turns the watch on or off. While this is true the event is active; set it to false to switch the event off. Leave it true if you always want to react to releases. SceneNode Scene node The object in your scene to watch. The node fires when a user lets go of this object. (The viewer’s start position can’t be used here.) Outputs Port Type What you get Execute Trigger Fires each time someone lets go of the watched object. Wire this to whatever should happen next. SceneNode Scene node The object that was just released — the same object you were watching. Handy when the same logic watches more than one object. User User The person who let go of the object, so you can react to who performed the action. Example Enable input true SceneNode input Your Wrench object Execute output Fires the moment the wrench is let go — wired to snap it back onto the tool rack SceneNode output The Wrench that was released User output The trainee who set the wrench down Tips Pair this with Node Grab Started to handle both ends of an interaction — one reacts when an object is picked up, this one when it’s put down. To stop reacting to releases for a while (for example during a cutscene), feed Enable a false value, then set it back to true when you want the watch to resume.