/
CS  378: CS  378:

CS 378: - PowerPoint Presentation

mitsue-stanley
mitsue-stanley . @mitsue-stanley
Follow
358 views
Uploaded On 2016-05-14

CS 378: - PPT Presentation

Computer Game Technology 3D Engines and Scene Graphs Spring 2012 Whats a 3d engine OGRE Core Class Structure University of Texas at Austin CS 378 Game Technology Don Fussell ID: 319357

fussell don texas austin don fussell austin texas university arm graphics computer 2010 fall cs384g scene move upper matrix

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "CS 378:" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

CS 378: Computer Game Technology

3D Engines and Scene Graphs

Spring 2012Slide2

What’s a 3d engine

OGRE Core Class Structure

University of Texas at Austin CS 378 – Game Technology Don Fussell

2Slide3

What are the objects?

Geometry - polygon (triangle, quad) meshes

University of Texas at Austin CS 378 – Game Technology Don Fussell

3Slide4

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

4

Hierarchical Modeling

How can you make articulated characters move in the world?

Move the whole character wrt the world

Move legs, arms, head wrt body

Move hands wrt arms

Move upper vs. lower arm

Same for legsSlide5

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 5

Symbols and instances

Most graphics APIs support a few geometric

primitives

:

spheres

cubes

triangles

These symbols are

instanced

using an

instance transformation

.Slide6

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 6

Use a series of transformations

Ultimately, a particular geometric instance is

transformed by one combined transformation matrix:

But it

s convenient to build this single matrix

from a series of simpler transformations:

We have to be careful about how we think

about composing these transformations.

(Mathematical reason: Transformation matrices

don

t commute under matrix multiplication)Slide7

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 7

Connecting primitivesSlide8

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 8

3D Example: A robot arm

Consider this robot arm with 3 degrees of freedom:

Base rotates about its vertical axis by

Upper arm rotates in its

xy

-plane by 

Lower arm rotates in its

xy

-plane by 

Q:

What matrix do we use to transform the base?

Q:

What matrix for the upper arm?

Q:

What matrix for the lower arm?

h

1

h

2

h

3

Base

Upper arm

Lower armSlide9

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 9

Hierarchical modeling

Hierarchical models can be composed of instances using trees or DAGs:

edges contain geometric transformations

nodes contain geometry (and possibly drawing attributes)

How might we draw the tree for the robot arm?Slide10

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 10

A complex example: human figure

Q:

What

s the most sensible way to traverse this tree?Slide11

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 11

Human figure implementation, OpenGL

figure()

{

torso();

glPushMatrix();

glTranslate( ... );

glRotate( ... );

head();

glPopMatrix();

glPushMatrix();

glTranslate( ... );

glRotate( ... );

left_upper_arm();

glPushMatrix();

glTranslate( ... );

glRotate( ... );

left_lower_arm();

glPopMatrix();

glPopMatrix();

. . .

}Slide12

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 12

Animation

The above examples are called

articulated models

:

rigid parts

connected by joints

They can be animated by specifying the joint angles (or other display parameters) as functions of time.Slide13

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 13

Key-frame animation

The most common method for character animation in production is

key-frame animation

.

Each joint specified at various

key frames

(not necessarily the same as other joints)

System does interpolation or

in-betweening

Doing this well requires:

A way of smoothly interpolating key frames:

splines

A good interactive system

A lot of skill on the part of the animatorSlide14

University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 14

Scene graphs

The idea of hierarchical modeling can be extended to an entire scene, encompassing:

many different objects

lights

camera position

This is called a

scene tree

or

scene graph

.

Camera

Light1

Light2

Object2

Object3

Scene

Object1

Related Contents


Next Show more