Swe 423 multimedia systems
1 / 25

Computer-Based Animation Chapter 6 - PowerPoint PPT Presentation

  • Updated On :

SWE 423: Multimedia Systems Chapter 6: Computer-Based Animation Outline Introduction Producing an Animation Specifications of Animations Methods of Controlling Animations Display of Animations Transmission of Animations VRML Introduction

Related searches for Computer-Based Animation Chapter 6

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Computer-Based Animation Chapter 6' - jacob

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Swe 423 multimedia systems l.jpg

SWE 423: Multimedia Systems

Chapter 6: Computer-Based Animation

Outline l.jpg

  • Introduction

  • Producing an Animation

  • Specifications of Animations

  • Methods of Controlling Animations

  • Display of Animations

  • Transmission of Animations

  • VRML

Introduction l.jpg

  • An animation covers all changes that have a visual effect

Introduction4 l.jpg

  • Computer-based animations are produced, edited and generated with the help of graphical tools to create visual effects

    • Multimedia API’s

      • Java3D

        • Constructs and renders 3D graphics

        • Provides a basic set of object primitives (cube, splines,...etc.)

        • An abstraction layer built on top of DirectX or OpenGL

      • DirectX

        • Windows API that supports video, images, audio, and 3D animation

        • Most widely used for Windows-based animations (video games)

      • OpenGL

        • Most popular 3D API in use today

        • Highly portable

Introduction5 l.jpg

  • Computer-based animations are produced, edited and generated with the help of graphical tools to create visual effects

    • Rendering Tools

      • 3D Studio Max

        • Character animation, game development and visual effects production (Sony Playstation)

      • Softimage XSI

        • For animation and special effects in movies

      • Maya

        • Softimage competitor

      • RenderMan

        • Excels in creating complex surface appearances and images

        • Has been used in many movies.

    • Simple/Quick Animation Generators

      • GIF Animation Packages

        • Looping through several GIF images creates an animation

        • Gifcon and GifBuilder (Windows) and animate (Linux)

Producing an animation l.jpg
Producing An Animation

  • Input Process

    • Drawings must be digitized or generated

      • Digitizing photos or drawings may require post-processing in order to remove any glitches

  • Composition Stage

    • Individual frames in a completed animation are generated by using image composition techniques to combine foreground and background elements

    • Trailer film is generated from placing low-resolution digitized frames in a grid.

Producing an animation7 l.jpg
Producing An Animation

  • InBetween Process

    • Interpolation methods are used to animate the movement from one position to another.

      • Linear interpolation (lerping) is the simplest but the most limited

        • E.g. the interpolation of animating throwing a ball using three points

      • Splines can be used to smoothly vary different parameters as a function of time, yet the problem is not completely solved (very complex)

Producing an animation8 l.jpg
Producing An Animation

  • Changing Colors

    • Uses the Color LookUp Table (CLUT) or (LUT) of the graphics memory and the double buffering method

      • Two parts of a frame are stored in different areas of graphic memory.

        • The graphic memory is divided into two fields, each having half as many bits per pixel.

      • The animation is generated by manipulating the CLUT.

Specification of animations l.jpg
Specification of Animations

  • Formal specifications that describe animations can be divided into three categories:

    • Linear-List Notations

    • High-Level Programming Language Notations

    • Graphical Languages

Linear list notations l.jpg
Linear List Notations

  • Each event is described by a beginning frame number, an end frame number and an action event that is to be performed.

    • Action events may accept input parameters

  • For example

    42, 53, B, ROTATE “PALM”, 1, 30

    • This instruction means......

  • SCEne Format (Scefo) specification can be considered a superset of linear sets including groups and object hierarchies as well as transformation abstractions using high-level languages constructs.

High level programming languages notations l.jpg
High-Level Programming Languages Notations

  • Values of variables can be used as parameters for animation routines.

  • For example, ASAS is a LISP extension that includes primitives such as vectors, colors, polygons, surfaces, groups, points of view, subworlds, and lighting aspects in addition to geometrical transformations operating on objects

    • For example

      (grasp my-cube); cube is current object

      (cw 0.05); small clock-wise rotation

      (grasp camera); camera is current object

      (right panning-speed); Move it to the right

Graphical languages l.jpg
Graphical Languages

  • Graphical actions cannot be easily described by and/or understood from textual scripts.

  • Hence, graphical animation languages describe animations in a visual manner.

  • GENESYS, DIAL and S-Dynamics System are examples of such systems.

Methods of controlling animations l.jpg
Methods of Controlling Animations

  • Explicitly Declared

  • Procedural

  • Constraint-Based

  • Analyzing Live Action-Based

  • Kinematic and Dynamic

Explicitly declared control l.jpg
Explicitly Declared Control

  • All events that could occur in an animation are declared. This can be done at the

    • object level by specifying simple transformations (translations, rotations, scaling) to objects

    • frame level by specifying key frames and methods for interpolating between them.

Procedural control l.jpg
Procedural Control

  • Based on communication among different objects whereby each object obtains knowledge about the static/dynamic properties of other objects.

    • Can be used to ensure consistency

      • For example ....

Constraint based control l.jpg
Constraint-Based Control

  • Many objects movements in the real world are determined by other objects which they come in contact with

    • E.g. presence of strong wind or fast moving large objects

  • Instead of explicit declaration, constraints based on the environment can be used to control objects’ motion.

  • Example Systems: Sketchpad and ThingLab.

Analyzing live action based control l.jpg
Analyzing Live Action-Based Control

  • Control is achieved by examining the motions of objects in the real world.

    • Rotoscoping: is a technique where animators trace live action movement, frame by frame, for use in animated films.

      • Originally, pre-recorded live-film images were projected onto a frosted glass panel and redrawn by an animator.

        • This projection equipment is called a Rotoscope.

  • Another way is to attach indicators to key points on the body of a human actor.

    • For example the data glove [gesture language for hearing-impaired people]

Kinematic and dynamic control l.jpg
Kinematic and Dynamic Control

  • Kinematics refer to the position and velocity of points

    • “The cube is at the origin at time t = 0. Thereafter, it moves with constant acceleration in the direction (1 meter, 1 meter, 5 meters)”

  • Dynamics takes into account the physical laws that govern kinematics

    • Newton laws for the movement of large objects

    • Euler-Lagrange equations for fluids

    • A particle moves with an acceleration proportional to the forces acting on it.

    • For example: “At time t = 0, the cube is at position (0 meter, 100 meter, 0 meter). The cube has a mass of 100 grams. The force of gravity acts on the cube.”

Display of animation l.jpg
Display of Animation

  • To display animations with raster systems, the animated objects must be scan-converted and stored as pixmap in the frame buffer.

    • Scan conversion must be done at least 10 times per second to ensure smooth visual effects.

      • The actual scan-conversion must take a small portion of 10 times/second in order to avoid distracting ghost effect

      • Double buffering is used to avoid the ghost effect

Display of animation20 l.jpg
Display of Animation

  • Example

    Load CLUT to display values as background color;

    Scan-convert object into image0

    Load CLUT to display only image0


    Scan-convert object into image1

    Load CLUT to display only image1

    Rotate object data structure description

    Scan-convert object into image0

    Load CLUT to display only image0

    Rotate object data structure description

    Until (termination condition)

Transmission of animation l.jpg
Transmission of Animation

  • Two forms of transmission

    • Symbolic representation of an animation is transmitted together with the operations performed on the object.

      • The receiver displays the animation.

        • Transmission is fast since text is much smaller than pixmaps

        • Display is slow since the pixmap has to be generated from their descriptions.

    • The pixmap representations are transmitted and displayed

      • Transmission time is longer.

      • Display is faster.

Slide22 l.jpg

  • Virtual Reality Modeling Language

    • Describes 3D interactive worlds and objects that can be used together with the World Wide Web.

      • Illustrations, product definitions or virtual reality presentations can be generated on the Web.

    • History of VRML

      • May 1994: At the first Int. Conf. on the WWW, the idea of a platform-independent standard for 3-D WWW applications originated

      • October 1994: VRML 1.0 was presented at the second Int. Conf. on the WWW.

        • VRML 1.0 defined the parameters for creating 3D objects that can travel across the Internet.

      • August 1995: VAG (Vrml Architecture Group) was established

Slide23 l.jpg

  • History of VRML

    • January 1996: VAG called for proposals for VRML 2.0. Each of the following submitted their own

      • Apple: “Out of this World”

      • Sun: “Holoweb”

      • German National Research Center for Information Technology (GMD) and others: “Dynamic Worlds”

      • IBM Japan: “Reactive Virtual Environment”

      • Microsoft: “Active VRML”

      • Silicon Graphics Inc. (SGI), Sony, and others “Moving Worlds”

    • August 1996: VRML 2.0 in its final form was presented in SIGGRAPH 96.

Vrml capabilities l.jpg
VRML Capabilities

  • VRML is capable of representing static and animated objects as well as hyperlinks to other media such as sound, motion pictures and still pictures

  • There are three ways of navigating though a virtual world:

    • Walk: Movement over the ground at eye-level

    • Fly: Movement at any height

    • Examine: Rotating an object in order to closely examine it.

Vrml example l.jpg
VRML Example

Color interpolator

This example interpolates in a 10-second long cycle from red to green to blue

DEF myColor ColorInterpolator{

key [0.0, 0.5, 1.0]

keyValue [1 0 0, 0 1 0, 0 0 1] # red, green, blue


DEF myClock TimeSensor {

cycleInterval 10.0 # 10 second animation

loop TRUE # animation in endless loop