Components

Approach

It's a welcoming action where you approach, stop, and match the user's eye level.It's used when the user is returning home or calling the robot.

Open in Labpure.jsonFigmaVideo

Robot

Approach is made of three modals. Each modal maps to a part of the robot, and a modal without that part follows a fallback rule.

  • Jointless Driving
  • Joint Driving
  • Joint Fixed
  • Joint Walking
  • Full-body

Intensity

It depends on how close I should get. I choose based on who the other person is and how long we've been apart.

Light
3 cmInterest
approach.l
Normal
6 cmMeeting
approach.n
Strong
10 cmOwner
approach.s

Time Line

Each modal is assigned a specific part of the robot, and any modal that lacks a part follows alternative rules.

0 s2.2 s
Sound
chirp
Face
Soft
Motion
Nod*2Pause

Variant

Variants only change the combination of tokens, not the meaning.

VariantChangeWhen
OwnerApproach.L + longer pausewhen the owner returns home
StrangerUse keep distanceunknown person
VehicleSlowly rolling + lighting2–4 DoF
No displayMovement size +20%no face screen

State

The robot's status overrides or weakens its actions.

  • Idleplay as is
  • Quiet hourssound −12dB
  • Low batteryapproach.Light
  • Held / In-airOmit → Moving
  • ErrorStop + Face

Token Spec

The token name is the same as Primitive tokens.

StateTrackTokenValue
enabledmotionanticBack 2–3° · 100 ms
enabledmotionapproach.m6 cm · ease-out
enabledmotionpause.m300 ms
enabledmotiontilt.sUp 6° · eye level
enabledfaceeye-size0.30
enabledfaceblink-rate1 time when stopped
enabledsoundtimbre · lengthbright · 0.3 s · 100 ms first
quiet hourssoundvolume−12 dB
heldalloverride→ Moving