course introduction and terminology cgdd 4113 – 3d modeling and animation

13
Course Introduction and Terminology CGDD 4113 – 3D MODELING AND ANIMATION

Upload: shauna-hunter

Post on 31-Dec-2015

222 views

Category:

Documents


1 download

TRANSCRIPT

Course Introduction and Terminology

CGDD 4113 – 3D MODELING AND ANIMATION

TOPICS(ACCORDING TO THE COURSE DESCRIPTION)

• Mesh and Non-uniform Rational B-Splines (NURBs) modeling

• Textures

• Subdivision and levels of model detail

• Rigid/constrained body dynamics

• Non-rigid/fluid dynamics

COURSE LEARNING OUTCOMES

Students will be able to:

1. Describe the mathematics of 3D modeling and animation

2. Apply 3D modeling/animation in generating a complex, rendered scene

3. Utilize modern applications that streamline the modeling and animation process

4. Discuss the complexity of modeling and animation and trade-offs between fidelity and performance

WHY LEARN THAT STUFF?DescriptionArenaNet is looking for an experienced animation programmer to work with our AAA team of artists, designers and programmers to take our characters to new heights. We seek an experienced programmer who has the skill and passion to create a cutting edge, industry defining high level animation system.

Requirements:• 4+ years of demonstrable experience in C/C++• Expertise with cutting edge animation techniques• Excellent mathematical skills (including calculus, linear algebra, and quaternions)• Experience with modern animation middleware packages• Experience with modern modeling and animation art tools• Ability to work with artists and designers• Able to create maintainable, performance-minded code on schedule• Previous commercial games development experience

Pluses:• Experience architecting an animation system• Experience writing cutting edge character controllers• Experience with multi-core, multi-threaded systems• Experience writing high performance IK systems• Experience with Maya

http://jobs.gamasutra.com/JobSeekerX/ViewJob.asp?JobID=5icMXfq5FnfnubqzhRYChEzn5NC7&Keywords=MayaPost date: 1/7/2011

THE TRUTH

• Will you really be building models?• Simple, non-animated – yes, but maybe…

• Animated – doubtful

• Usually hire this out to an artist, who’s much better than you

• Will you really be using math?• Yes. Absolutely. Yes…. But more when you’re doing graphics

• Shaders (linear algebra)

• Translations, rotations, scaling (linear algebra)

• Collisions (linear algebra)

• Calculus? Only lightly, unless you’re into some really serious …

WHAT YOU SHOULD ALREADY KNOW…

• Basic game concepts

• Importing assets into game engines

TERMINOLOGY• Pose – the position and orientation of an object

• Vertex – a 3D point (x, y, z)

• Edge – a connection between two vertices (who cares)

• Face – a set of 3 or more (but almost always 3)

• Normal – the direction perpendicular to the face

F

V1

V2

V3

E1

E2

E3

TRANSLATE, ROTATE AND SCALE

Translate – move an object’s positionRotate – change an object’s orientation

Yaw – YPitch – XRoll – Z

Scale – change an object’s size

VIEWS AND CAMERAS• Perspective – depth matters

• Orthogonal – view is parallel

PARTICLE SYSTEMS• Good for smoke, fire, explosion animations…

• You did these in CS 1302…

• We won’t be studying them because you typically program them

NURBS VS. POLYGONSWHOSE KUNG-FU IS BETTER?

• Non-Uniform Rational B-splines• Infinite resolution

• Have CVs (Control Vertices)

• Yes, they are better, but…

• Polygons• It’s what we (programmers) use

• Usually, these are made into triangles

• Much easier to work with

NURBS VS. POLYGONSWHOSE KUNG-FU IS BETTER?

RENDERING

• “Drawing” what’s in the scene. Time-consuming.

• Hardware rendering – using your graphics card to render

• A-buffer rendering – a quick way to render

• Raytracing – Good for shiny objects (reflections), but slow

• Maya:1. First renders with the A-buffer

2. Raytraces any objects that need it

3. Layers the raytraced objects onto the A-buffer image