GesturesLib

A collection of pre-defined gestures. "Express..." gestures reference a single action or frame, whereas "Perform..." ones are more of real gestures, often a bit longer.

Examples :

furhat.gesture(GesturesLib.ExpressHappiness1())
furhat.gesture(GesturesLib.PerformWakeUpWithHeadShake)

Functions

Link copied to clipboard
fun ExpressAnger1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An angry gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressAnger2(strength: Double = 1.0, duration: Double = 1.0): Gesture

An angry gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressAnger3(strength: Double = 1.0, duration: Double = 1.0): Gesture

An angry gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressConfusion1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A confused gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressConsidering1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A light-hearted stalling gesture, with the lower lip out, sideways glance, and a slight smile. "Oh, I don't know... Of course, I will!" REQUIRES FaceCore

Link copied to clipboard
fun ExpressDetermination(strength: Double = 1.0, duration: Double = 1.0): Gesture

A determined face, or to express concentration. "Let's dig in." REQUIRES FaceCore

Link copied to clipboard
fun ExpressEmpathy(strength: Double = 1.0, duration: Double = 1.0): Gesture

A sad smile to express empathy. "As much as it hurts, putting your dog down was the right decision." REQUIRES FaceCore

Link copied to clipboard
fun ExpressFear1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An expression of fear. REQUIRES FaceCore

Link copied to clipboard
fun ExpressFedUp(strength: Double = 1.0, duration: Double = 1.0): Gesture

A fed up face, that is mildly frustrated or apologetic. "Really, this again?" REQUIRES FaceCore

Link copied to clipboard
fun ExpressGazeAversion1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An light-hearted gaze aversion/eye roll, with a slight smile. "Oh, that sounds like Jimmy!" REQUIRES FaceCore

Link copied to clipboard
fun ExpressGazeAversion2(strength: Double = 1.0, duration: Double = 1.0): Gesture

An apologetic gaze aversion/eye roll, with an uncomfortable smile. "It is what it is, you know." REQUIRES FaceCore

Link copied to clipboard
fun ExpressGuilt1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A sulking/guilty stalling gesture, with an averted gaze and a pouting lip movement. "But he hit me first..." REQUIRES FaceCore

Link copied to clipboard
fun ExpressHappiness1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A happy gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressInterest1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A fairly neutral gesture to express increased interest. "And then what happened?" REQUIRES FaceCore

Link copied to clipboard
fun ExpressIrritation1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An irritation gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressIrritation2(strength: Double = 1.0, duration: Double = 1.0): Gesture

An irritation gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressPleased1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A pleased gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressRecall(durationMillis: Int = 2000): Gesture

Recall a memory eye movement

Link copied to clipboard
fun ExpressRecallDown(durationMillis: Long = 2000): Gesture

Hesitate while recalling something

Link copied to clipboard
fun ExpressSadness1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A sad gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressSarcasticLaugh(strength: Double = 1.0, duration: Double = 1.0): Gesture

A sarcastic laugh, for when you're not actually that amused. "Ah-hah, you're so funny... You snitch." REQUIRES FaceCore

Link copied to clipboard
fun ExpressShock1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An expression of shock. REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmile1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A variation of the standard smile. REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileApologetic1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A smile to express an apology. "I'm so sorry about your troubles, it won't happen again. Have a free refill on us." REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileApologetic2(strength: Double = 1.0, duration: Double = 1.0): Gesture

A smile to express an apology. "I really didn't mean to spill my drink over you, sir!" REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileAstonished(strength: Double = 1.0, duration: Double = 1.0): Gesture

A smile to express astonishment, as if taking part of some interesting gossip. "I can't believe he did that - although I'm sure you loved it!" REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileCongratulatory1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A warm smile with eyelid movement. REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileCongratulatory2(strength: Double = 1.0, duration: Double = 1.0): Gesture

A toothy, loose smile with eyelid and eyebrow movement. REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileLaughing1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An over the top smile for when you're cracking up. "Hah, I that one really got me!" REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileSide1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A random smile. REQUIRES FaceCore

Link copied to clipboard
fun ExpressSmileUnsure1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A slightly unsure or surprised smile. "Yes, I did! How did you know?" REQUIRES FaceCore

Link copied to clipboard
fun ExpressSurpriseMild1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A gesture to express mild surprise. "Oh, I thought she'd be home." REQUIRES FaceCore

Link copied to clipboard
fun ExpressSurpriseMild2(strength: Double = 1.0, duration: Double = 1.0): Gesture

A gesture to express mild surprise. "Hm, that's an inconvenience. Guess I'll call Bob to let me in." REQUIRES FaceCore

Link copied to clipboard
fun ExpressSurpriseSad(strength: Double = 1.0, duration: Double = 1.0): Gesture

A gesture to express sad empathy, with an element of surprise. "Oh, I really didn't think that would happen..." REQUIRES FaceCore

Link copied to clipboard
fun ExpressSympathy1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A mild sympathetic gesture, e.g. while listening. "I'm sorry to hear you missed your bus!" REQUIRES FaceCore

Link copied to clipboard
fun ExpressSympathy2(strength: Double = 1.0, duration: Double = 1.0): Gesture

A sympathetic face, with a small puckering of the lip. "Yeah, I know... It is what it is." REQUIRES FaceCore

Link copied to clipboard
fun ExpressSympathyConcerned(strength: Double = 1.0, duration: Double = 1.0): Gesture

A gesture to express concerned sympathy. "Are you doing all right, with your sprained ankle?" REQUIRES FaceCore

Link copied to clipboard
fun ExpressThinking(strength: Double = 1.0, duration: Double = 1.0): Gesture

A gesture to express thinking or recalling something. "Hm, yes, I think he lives on Sesame Street." REQUIRES FaceCore

Link copied to clipboard
fun ExpressTiredness1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A tired gesture. REQUIRES FaceCore

Link copied to clipboard
fun ExpressUncertaintyOrDiscomfort(strength: Double = 1.0, duration: Double = 1.0): Gesture

A gesture to express uncertainty or mild discomfort. "I don't know, Mom said I have to be home by sunset." REQUIRES FaceCore

Link copied to clipboard
fun ExpressUnconvinced(strength: Double = 1.0, duration: Double = 1.0): Gesture

A slightly negative gesture to express being unconvinced. Could also be used to signal slight disapproval or concern. "I don't know... Is there another way?" REQUIRES FaceCore

Link copied to clipboard
fun ExpressWarmSmile1(strength: Double = 1.0, duration: Double = 1.0): Gesture

A big, warm smile with lots of eyelid movement. REQUIRES FaceCore

Link copied to clipboard
fun ExpressWhatThe1(strength: Double = 1.0, duration: Double = 1.0): Gesture

An incomprehension gesture. REQUIRES FaceCore

Link copied to clipboard
fun PerformBigSmileWithDelay(delay: Double = 0.01, strength: Double = 1.0, duration: Double = 1.0): Gesture

A Big Smile after a delay, i.e. for when the smile should happen at a specific time in a sentence.

Link copied to clipboard
fun PerformDoubleNod(duration: Double = 1.0): Gesture

A double nod

Link copied to clipboard
fun PerformHeadDown(): Gesture

A high priority gesture to face the ground with the head. The priority is set to 10.

Link copied to clipboard
fun PerformHeadeUp(): Gesture

A high priority gesture to reset the neck tilt of the head. The priority is set to 10.

Link copied to clipboard
fun PerformWinkAndSmileWithDelay(delay: Double = 0.01, strength: Double = 1.0, duration: Double = 1.0): Gesture

A combined wink and smile done after a delay, i.e. for when the gesture should happen at a specific time in a sentenc.

Link copied to clipboard
fun PerformWinkWithDelay(delay: Double = 1.0, strength: Double = 1.0, duration: Double = 1.0): Gesture

A wink done after a delay, i.e. for when the wink should happen at a specific time in a sentence like in a joke.

Link copied to clipboard
fun SmileRandom(): Gesture

A random smile. REQUIRES FaceCore

Properties

Link copied to clipboard
val PerformBigSmile1: Gesture

A smile gesture. REQUIRES FaceCore

Link copied to clipboard
val PerformDoubleNod: Gesture

Helper function that lets you grab DoubleNod as a value rather than as a function.

Link copied to clipboard
val PerformEyeBrows1: Gesture

Cheeky gesture raising the eyebrows three times. REQUIRES FaceCore

Link copied to clipboard

Falling asleep, head tilts down and Furhat closes eyes persistently Note that this needs to be followed by a gesture specifically opening the eyes, or they will remain closed. The priority may need to be set to 1 or higher to avoid opening the eyes while sleeping though.

Link copied to clipboard
val PerformFear1: Gesture

Expresses fear. REQUIRES FaceCore

Link copied to clipboard
val PerformIntenseShake: Gesture

Furhat quickly shakes back and forth multiple times

Link copied to clipboard
val PerformMouthSide1: Gesture

Gesture moving the mouth to the right side. REQUIRES FaceCore

Link copied to clipboard
val PerformOhYeah1: Gesture

A cheeky gesture. REQUIRES FaceCore

Link copied to clipboard

Furhat reads a word in the air as if looking up at a sign

Link copied to clipboard
val PerformSad1: Gesture

A sad gesture. REQUIRES FaceCore

Link copied to clipboard
val PerformSceptical1: Gesture

A sceptical gesture. REQUIRES FaceCore

Link copied to clipboard
val PerformShock1: Gesture

Express shock. REQUIRES FaceCore

Link copied to clipboard
val PerformSmile1: Gesture

A smile. REQUIRES FaceCore

Link copied to clipboard
val PerformThoughtful1: Gesture

A thoughtful gesture. REQUIRES FaceCore

Link copied to clipboard
val PerformThoughtful2: Gesture

A thoughtful gesture. REQUIRES FaceCore

Link copied to clipboard
val PerformTripleBlink: Gesture

Blink three times

Link copied to clipboard

The head shakes back and forth as Furhat wakes up. Best when starting with the eyes closed

Link copied to clipboard
val PerformWhat1: Gesture

A questioning gesture. REQUIRES FaceCore