SceneNode \ Assembly
These are event nodes for SimLab’s VR assembly system. Each one watches a single part and fires the moment something happens to that part in the assembly — for example the moment it becomes fully assembled, or the moment it becomes this part’s turn to be put on. You wire the event’s output to whatever should happen in response.
Unlike an action you run in a sequence, an event runs on its own — it has no Execute input. Every node on this page works the same way:
- Enable (true/false) switches the event on or off. It is on by default; set it to
falseto stop the event from firing. - SceneNode (input) is the part to watch.
- Execute (output) fires once each time the event happens — wire it to what should happen next.
- SceneNode (output) hands the same part back, so you can act on it in your response.
In a VR assembly, parts go together and come apart in a set order, and a part can be fully assembled (in place and secured), partially assembled (seated but not yet secured), or fully disassembled (all the way out). These events let your scene react the instant a part reaches one of those points, or the instant it becomes — or stops being — the part that may be added or removed next.
To read or set a part’s assembly state on demand instead of reacting to it, see the SceneNode \ Assembly page; to continuously check a part’s state as a true/false condition, see the Assembly page.
What’s on this page
- Node Assembled — fires when a part becomes fully assembled.
- Node Disassembled — fires when a part becomes fully disassembled.
- Node Can be Assembled — fires when it becomes this part’s turn to be put on.
- Node Can Not be Assembled — fires when the part is no longer the one allowed to be put on next.
- Node Can be Disassembled — fires when it becomes this part’s turn to be taken off.
- Node Can Not be Disassembled — fires when the part is no longer the one allowed to be taken off next.
When a part is fully assembled or fully taken apart
Node Assembled
Fires the moment a part finishes being fully assembled into its place in an assembly.
What it does
This event keeps an eye on one part of your assembly. As soon as that part is put fully into place — seated and secured in its spot — the event fires on its own. It does not run as a step in a sequence; it simply watches and waits, then reacts.
When it fires, it hands the same part straight back out so you can act on it right away — for example, play a sound, show a “Step complete” message, or light up the next part to install. Watching a part this way doesn’t change it in any way.
Inputs
| Port | Type | What to connect |
|---|---|---|
| Enable | True / false | Switches this event on or off. Leave it on (the default is true) to watch for the part being assembled. Set it to false to turn the event off — while off, it will not fire. |
| SceneNode | Scene node | The part you want to watch. Connect the part from your assembly that should trigger this event when it is fully put into place. |
Outputs
| Port | Type | What you get |
|---|---|---|
| Execute | Trigger | Fires once each time the watched part becomes fully assembled. Connect it to whatever should happen next. |
| SceneNode | Scene node | The same part you were watching, handed back so you can use it in the steps that follow. |
Example
| Enable input | true |
| SceneNode input | The Front Wheel part of your assembly |
| Execute output | Fires the instant the Front Wheel is fully assembled |
| SceneNode output | Hands back the Front Wheel so you can highlight it or play a confirmation sound |
Tips
- You don’t need to start this event from another node — it watches the part and fires by itself the moment the part is fully assembled.
- Connect the SceneNode output to the next action so it works on the exact part that was just put into place.
Node Disassembled
Fires the moment a part in a VR assembly becomes fully taken apart — all the way out of place, not just loosened.
What it does
This node watches one part and waits for it to become fully disassembled. In SimLab’s assembly system a part moves through three stages — think of a screw: tightened down (fully assembled), dropped into place but not tightened (partially assembled), or all the way out (fully disassembled). The instant the part reaches that last stage — completely out of place — this node fires on its own.
It does not run as a step in a sequence and it never moves or changes the part — it only watches and reacts. When the part comes all the way out, the Execute output fires once and hands the same part back on its SceneNode output, so you can act on it in your response — for example mark a disassembly step complete or play a sound. You can switch the watching on or off with the Enable input.
Inputs
| Port | Type | What to connect |
|---|---|---|
| Enable | True / false | Switches this event on or off. It is on by default (true), so you can leave it unconnected. Set it to false — or feed it a true/false value from elsewhere — when you want to stop the event from firing; while it is false the node ignores the part coming apart. |
| SceneNode | Scene node | The part you want to watch — for example a Bolt_01 object from your assembly. The node fires the moment this part becomes fully disassembled. |
Outputs
| Port | Type | What you get |
|---|---|---|
| Execute | Trigger | Fires once each time the watched part becomes fully disassembled — the instant it comes all the way out of place. Wire this to whatever should happen next, such as marking the step done, playing a confirmation sound, or moving on to the next part. |
| SceneNode | Scene node | Hands back the same part you were watching, so you can act on it in your response — for example pass it on to a node that hides it or highlights it. It is the same object you connected to the input, unchanged. |
Example
| SceneNode input | Bolt_01 |
| Enable input | true — the event is watching (leave it unconnected for the same result) |
| Execute output | Fires the instant Bolt_01 is backed all the way out — you could use it to mark the disassembly step complete and play a confirmation sound |
| SceneNode output | Bolt_01 — the same part, ready to pass on to whatever acts on it next |
Tips
- This event fires once, at the moment the part comes fully out — not continuously while it stays out. If you instead need the current “is it fully out?” answer as a true/false value at any time, use the matching Node Fully Disassembled state node on the Assembly page.
- A part that is only loosened or seated but not all the way out does not fire this event — it fires only when the part is completely disassembled.
- Use the Enable input to turn the event off during parts of your scene where a part coming apart shouldn’t trigger anything.
When a part becomes ready (or stops being ready)
Node Can be Assembled
Fires on its own the moment a part in a VR assembly becomes ready to be put on next — that is, when it finally becomes this part’s turn in the assembly order.
What it does
In a VR assembly, parts go on in a set order, and some parts can only be added once the parts before them are already in place. This event keeps an eye on the one part you connect and waits for the moment it becomes ready — the instant everything that has to come before it is assembled, so it is now this part’s turn. The event does not run as part of a sequence; it watches quietly on its own and goes off by itself at that exact moment.
When that moment arrives, the event fires once and hands you back the same part you connected, so you can act on it right away — for example highlight it or show a hint that it is ready to be fitted next. It only watches and reacts; it never assembles the part or changes anything in your scene. You can switch the event off and on with the Enable input.
Inputs
| Port | Type | What to connect |
|---|---|---|
| Enable | True / false | Switches the event on or off. It is on by default, so you can usually leave it alone. Connect a true/false value if you want to turn the event off at certain times — while it is false, the event will not fire even when the part becomes ready. |
| SceneNode | Scene node | The part you want to watch — for example a Bolt_01 object from your assembly. The event fires the moment this part becomes allowed to be assembled next. |
Outputs
| Port | Type | What you get |
|---|---|---|
| Execute | Trigger | Fires once each time the part becomes ready to be assembled — the instant the last part that had to come before it is finally in place. Wire this to whatever should happen then, such as highlighting the part or showing a “fit this next” hint. |
| SceneNode | Scene node | Hands back the same part you connected, so you can act on it in whatever runs next — for example pass it straight into a node that highlights or selects it. |
Example
| SceneNode input | Bolt_01 |
| Enable input | true — the event is watching (the default) |
| Execute output | Fires the instant the Housing and Gear that come before Bolt_01 are in place — it is now the bolt’s turn, so you could highlight it to guide the trainee to fit it next |
| SceneNode output | Hands back Bolt_01 so you can highlight or select that exact part |
Tips
- This event fires only at the moment the part becomes ready — not over and over while it stays ready. If the part is already ready when your scene starts, the event waits until the answer leaves and returns to ready before firing again.
- Leave Enable on for normal use. Connect a true/false value to it only when you want to silence the event during certain parts of your scene.
- This event only reacts to readiness — it never assembles the part. Combine it with your assembly steps to guide the trainee through the parts in the right order.
Node Can Not be Assembled
Fires on its own the moment a part in a VR assembly is not allowed to be put on next — that is, when it is not yet this part’s turn in the assembly order.
What it does
In a VR assembly, parts go together in a set order, and a part can only be added once the parts that come before it are already in place. This event watches one part and waits for the moment it becomes not ready to be assembled — for example, an earlier part it depends on is still missing or has just been taken back off, so it is no longer this part’s turn. When that happens, the event fires once on its own and hands you back the same part so you can react.
You don’t run this event yourself and you don’t wire anything into it from an earlier step — it simply listens while your scene plays and fires the instant the part stops being allowed to go on next. It only watches; it never assembles the part or changes anything in your scene. Use the Enable input to switch the watching on or off, and connect the Execute output to whatever should happen at that moment, such as hiding a hint or dimming the part’s highlight.
Inputs
| Port | Type | What to connect |
|---|---|---|
| Enable | True / false | Switches this event on or off. It is on by default, so the event watches the part and fires when the moment comes. Connect a true/false value to turn the watching off — while it is off (false), the event will not fire, no matter what happens to the part. |
| SceneNode | Scene node | The part you want to watch — for example a Bolt_01 object from your assembly. The event fires when this part becomes not allowed to be assembled next. |
Outputs
| Port | Type | What you get |
|---|---|---|
| Execute | Trigger | Fires once each time the part becomes not allowed to be assembled next — the instant it stops being this part’s turn. Wire this to whatever should happen then, such as hiding a “fit this next” hint or turning off the part’s highlight. |
| SceneNode | Scene node | Hands back the same part you were watching, so you can act on it in response — for example pass it straight into a node that hides it or changes its color. The part itself is not changed. |
Example
| Enable input | true — the event is watching (the default) |
| SceneNode input | Bolt_01 |
| Execute output | Fires the instant Bolt_01 is no longer the part allowed to go on next — for example the Gear that has to come before it has just been taken back off. You could hide the “fit the bolt” hint until its turn comes around again. |
| SceneNode output | Bolt_01 — the same part, ready to send into the node that turns off its highlight |
Tips
- This is the opposite of Node Can be Assembled: that event fires when it becomes the part’s turn to go on, and this one fires when it stops being its turn. Use the two together to highlight a part the moment it is ready and clear the highlight the moment it isn’t.
- Set Enable to
falsewhen you want to stop reacting — for example once a guided step is finished — so the event no longer fires. - This event only reports; it never assembles the part or moves it. Pair it with your normal assembly steps to guide the trainee through the parts in the right order.
Node Can be Disassembled
Fires on its own the moment a part in a VR assembly becomes the next one allowed to be taken off.
What it does
In a VR assembly, parts come apart in a set order — some parts can only be removed once the parts on top of them have already been taken off. This node keeps an eye on one part you choose and waits for the moment it becomes that part’s turn to be removed: when everything that had to come off before it is already off, the event fires.
It fires by itself the instant that happens — you don’t run it from another node. Each time it fires, it also hands you back the part it is watching, so you can act on that exact part in response (for example, highlight it to guide the trainee). It only watches and reacts — it never moves or takes apart the part itself.
Inputs
| Port | Type | What to connect |
|---|---|---|
| Enable | True / false | Switches the event on or off. It is on (true) by default, so you can usually leave it alone. Set it to false when you want to ignore this event for a while — while it is off, the event will not fire. |
| SceneNode | Scene node | The part you want to watch — for example a Bolt_01 object from your assembly. The event fires when this part becomes the next one allowed to be taken off. |
Outputs
| Port | Type | What you get |
|---|---|---|
| Execute | Trigger | Fires once the moment it becomes this part’s turn to be taken off — that is, when the last part that had to come off before it is finally removed. Wire this to whatever should happen next, such as highlighting the part or showing a hint. |
| SceneNode | Scene node | The same part you connected on the way in, handed back so you can act on it right away — for example pass it into a node that highlights it or shows its name. |
Example
| SceneNode input | Bolt_01 |
| Enable input | true — the event is on and watching |
| Execute output | Fires the instant the Cover that sits over Bolt_01 is removed — the bolt is now the next part allowed to come off, so you could highlight it to guide the trainee to remove it next |
| SceneNode output | Bolt_01 — handed back so you can highlight it or show its name |
Tips
- This is an event — it fires on its own when the part’s turn comes. You don’t connect it after another node; instead you connect its Execute output to what should happen.
- Use the SceneNode output rather than naming the part again downstream — it is already the exact part the event watched.
- To pause this event for part of your scene, set Enable to
false; set it back totrueto start watching again.
Node Can Not be Disassembled
Fires the moment a part stops being the one allowed to be taken off next in the assembly order.
What it does
In a SimLab assembly, parts come apart in a set order, and at any moment only certain parts are allowed to be removed. This event watches the part you connect and fires on its own the instant that part is no longer the one allowed to be taken off next — for example, when an earlier part that had to come off before it is put back, so it is no longer this part's turn to remove.
It does not watch for the user trying to remove the part, and it does not change anything in the scene. It simply notices the change in the order and hands you back the same part so you can react — show a hint, lock something, play a sound, or update a score.
Inputs
| Port | Type | What to connect |
|---|---|---|
| Enable | True / false | Switches the event on or off. Leave it true (the default) to have it watch the part. Set it to false to turn the event off so it will not fire. |
| SceneNode | Scene node | The part you want to watch — the assembly piece whose turn-to-be-removed you care about. |
Outputs
| Port | Type | What you get |
|---|---|---|
| Execute | Trigger | Fires once each time the watched part stops being the one allowed to be taken off next. Wire it to whatever should happen in response. |
| SceneNode | Scene node | Hands back the same part you were watching, so you can act on it in your response. |
Example
| SceneNode input | Brake Caliper |
| Enable input | true |
| Execute output | Fires the moment the Brake Caliper is no longer allowed to be taken off next — for instance, after the Mounting Bolt that comes off before it is put back on. |
| SceneNode output | Brake Caliper — ready to dim, lock, or show a “not yet” hint on. |
Tips
- This is an automatic event — it fires on its own when the order changes. You do not need to trigger it from another node.
- Use it together with Node Can be Disassembled to react both when a part becomes allowed to be removed and when it stops being allowed.
- To pause this event during part of your scene, feed the Enable input a
falsevalue; switch it back totrueto resume watching.
No Comments