1. INTRODUCTION Graphics 2 06-02408 Level 3 10 credits in Semester 2 Professor Aleš Leonardis Slides by Professor Ela Claridge What is computer graphics? The art of 3D graphics is the art of fooling the brain into thinking that it sees a 3D scene painted on a flat screen. Computer graphics is concerned with the creation and manipulation of graphics images by computer 1 Creation (modelling) Manipulation x2 + y 2 + z2 = r2 • Manipulation of abstract representations of objects and their parts Implicit Polygonal 3D Modelling x = sin 4θ y = cos 2θ Parametric Individual objects are created and then assembled into final image Volumetric 3-dimensional graphics objects created in an abstract object space Manipulation Manipulation • Manipulation of graphics objects – Through interactive devices (user) TRINITY – Application program (hard-wired) – Application program (AI techniques) • Animation Individual object geometries are first modelled. These are then linked using positional / orientational relationships (via transforms) 2 Graphics images • Graphics images: Viewing and Projection Projections of 3-dimensional graphics objects from an abstract object space to a computer screen • Similar to taking a photograph – locate the object – compose a view – record the image on a 2D surface (render) 3d models camera setup viewport Graphics images: Camera Positioning Projection - a simulation of a simple pinhole camera Different views of a 3D model http://photo.net/learn/pinhole/frisius.htm 3 Graphics images: Projection Graphics images: Rendering • Display of images on the screen • Advanced rendering techniques – – – – surfaces colours shading textures Vermeer Representing three dimensions on two dimensional media Graphics images: Rendering: Surfaces Furnish a 3D wireframe model with a surface Graphics images: Rendering: Colours Light and shadow: colour of different parts of an object suggests its three -dimensional nature 4 Graphics images: Rendering: Depth Cues Graphics images: Rendering: Texture mapping Shadows as depth cues Perspective and Depth of Field Highlight/Shadow http://radoff.com/images/MMOAnatomy3.gif Graphics images: Rendering: Rasterisation Computer • Hardware and software components specifically designed for graphics – GPU – Interactive devices – Displays and hard-copy devices Although the images are flattened to 2D, depth knowledge is required to order them correctly 5 3D graphics pipeline WORLD/SCENE/OBJECT/CONCEPT Modelling coordinates: - world coordinate system, - object coordinate system Screen/Window coordinates Device coordinates • Creation and manipulation of graphics images by computer 3D MODELLING VIEWING 3D CLIPPING Camera coordinates Computer graphics • Other areas of computing dealing with images – image processing – computer vision PROJECTION RASTERIZATION 2D PIXELMAP DISPLAY 3D Graphics Applications • • • • • • Games Entertainment Computer Assisted Drafting (CAD) Medicine Security Commerce Games • Most recognizable 3D application • Requires a number of types of skills – – – – – Graphics Physics Sound Artificial Intelligence (AI) User Interface (UI) 6 Entertainment Virtualized human actions • Animated movies are a popular form of 3D entertainment • Combines movement with 3D graphics • Movement can be achieved through motion capture or avars – Motion capture – actual person or object performs movements with markers tracked by a video camera – Avar- Animation Variable - a variable that controls object movement 32 Virtualized human actions Virtual views 33 34 7 Medicine Computer Assisted Drafting / Design - CAD Tools used by engineers and designers to assist in design and documentation of new products Medical applications Nuclear Medicine Viewer Medical applications 37 38 8 Medical applications Visualisation 3D graphic security tool that can help computer system administrators identify weaknesses in network security. http://blog.tenablesecurity.com/2006/07/3d_tool_screens.html 39 Commerce • • • • Property Property Business Intelligence E-retail Maintenance, Training, Documentation 3D graphics can be used by a a user to view a specific location in 3D. Note that the tool displayed here permits the user to navigate through a city in 3D but also has a 2D map displayed as a reference. http://www.geosimcities.com/sol_RealEstate.htm 9 Business Intelligence E-Retail Business Intelligence is the collection of data, processed into information that managers can use to make business decisions. Displaying data in 3D helps decision makers gain insight into complex relationships. http://www.virtualshowrooms.co.za Modeling environments http://www.technicon.com/products_demos.html#cf Virtual(ized) environments 46 47 10 Laser scanning Laser scanned models Digital Michelangelo Project http://graphics.stanford.edu/projects/mich/ • Optical triangulation – Project a single stripe of laser light – Scan it across the surface of the object – This is a very precise version of structured light scanning The Digital Michelangelo Project, Levoy et al. Source: S. Seitz Laser scanned models Source: S. Seitz Laser scanned models The Digital Michelangelo Project, Levoy et al. The Digital Michelangelo Project, Levoy et al. Source: S. Seitz Source: S. Seitz 11 Laser scanned models Laser scanned models The Digital Michelangelo Project, Levoy et al. The Digital Michelangelo Project, Levoy et al. Source: S. Seitz Maintenance, Training, Documentation 3D graphical application applied to a practical application of airplane maintenance, training and documentation Source: S. Seitz 3D Graphics Benefits • Adds realism • 3D images can help simplify complexity when displaying graphical relations • User can manipulate object views for a full 360 degree perspective • Adding a third dimension to data can improve pattern recognition and increase business decision speeds http:// www.parallelgraphics.c om 12 History History • First use of computer graphics? • 1950 – A CRT tube connected to a computer at MIT to investigate aircraft stability and control. • early 1950s – SAGE air-defence system could display crude radar images. – A light pen used for the first time. History Demo: Sketchpad • William Fetter coined term “computer graphics” in 1960 to describe new design methods he was pursuing at Boeing • Created a series of widely reproduced images on pen plotter exploring cockpit design, using 3D model of human body. http://youtu.be/J6UAYZxFwLc • First truly interactive graphics system, Sketchpad, pioneered at MIT by Ivan Sutherland for his 1963 Ph.D. thesis Slide credit: Andries van Dam 13 Enabling Modern Computer Graphics • Hardware revolution Enabling Modern Computer Graphics • Graphic subsystems – Moore’s Law: every 12-18 months, computer power improves by factor of 2 in price / performance as feature size shrinks – Significant advances in commodity graphics chips every 6 months vs. several years for general purpose CPUs • NVIDIA GTX 680… 3090.4 gigaflops – Newest processors are 64-bit, 2, 4, 6, 8, or 10 core nVidia GeForceTM chip • Intel Core i7 – consumer, up to 6 cores hyperthreaded to provide 12 threads • Intel Sandy Bridge EP– industrial, 8 cores HT, 16 threads – Offloads graphics processing from CPU to chip designed for doing graphics operations quickly – nVidia GeForce™, ATI Radeon™ – GPUs used for special purpose computation, also bunched together to make supercomputers • GPU has led to development of other dedicated subsystems – Physics: nVidia PhysX PPU (Physics Processing Unit), standard on many NVIDIA GPUs – Artificial Intelligence: IBM Watson • Hardware show and tell: Dept’s new NVIDIA GeForce GTX 460s – 1.35 GHz clock, 1GB memory, 37.8 billion pixels/second fill rate – Old cards: GeForce 7300 GT: 350 MHz clock, 256 MB memory, 2.8 billion fill rate Slide credit: Andries van Dam Enabling Modern Computer Graphics • Input Devices – Mouse, tablet & stylus, multi-touch, force feedback, and other game controllers (e.g., Wii), scanner, digital camera (images, computer vision), etc. – Whole body as interaction device: • http://www.xbox.com/kinect Slide credit: Andries van Dam Slide credit: Andries van Dam Enabling Modern Computer Graphics • Software Improvements – Algorithms and data structures • Modeling of materials • Rendering of natural phenomena • “Acceleration data structures” for ray tracing – Parallelization • Most operations are embarrassingly parallel: changing value of one pixel is often independent of other pixels – Distributed and Cloud computing • Send operations into ‘cloud’, get back results, don’t care how • Rendering even available as internet service! Slide credit: Andries van Dam 14 Credits • These slides contain material from the following sources: – isg.cs.tcd.ie/dingliaj/notes/MM112_7_Modelling.ppt – mcli.maricopa.edu/files/dvl/3D%20Graphics_v2009.ppt – http://hof.povray.org/ 15