Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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 Difference Union or just 2 objects? 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 playdoh 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(render time) 3D rendering • Direct relationship between image complexity and computational burden (render time) Render time shown: http://www.youtube.com/watch?v=jtWPW 8yJtgM&feature=channel_video_title 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?