13 September 2013
This is Dan Saffer's answer on Quora to the question: "What are the basic principles of NUI (Natural User Interface) design?".
Dan has written a whole book on the topic called Designing Gestural Interfaces where you can read a lot more about how to design NUI's.
Source: Answer on Quora
Touch targets need to be much larger than for desktop: 8-10mm for tips, 10-14mm for finger pads.
Don't make users do overextensions or repetitive tasks.
Humans weren't meant to do many tasks with hands up in front of their bodies for long periods of time. Sorry Minority Report.
Fingers are attached to a palm, which can cover the screen while you are trying to do a gesture. Avoid putting essential elements like labels below a control, as it can be obscured by the user's own hand. Place items like menus at the bottom of the screen to avoid this phenomenon.
The kind of touchscreen, sensor or camera determines the kind of gestures you can design for.
Use a simple gesture to get users to start using the system.
A variety of everyday movements on the user's part can accidentally trigger the system. Avoid.
Provide an easy (buttons, sliders, menu items, etc.) ways to access functionality, but provide advanced, learnable gestures as shortcuts.
There's a wide range of ways to perform any gesture. Account for that.
Simple, frequently used tasks should have equally simple gestures to trigger them.
Touch targets need to be much larger than for desktop: 8-10mm for tips, 10-14mm for finger pads.
Don't make users do overextensions or repetitive tasks.
Humans weren't meant to do many tasks with hands up in front of their bodies for long periods of time. Sorry Minority Report.
Fingers are attached to a palm, which can cover the screen while you are trying to do a gesture. Avoid putting essential elements like labels below a control, as it can be obscured by the user's own hand. Place items like menus at the bottom of the screen to avoid this phenomenon.
The kind of touchscreen, sensor or camera determines the kind of gestures you can design for.
Use a simple gesture to get users to start using the system.
A variety of everyday movements on the user's part can accidentally trigger the system. Avoid.
Provide an easy (buttons, sliders, menu items, etc.) ways to access functionality, but provide advanced, learnable gestures as shortcuts.
There's a wide range of ways to perform any gesture. Account for that.
Simple, frequently used tasks should have equally simple gestures to trigger them.