Spring 20116.813/6.831 User Interface Design and Implementation1 Lecture 24: Animation HW2 out, due next Sunday look for your evaluation assignment on.

Slides:



Advertisements
Similar presentations
2.02B Methods and Uses of Animation
Advertisements

1What is the Stage. 2How do you open a panel in Flash
DBSYSTEMS 1 of 23 Chapter 6 DB System Development: Forms and Reports 1 Based on G. Post, DBMS: Designing & Building Business Applications University of.
Spring /6.831 User Interface Design and Implementation1 Lecture 10: Layout.
Sketchify Tutorial Timers sketchify.sf.net Željko Obrenović
6/13/20151 CS 160: Lecture 13 Professor John Canny Fall 2004.
1 7M836 Animation & Rendering Animation Jakob Beetz Joran Jessurun
1 1cs426-winter-2008 CS 426: Computer Animation. 2 2cs426-winter-2008 Contact  Robert Bridson,  Office hours: TBD.
Macromedia Flash MX 2004 – Design Professional Animations CREATING.
Sketchify Tutorial Graphics and Animation in Sketchify sketchify.sf.net Željko Obrenović
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September 2010 First experience in teaching HCI course Dusanka.
Animation IS 247: Information Visualization and Presentation Saifon Obromsook Linda Harjono.
Graphic Design Christine Robson October 23, 2007.
Other Interaction Styles: Direct Manipulation, Haptic, Multimedia, Multimodal, Virtual Reality, Video Games Dr.s Barnes and Leventhal.
Chapter 8 – Part I Interactive Multimedia Authoring with Flash: Animation “Computers and Creativity” Richard D. Webster, COSC 109 Instructor Office: 7800.
User Centered Design Lecture # 5 Gabriel Spitz.
CSC 8610 & 5930 Multimedia Technology Lecture 7 Animation Techniques.
Spring /6.831 User Interface Design and Implementation1 Lecture 6: User-Centered Design GR1 (project proposal & analysis) released today, due.
Spring /6.831 User Interface Design and Implementation1 Lecture 8: Generating Designs.
User Interface Programming in C#: Direct Manipulation Chris North CS 3724: HCI.
Overview of 3D Parametric CAD: Applications in MAE 3 Dor Ashur Dr. Nathan Delson.
Lecture 23: Heuristic Evaluation
Multimedia Design. Table of Content 1.Navigational structures 2.Storyboard 3.Multimedia interface components 4.Tips for interface design.
Graphics: Creating Images Chapter 8, Exploring the Digital Domain.
MULTIMEDIA TECHNOLOGY SMM 3001 MEDIA - GRAPHICS. In this chapter how the computer creates, stores, and displays graphic images how the computer creates,
1 7M836 Animation & Rendering Animation Jakob Beetz Joran Jessurun
3.02 Explain basic motion graphic programming. Animation Types.
Spring /6.831 User Interface Design and Implementation1 Lecture 26: Mobile User Interfaces.
Web Design, 3 rd Edition 6 Multimedia and Interactivity Elements.
User Interface Design Today: Intro to Topic UI.f12.ppt CS 121 “Ordering Chaos” “Mike” Michael A. Erlinger.
People: Usability COMP 101 November 12, 2014 Carolyn Seaman Amanda Mancuso Susan Martin University of Maryland Baltimore County.
Spring /6.831 User Interface Design and Implementation1 Lecture 22: Internationalization.
Spring /6.831 User Interface Design and Implementation1 Lecture 3: Visibility.
Dm11 – Flash Creating Animations Animations CREATING.
Spring /6.831 User Interface Design and Implementation1 Lecture 17: Prototyping PS2, RS2 due on Sunday next week is paper prototyping week (no.
JQuery 10/21. Today jQuery Some cool tools around the web JavaScript Libraries Drawing libraries HTML Frameworks Conventions.
Guidelines and Prototypes CS774 Human Computer Interaction Spring 2004.
Announcements Assignment 9 is due Project 2 is due 7/27/04 We will be skipping chapter 22 Test 3 (chapters 18-21) will be on 7/29/04 Tip of the Day : Functions.
Design for Interaction Rui Filipe Antunes
Lecture 5: Interaction 1  Principles of Interactive Graphics  CMSCD2012  Dr David England, Room 711,  ex 2271 
3461A Readings from the Swing Tutorial. 3461A Overview  The follow is the Table of Contents from the trail “Creating a GUI with JFC/Swing” in the “The.
SEG3120 User Interfaces Design and Implementation
QML Qt Quick with QML and you can use JavaScript for engine along C++ Started to be released since late 2009 (Qt 4.7) Nokia focused on that for the Symbian/Meego.
Adobe Flash CS3 Revealed
User Interface Programming in C#: Direct Manipulation Chris North CS 3724: HCI.
2.02B Methods and Uses of Animation
IMGD 1001: 2D Art.
Reference: The Game Loop Animation / Game loop 1. Update variables 2. [Get input from the user] (GameLoop only) 3. Draw (using variables)
Animation in the Interface. 2 Reading assignment: This section based on 2 papers n Bay-Wei Chang, David Ungar, “Animation: From Cartoons to the User Interface”,
User Interface Design In Windows using Blend.
2.02B Methods and Uses of Animation 2.02 Develop Computer Animations.
T HE G AME L OOP. A simple model How simply could we model a computer game? By separating the game in two parts: – the data inside the computer, and –
School of Computing and Information Systems RIA Animation, part I.
Splatter “The Multiplayer Paint” By: David Kikuta CMSI 402, Spring 2011.
Spring /6.831 User Interface Design and Implementation1 Lecture 13: User Testing next 3 lectures required for 6.831G only nanoquizzes on those.
Fall UI Design and Implementation1 Lecture 13: Animation.
Animation Animation is about bringing things to life Technically: –Generate a sequence of images that, when played one after the other, make things move.
Spring /6.831 User Interface Design and Implementation1 Lecture 25: Input/Output Technology HW2 due Sunday GR5 (final implementation) out Today.
1 INTRODUCTION TO COMPUTER GRAPHICS. Computer Graphics The computer is an information processing machine. It is a tool for storing, manipulating and correlating.
App Inventor Chapter 17 – Creating Animated Apps.
Unit 5: Developing the Training Program 1 © SHRM 2009.
CPT 450 Computer Graphics 12th Lecture – Animation.
3.02 Explain basic motion graphic programming.
2.02B Methods and Uses of Animation
Game Loop Frame Rate.
AN INTRODUCTION TO COMPUTER GRAPHICS Subject: Computer Graphics Lecture No: 01 Batch: 16BS(Information Technology)
User Interface Design.
User Interface Design In Windows using Blend.
Chapter 4 Enhancing the Graphical User Interface
Chapter 4 Enhancing the Graphical User Interface
Presentation transcript:

Spring /6.831 User Interface Design and Implementation1 Lecture 24: Animation HW2 out, due next Sunday look for your evaluation assignment on Stellar No class on Wed (meet with your TA instead)

UI Hall of Fame or Shame? Spring /6.831 User Interface Design and Implementation2

Nanoquiz closed book, closed notes submit before time is up (paper or web) we’ll show a timer for the last 20 seconds Spring /6.831 User Interface Design and Implementation

1.Which of the following are important elements of a heuristic evaluation? (choose all good answers) A. Justifying the problem by naming a design guideline B. Explaining the problem C. Describing the user population that will suffer from the problem D. Sketching a new design of the user interface that will solve the problem E. A screenshot illustrating the problem 2.Which of the following usability dimensions is heuristic evaluation useful for? (choose all good answers) A. learnability B. visibility C. efficiency D. errors 3.Suppose you’re building a user interface for self-checkout of equipment from an MIT robotics lab. Which of the following people would be the best choice for heuristic evaluation of this interface? (choose one best answer) A. Kate, a UI designer in your design team B. Lisa, a UI designer outside your design team C. Penny, a robotics student with no UI design experience D. Gina, who sells flowers next to the Kendall T Spring /6.831 User Interface Design and Implementation

Today’s Topics Design principles Frame animation Property animation Pacing & path Spring /6.831 User Interface Design and Implementation5

Why Animation? Games Simulations Tutorials Video players Spring /6.831 User Interface Design and Implementation6

Animation for Feedback Visualizing changes not made by user Keeping the user oriented during transitions Displaying progress Spring /6.831 User Interface Design and Implementation7

Animation for Help “ Animated icons ” Moving mouse around to show how to use UI Spring /6.831 User Interface Design and Implementation8

Animation for Engagement Reinforcing illusion of direct manipulation Aesthetic appeal and engagement Spring /6.831 User Interface Design and Implementation9

Animation Isn’t Always Needed Existing events are often enough to provide incremental screen changes –User ’ s mouse events drive scrolling –Program events can drive a progress bar But bursty or slow events may need animation Short distances and short time periods –time < 100 ms –distance < width of the moving object Spring /6.831 User Interface Design and Implementation10

Design Principles Frame rate Motion blur Cartoon principles Short and simple Spring /6.831 User Interface Design and Implementation11

Frame Rate Frame rate > 20 frames per second –10 fps is convincing but looks jerky –Film is 24 fps, TV (NTSC) 30 fps Refresh rate vs. frame rate Spring /6.831 User Interface Design and Implementation12

Motion Blur Big discontinuous jumps are disruptive Use motion blur if object moves more than its width between frames –Smear of color –Multiple overlapping images Spring /6.831 User Interface Design and Implementation13

Cartooning Principles Solidity (motion blur, fading in/out) Anticipation (wind up before starting to move) Slow-in/slow-out Follow through (wiggle back and forth when stopping) Spring /6.831 User Interface Design and Implementation14

Short and Simple Keep feedback animation short –Many users will wait for it to stop before continuing Use animation sparingly –Constant motion is distracting and agitating Spring /6.831 User Interface Design and Implementation15

Good Feedback Animation Spring /6.831 User Interface Design and Implementation16 suggested by Jonathan Goldberg

Pixel Approach: Frame Animation Frame animation –Animated GIF –Or loop through a sequence of images yourself (using drawImage() or showing/hiding image objects) Spring /6.831 User Interface Design and Implementation17

Pixel/Stroke Approach: Event Loop Approach –Set a periodic timer for 1/frame rate –Repaint your canvas every timer tick –Use the current clock time to compute positions/sizes/etc to draw animated objects –Stop timer when animation complete or interrupted May be hard to achieve smooth animation –Event-handling may be bursty –Getting from timer tick to paint method requires two passes through event queue –Processing user input events has priority over animation repaints Spring /6.831 User Interface Design and Implementation18

Pixel/Stroke Approach: Animation Loop Tight animation loop approach –Repeat as fast as possible, Check and handle input events Paint everything for current clock time (Optional: sleep a bit to yield to other processes) Spring /6.831 User Interface Design and Implementation19

Component Approach: Property Animation Set periodic timer Every timer tick, update component properties as a function of current clock time –Position, size, color, opacity Spring /6.831 User Interface Design and Implementation20

Easing and Path Easing function maps time t to parameter s [0,1] –Linear: s = t / duration –Slow-in/slow-out s ~ atan(t) s ~ 1/(1+e^-t) Path function maps s to property value v –Linear: [x,y] = (1-s) [x 0,y 0 ] + s [x 1,y 1 ] –Quadratic Bezier curve: (x,y) = (1-s) 2 [x 0,y 0 ] + 2s(1-s) [x 1,y 1 ] + s 2 [x 2,y 2 ] –Color: HSV vs. RGB Spring /6.831 User Interface Design and Implementation21

Property Animation in jQuery $(“#menu”).animate( { opacity: 0.0, width: 0px }, 200, “linear” ); Spring /6.831 User Interface Design and Implementation22 property target values duration (in milliseconds) easing function

Summary Animation is useful for feedback and explanation Use cartooning effects like motion blur Often implemented with timers Spring /6.831 User Interface Design and Implementation23