Department of nskinfo i-education

Slides:



Advertisements
Similar presentations
Visible-Surface Detection(identification)
Advertisements

Department of nskinfo i-education
Animation Marco Gillies. Computer Animation Making things move A key aspect of computer graphics Non-realtime for films Realtime for virtual worlds and.
Arc-length computation and arc-length parameterization
Splines I – Curves and Properties
Line Drawing Algorithms. Rasterization-Process of determining which pixels give the best approximation to a desired line on the screen. Scan Conversion-Digitizing.
Graphics Pipeline.
Week 11 - Wednesday.  Image based effects  Skyboxes  Lightfields  Sprites  Billboards  Particle systems.
In the name of God Computer Graphics Bastanfard.
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
Verbs and Adverbs: Multidimensional Motion Interpolation Using Radial Basis Functions Presented by Sean Jellish Charles Rose Michael F. Cohen Bobby Bodenheimer.
Animation Following “Advanced Animation and Rendering Techniques” (chapter 15+16) By Agata Przybyszewska.
1Notes  Textbook: matchmove 6.7.2, B.9. 2 Match Move  For combining CG effects with real footage, need to match synthetic camera to real camera: “matchmove”
HCI 530 : Seminar (HCI) Damian Schofield.
Computer Animation. Animation Animate = “to give life to” Specify, directly or indirectly, how ‘thing’ moves in time and space.
Graphics Korea University Computer Animation Computer Graphics.
CSCE 441 Computer Graphics: Keyframe Animation/Smooth Curves Jinxiang Chai.
1 7M836 Animation & Rendering Animation Jakob Beetz Joran Jessurun
SCA Introduction to Multimedia
Animation. Outline  Key frame animation  Hierarchical animation  Inverse kinematics.
Course Website: Computer Graphics 5: Line Drawing Algorithms.
FLASH Introduction to Animation. Review: Intro to Computer Operation Information Technology Vocabulary Computer Hardware Motherboard CPU and Memory Peripheral.
Animation. What is animation? The computer animation refers to any time sequence of visual changes in a scene. In addition to changing object position.
Plan for today Discuss your assignments detailed on the last slide of the powerpoint for last week on: –Topics/problems in which you are most interested.
Scenes, Cameras & Lighting. Outline  Constructing a scene  Using hierarchy  Camera models  Light models.
Computer-Based Animation. ● To animate something – to bring it to life ● Animation covers all changes that have visual effects – Positon (motion dynamic)
1 7M836 Animation & Rendering Animation Jakob Beetz Joran Jessurun
Polygon Shading. Assigning color to a shape to make graphical scenes look realistic, or artistic, or whatever effect we’re attempting to achieve But first.
Geometric Transformation. So far…. We have been discussing the basic elements of geometric programming. We have discussed points, vectors and their operations.
Tools for Raster Displays CVGLab Goals of the Chapter To describe pixmaps and useful operations on them. To develop tools for copying, scaling, and rotating.
October 14, 2014Computer Vision Lecture 11: Image Segmentation I 1Contours How should we represent contours? A good contour representation should meet.
2D ANIMATION. Project Requirements Creation of basic bouncing ball Creation of an individual animation –Storyboard –Drawings/Digital frames –Export.
Passage Three Multimedia Application. Training target: In this part , you should try your best to form good reading habits. In order to avoid your ill.
Computer Graphics 2 In the name of God. Outline Introduction Animation The most important senior groups Animation techniques Summary Walking, running,…examples.
Graphics Systems and OpenGL. Business of Generating Images Images are made up of pixels.
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
Curves. First of all… You may ask yourselves “What did those papers have to do with computer graphics?” –Valid question Answer: I thought they were cool,
IT14 Presentation with Animation. 7 Introducing Animation In this chapter, let’s get familiar with: I.What is Animation? II.Computer Animation III.Applications.
Multimedia Animation. Animation Principles Persistence of vision object seen by human eye remains mapped on retina for a brief time after viewing display.
CGMB214: Introduction to Computer Graphics
Advanced Computer Graphics Advanced Shaders CO2409 Computer Graphics Week 16.
Chapter 7 Animation Prepared by: Ms. Ma. Anna Corina G. Kagaoan College of Arts and Sciences.
Computer Graphics Researched via: Student Name: James Wood Date: 4/29/10.
Fall 2004CS-321 Dr. Mark L. Hornick 1 Final Exam Monday Nov 13, 2-4pm CC-43 Bring Calculator – no laptops Note sheet Complete FAST entries before exam.
Data dan Teknologi Multimedia Sesi 07 Nofriyadi Nurdam.
1 ANIMATION. 2 Topics to study What is ANIMATION? Usage of Animation What is Cell Animation? What is Digital Animation.
“ Animation Through the Ages” Camelia McCallion. Main tasks What is computer animation? Hand drawn (cel) Flick books Animated cartoon Animation process.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
CSCE 441 Computer Graphics: Keyframe Animation/Smooth Curves Jinxiang Chai.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
CSCE 441 Computer Graphics: Keyframe Animation/Smooth Curves Jinxiang Chai.
Syed ardi syed yahya kamal 2011 chapter five.  Creating in-between positions is still a hallmark of animation.  Using techniques called interpolation.
CISC 110 Day 3 Introduction to Computer Graphics.
Flexible Automatic Motion Blending with Registration Curves
Lecture 5: 11/5/1435 Computer Animation Lecturer/ Kawther Abas CS- 375 Graphics and Human Computer Interaction.
Introduction to Curves
Animation in flash. Frame-by-Frame Animation An animation is made from a series of framed images displayed one after the other to create the motion. Flash.
OUTPUT PRIMITIVES A.Aruna/Faculty of Information technology/SNSCE13/19/2016.
Computer – Aided Design Terminology You must have a generic understanding of commands and techniques which are used in a number of packages (YOU CANNOT.
Computer Graphics CC416 Lecture 04: Bresenham Line Algorithm & Mid-point circle algorithm Dr. Manal Helal – Fall 2014.
Computer Animation. Animation Animate = “to give life to” Specify, directly or indirectly, how ‘thing’ moves in time and space.
Computing & Information Sciences Kansas State University Lecture 16 of 42CIS 636/736: (Introduction to) Computer Graphics Lecture 16 of 42 William H. Hsu.
CSCE 441 Computer Graphics: Keyframe Animation/Smooth Curves
Chapter 4:- Animation Eyad Alshareef Eyad Alshareef.
Introduction to Game Development
Game Development Animation
Prepared by: Engr . Syed Atir Iftikhar
Computer Animation Displaying animation sequences raster animation
VIRTUAL ENVIRONMENT.
Computer Graphics Lecture 15.
Presentation transcript:

Department of nskinfo i-education www.nskinfo.com && www.nsksofttech.com CS2401- Computer Graphics Computer Animation Department of nskinfo i-education

Computer Animation Displaying animation sequences raster animation Creating animation sequences object definition path specification key frames in-betweening Parametric equations

Steps of a simple computer animation 1. Creating animation sequences object definition path specification (for an object or a camera) key frames in-betweening 2. Displaying the sequences raster animation colour-table animation

Displaying animation sequences Movies work by fooling our eyes A sequence of static images presented in a quick succession appears as continuous flow

Why animation works The eye cannot register images faster than approximately 50 frames per second (30 is just about adequate) If a gap in the projection occurs, the eye seems to perform spatial interpolation over the gap

Displaying animation sequences To achieve smooth animation, a sequence of images (frames) have to be presented on a screen with the speed of at least 30 per second Animations frames can be pre-computed in advance and pre-loaded in memory computed in real time (e.g. movement of the cursor)

Raster animation This is the most common animation technique Frames are copied very fast from off-screen memory to the frame buffer Copying usually done with bitBLT-type operations Copying can be applied to complete frames only parts of the frame which contain some movement

Examples

BitBLT with logic

Raster animation - procedures A part of the frame in the frame buffer needs to be erased The static part of the frame is re-projected as a whole, and the animated part is over-projected.

Double buffering Used to achieve smooth animation The next frame of animation is computed to an off- screen buffer at the same time when the current frame is transferred to the frame buffer.

Colour-table animations Simple 2D animations can be easily implemented using colour lookup table. This technique will be described later

CREATING ANIMATION SEQUENCES

Object definition In simple manual systems, the objects can be simply the artist drawings In computer-generated animations, models are used Examples of models: a "flying logo" in a TV advert a walking stick-man a dinosaur attacking its prey in Jurassic Park

Models can be Rigid (i.e. they have no moving parts) Articulated (subparts are rigid, but movement is allowed between the sub-parts) Dynamic (using physical laws to simulate the motion) Particle based (animating individual particles using the statistics of behaviour) Behaviour based (e.g. based on behaviour of real animals)

Simple rigid objects can be defined in terms of polygon tables (3D) basic shapes such as line segments, circles, splines etc. (2D) Rigid body animation is an extension of the three- dimensional viewing

Path specification Impression of movement can be created for two basic situations, or for their combination: static object, moving camera static camera, moving object The path defines the sequence of locations (for either the camera or the object) for the consecutive time frames

Static object, moving camera Time F1 F5 F2 F4 F3

Static camera, moving object F1 F2 F3 F4

Static object, moving camera The path specifies the spatial coordinates along which the camera moves The path is usually specified for a single point, e.g. the VRP

Static object, moving camera During movement, the target point in the World coordinate system can remain the same (e.g. when walking or flying around the object to see it from all directions); change (e.g. standing in one location and looking round, or moving along a given path and showing the view seen by the observer while moving).

Static camera, moving object Path specifying the object movement has to be defined The path is defined as the spatial coordinates along which the object moves

Static camera, moving object Objects and their parts are defined in a local coordinate system Animation path is defined in the World coordinate system The path is specified for a single point, e.g. the centre of the object's local coordinate system Coordinates of the actual points describing the object are calculated afterwards

It is important to remember that when the object moves along the path, not only its position changes, but also its orientation

It is important to remember that when the object moves along the path, not only its position changes, but also its orientation Y Z X

KEY FRAMES AND IN-BETWEENING

Rigid body animation Rigid body animation uses standard 3D transformations At least 30 frames per second to achieve smooth animation Computing each frame would take too long

Key frames Compute first a small number of key frames Interpolate the remaining frames in-between these key frames (in-betweening) Key frames can be computed at equal time intervals according to some other rules for example when the direction of the path changes rapidly

In-betweening The simplest method of in-betweening is linear interpolation Interpolation is normally applied to the projected object points

1’ 2’ Key frame k+1 1 2 Key frame k Halfway frame 3 3’ added point

In-betweening - example Given coordinates of a 2D point key frame n: (xn,yn) key frame n+1: (xn+1,yn+1) time interval between the two key frames: 1/10 second To get smooth animation, needs at least 30 frames per second Solution: insert at least further 2 frames between the given two key frames

Calculating in-between frames using linear interpolation x = (xn+1 - xn) / 3  y = (yn+1 - yn) / 3 for ( i=1; i<3; i++ ) { xi = xn + i * x yi = yn + i * y }

In-betweening Linear interpolation will not always produce realistic results. Example: an animation of a bouncing ball where the best in-betweening can be achieved by dynamic animation

In-betweening In-betweening should use interpolation based on the nature of the path, for example: straight path linear interpolation circular path angular interpolation irregular path linear interpolation spline

Parametric equations Formulae using parametric representation of lines and curves, e.g. line segment circle Bezier curve A flexible tool for interpolation

Parametric equations - line segment Example for line segment between two points, (xn,yn) and (xn+1,yn+1) calculate points in between the two given points xi = xn + t (xn+1 - xn) yi = yn + t (yn+1 - yn) t is the parameter which always changes between 0 and 1 when t = 0, we get xn when t = 1 we get xn+1 for 0 < t < 1 we get the points in between

Parametric equations - line segment The only thing to decide is the number steps between point n and point n+1 This allows us to set the value of t , which is 1 divided by the number of steps For example, for 10 steps, t = 1/10 = 0.1 This formula works also for points in 3D

Parametric equations - Circle Given Circle radius: r Centre at: (0,0) Parametric quations x( t ) = r * cos( 2t ) y( t ) = r * sin( 2 t )

Parametric equations - Circle Parametric quations x( t ) = r * cos( 2t ) y( t ) = r * sin( 2 t ) Algorithm Select t for(t=0; t<=1; t = t+ t ) { plot point at x = x( t ) = r * cos( 2 t ) y = y( t ) = r * sin( 2 t ) }