DOC PREVIEW
UT CS 378 - 3D Engines and Scene Graphs

This preview shows page 1-2-3-4-5 out of 14 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology 3D Engines and Scene Graphs Spring 2012What’s a 3d engine ! OGRE Core Class Structure University of Texas at Austin CS 378 – Game Technology Don Fussell 2What are the objects? ! Geometry - polygon (triangle, quad) meshes University of Texas at Austin CS 378 – Game Technology Don Fussell 3University 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 legsUniversity 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.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)University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell 7 Connecting primitivesUniversity 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? h1!h2!h3!Base Upper arm Lower armUniversity 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?!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?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();! . . .!}!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.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 animatorUniversity 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


View Full Document

UT CS 378 - 3D Engines and Scene Graphs

Documents in this Course
Epidemics

Epidemics

31 pages

Discourse

Discourse

13 pages

Phishing

Phishing

49 pages

Load more
Download 3D Engines and Scene Graphs
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view 3D Engines and Scene Graphs and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view 3D Engines and Scene Graphs 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?