Designing Fluid Interfaces

WWDC 2018

Posted by Den on September 20, 2018 · 16 mins read
Designing Fluid Interfaces

Designing Fluid Interfaces

WWDC 2018

Designing Fluid Interfaces

WWDC 2018

Respond to input instantly

Gestures in Parallel With Thought

  • Faster than thinking before doing
  • 1 gesture solves multiple problems
  • Helps with discovery
  • Allows you to layer gestures at the speed of thought

Respond to redirection as fast as possible

  • Allow for constant redirection and interruption
  • What if it wasn’t redirectable?

How can we detect this pause in Motion ?


Answer: Vertical Finger Acceleration

Maintain spatial consistency throughout movement

😆
😡 not spatially consistent

Hint in the direction of the gesture

3D Touch Hint

Keep touch interactions lightweight but amplify their motion

Softly indicate boundaries

😆
😡

Soft transitions

Design smooth frames of motion

FPS isn’t problem 😲

Tips in low FPS

Make animation look smooth

Work with behavior rather than animation

Make things feel connected to you

  • In Photos, there’s less mass on the photos. It’s conceptually lighter
  • When you swipe apps, there’s more mass on the apps. It’s conceptually heavier. 
    Give more mass to the system

Fluid Interfaces Think Like Us

Summary

  • Instant response and constant redirection
  • Maintain spatial consistency
  • Hint in the direction of the gesture
  • Lightweight interactions, amplified output
  • Soft boundaries and transitions
  • Design smooth, dynamic behavior

Designing with dynamic motion

  • Seamless motion
  • Crafting a character
  • Understanding intent

Seamless Scrolling

  • Familiar, natural motion
  • Maintains throw momentum
  • Friction gracefully reduces speed
  • Imperceptibly comes to rest

Damping

Start Simple, not springy

Example: Send a mail

Reward momentum with overshoot

Bounciness can hint at a little more

Think beyond motion

By combining dynamic behaviors for motion 
with dynamic behaviors for sound and haptics.

Stay in character

Once people learn one behavior of your app, they can pick up another behavior really easily, because we learn through repetition

Intent is expressed through motion

  • Issue: When we’re only looking at position. We’re completely ignoring the momentum of the PIP, and its velocity when it’s thrown.
  • How can we incorporate momentum into deciding which endpoint we go to ?

Designing with Dynamic Motion

Summary

  • Continuous behaviors, not timed animations
  • Draw inspiration from the physical world
  • Springs don’t need to be springy !
  • Align motion with intent

Responding to interaction

  • Design of taps and swipes
  • Principles of fluid interactions
  • Dealing with multiple gestures

Designing a tap

  • The button should highlight immediately when user touches down on it.
  • Create an extra margin around the tap area
  • If user drags finger outside the tap area, and lift it. User can cancel the tap.
    The Same way, if user swipes it back on the button, the button should highlight again.

Designing a swipe

  • We learn to differentiate swipes from other gestures
  • The distance is called hysteresis

Touch and content move together

When swiping or dragging, the contents should stay attached to the gesture.
This is one of the principles of iOS

Provide continuous feedback

UIPanGestureRecognizer ⚠️

  • When implementing your gestures, 
    you should avoid methods that are only detected at the end of the gesture, like UISwipeGestureRecognizer. For fluid experience.
  • Your interfaces must respond to more than 1 gesture.

Combining gestures

Taps are delayed because of double-tap

Responding to Interaction

Summary

  • Design of taps and swipes
  • Content and touch move 1 to 1
  • Provide continuous feedback
  • Detect multiple gestures in parallel

Fluidity as a medium

  • Teaching
  • Visual Cues

Elevate interactive elements to a separate plane

Use behavior to teach gesture

  • It’s best when you have 1 gesture that’s used repeatedly in a bunch of places, and you explain it once up front, and then you just keep using it.

Explanations

Playfulness

  • A natural consequence of a fluid interface
  • Happens when the interface feels in sync with you
  • You feel comfortable exploring new ares
  • Allow people to discover your interface through play

Fluidity as a Medium

  • Design the interactions to be inseparable from the visuals
  • A interactive demo is worth a million static design
  • Prototyping helps you think by exploring
  • Sets a goal for the implementation
  • Hard to copy and gives your app a unique character