8 JrowanITEC2110VectorGraphics3DV2Fall2010.ppt

Download Report

Transcript 8 JrowanITEC2110VectorGraphics3DV2Fall2010.ppt

Digital Media
Dr. Jim Rowan
ITEC 2110
Vector Graphics II
Vector Graphics
3-D... 3 dimensions
• x, y and z
• x & y form the ground plane
• z is the height
3D
• 3D shapes (objects) are defined by their
surfaces
• Made even more complicated by the fact that
a 3D object inside the computer must be
translated into 2D to be rendered…
• This results in the need to
– specify the viewpoint, a camera
– specify the lighting
3D
• But… having to specify the camera and the
lighting buys you one huge advantage that
you do not get when doing 2D
• rendering automatically generates all of
shadows
• BUT… rendering is extremely
computationally expensive (demanding, time
consuming)
3-D:
even more complexity
• lighting has different characteristics and must
be specified
–
–
–
–
–
natural or artificial
spot or flood
color
multiple sources
reflections off other objects in the scene
• atmosphere must be intentionally included
• surface texture must be specified
issues of focus/atmosphere
examples from Sintel
http://wiki.ggc.usg.edu/mediawiki/index.php/Content_group_2#Lecture_8_Cont
ent_group_2_Vector_Graphics_3D
Managing Complexity
Structural hierarchy
• Things in the real world are
compositions of smaller things
• Things in the 3-D graphics world are
also compositions of smaller things
• Hierarchical structure is an excellent
way of coping with complexity
• Also seen in object-oriented
programming like Java and Squeak!
3D Models
• So… how do you build a model inside a
computer when you can’t touch it?
•
•
•
•
Constructive Solid Geometry
Free Form: Extrusion
Meat balls
Procedural modeling
3D models
• Constructive solid geometry
– building things from known shapes
– uses geometric solids: cube, cylinder,
sphere and pyramid
– objects build by squishing and stretching
those objects
– objects joined using union, intersection
and difference
Intersection of the sphere and the cylinder
Difference: Sphere minus the cube
Union of a sphere and a cylinder
Free Form
Building things one side at a time
• Uses an object’s surface (it’s boundary with the
world) to define it
• Build surfaces from flat polygons or curved patches
– flat polygons are easier to render and therefore frequently
used in games where computational power is limited
• Results in an object drawn as a “mesh”
• Can be done using Bezier surface patch but they
have 16 control points!
• More tractable (do-able) patch uses a surface called
a non-rational B-spline
Free Form: Extrusion
Building things using a paydoh factory
• Draw a 2 dimensional shape through
space along a line
• The line can be straight or curved
Meat balls
• Reacts like soft objects rather than hard, solid
ones
• Think of the objects as having surface tension
• Kinda like an uncooked meatball, press two
of them together and they “squish”
Procedural modeling
• Best known is based on Fractals
–
–
–
–
–
Fractals
exhibit the same structure at all levels of detail
aka “self similar”
used to model natural objects
http://en.wikipedia.org/wiki/Fractal
• Particle systems... many particles, few controls
• Physics... distribution of mass, elasticity, optical
properties, laws of motion
3D Rendering
• Rendering engine handles the
complexity
• Wire frames are used to preview objects
and their position
– can’t tell which surface is closer to us and
which surface is hidden
• To save computation time, hidden
surfaces are removed before rendering
– Why render what can’t be seen?
3D rendering
• Lighting
– Added to scene much like an object
– spot light, point source, floodlight...
– position and intensity
• Direct relationship between rendering
quality and computational burden
3-D rendering
• Shading... how light reacts with surface
– Based roughly on physics but modified by
heuristics (rules derived from experience)
– Examples ===>
• Texture mapping
– An image is mathematically wrapped around the
object
3-D rendering
• Light reflecting off objects of one color affect the color
and lighting of surrounding objects
– Ray tracing Complex... must be repeated for pixel
in the image... photo-realistic results
– Wayne Wooton Pixar
– Radiosity
Questions?