Documentation

Interactivity (logic nodes)

Logic is how your experience reacts. In the Nodes tab you wire events (things that happen) to actions (things to do) - no coding needed.

How it works

Each node is a card. You connect an event node's output to an action node's input by dragging a wire between their dots. When the event fires, the connected actions run - and you can chain several actions in a row.

Wire events to actions: here, tapping an object plays an animation.

Right-click the canvas (or use the palette) to add a node. Nodes are colour-coded - events in amber, actions in sky blue.

To work with several nodes at once, hold Shift and drag on empty canvas to box-select, or Shift-click (Ctrl/Cmd-click also works) to add nodes to the selection. A selection moves together when dragged, and Delete removes it - right-click for the same option.

Events

EventFires when…
On Scene Startthe scene first appears (the target is found, or you arrive via Go To Scene).
On Tapthe user taps the object you choose (a 3D object or an on-screen UI Overlay element).
On Collisiontwo chosen objects touch - see Collisions below.

Actions

ActionWhat it does
Go To SceneSwitch to another scene, with an optional transition (fade, scale, slide, spin) and duration.
Play SoundPlay an imported audio clip (optionally looping).
Stop SoundStop a playing sound - every playing copy of the chosen audio clip stops and rewinds.
Play VideoStart playing a chosen video object.
Stop VideoStop a chosen video object and rewind it to the start.
Play AnimationPlay an animation clip on an object (a keyframe clip or a model's embedded animation).
Stop AnimationStop a playing animation, freezing it in place.
Show Object / Hide ObjectReveal or hide an object.
DelayWait a number of seconds before the next action in the chain runs.

Note

Sounds and videos never outlive their scene: when the experience moves to another scene with Go To Scene, everything still playing - including looping sounds - stops automatically.

A worked example

To make an object appear, play a sound, wait, then jump to the next scene when tapped:

  1. Add an On Tap node and choose the object.
  2. Wire it to Show ObjectPlay SoundDelay (2s) → Go To Scene.

Variables, maths & logic

Three more node categories let you build cleverer behaviour - keeping a score, doing a sum, or making a decision. The palette groups them under collapsible headings you can fold away when you are not using them.

A variable is a named value your experience can remember and change while it runs - a score, a counter, or an on/off state. Create variables in the Variables panel on the left: give each a name, a type (Number, Text or True / False), and a starting value. A variable can be scene-local (resets each time its scene begins) or global (shared across scenes for the whole session).

These categories work with two kinds of wire:

  • Flow wires (as before) decide what runs next.
  • Value wires carry a number, text or true/false value from one node's output into another's input - shown in blue below.
Value wires (blue) feed data into nodes; here each tap adds 1 to the score.
CategoryNodes
VariablesSet Variable (put a value into a variable) and Get Variable (read its current value).
OperatorsValue (a fixed value), Math (add / subtract / multiply / divide / remainder), Compare (equal, less than, greater than… → true/false), and And / Or / Not.
LogicIf (run the True or False branch), While (repeat while a condition holds), and For (count from a start to an end value).

To show a variable on screen, add a Text element in the UI Overlay and set its Show variable (live) option - the text then displays the value and updates the instant it changes, perfect for a live score.

Note

Variable changes and If / While / For decisions happen immediately as the logic runs. A Delay only holds back the actions after it - not a variable being set or a condition being checked. Loops are also safety-capped so an experience can never freeze.

Collisions: when two objects touch

The On Collision event fires when two objects bump into each other.

  1. Select each object and tick Collisions in the Inspector - both objects need it on.
  2. Add an On Collision node and choose Object A and Object B.
  3. Wire it to whatever should happen - a sound, a score change, a scene switch.
On Collision fires once when two collidable objects' boxes touch.

It fires once when the objects' boxes first overlap, and again only after they separate and touch once more - so holding them together won't retrigger it. The order of A and B doesn't matter. Collisions are for 3D scene objects, not on-screen UI Overlay elements.

Note

If you delete an object or scene that a node points at, AR Works clears that reference and shows a warning badge on the node, so it is obvious the node needs re-pointing rather than silently doing nothing.

Tip

Use Preview to test your logic instantly - tap objects right in the browser.