310 likes | 391 Views
Digital Media. Lecture 8: Vector Graphics 3D Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan. Refer to Supplemental text:. 3D. X & Y like 2D graphics Z is Height (or depth). 3D. 3D shapes (objects) are defined by their surfaces
E N D
Digital Media Lecture 8: Vector Graphics 3D Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan
3D • X & Y like 2D graphics • Z is Height (or depth)
3D • 3D shapes (objects) are defined by their surfaces • Complicated because a 3D object (inside the computer) must be translated into 2D to be viewed… • And you need to: • specify the viewpoint, a camera • specify the lighting
3D • Specifying the camera and the lighting has one huge advantage over 2D • Automatically generates all of shadows • BUT… rendering (converting 3D to 2D) is extremely computationally expensive (demanding, time consuming) • It can be slow!
3D • 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/atmosphereExamples from Sintel Sintel Example
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!
So… • How do you build a model inside a computer when you can’t touch it? • Constructive Solid Geometry • Free Form: Bezier Surfaces • Free Form: Extrusion • 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
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 play-doh factory • Move a 2 dimensional shape through space along a line • The line can be straight or curved
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 • Particle systems... many particles, few controls • Fur, hair, grass… • 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(render time)
Render time video illustration • http://www.youtube.com/watch?v=jtWPW8yJtgM&feature=channel_video_title