Computer Graphics
Books: 1) Computer Graphics, Principles & Practice, Second Edition in C JamesD. Foley, Andriesvan Dam, StevenK. Feiner, John F. Huges 2) Schaim s Outline Computer Graphics Roy A. Plastock, Gordon Kalley
What is Computer Graphics? (1/2) Computer graphics generally means creation, storage and manipulation of models and images Such models come from diverse and expanding set of fields including physical, biological, mathematical, structures artistic, and conceptual/abstract
What is Computer Graphics? (2/2) William Fetter coined term computer graphics in 1960 to describe new design methods he was pursuing at Boeing for cockpit ergonomics Created a series of widely reproduced images on pen plotter exploring cockpit design, using 3D model of human body. Perhaps the best way to define computer graphics is to find out what it is not. It is not a machine. It is not a computer, nor a group of computer programs. It is not the know-how of a graphic designer, a programmer, a writer, a motion picture specialist, or a reproduction specialist. Computer graphics is all these a consciously managed and documented technology directed toward communicating information accurately and descriptively. Computer Graphics, by William A. Fetter, 1966
Scope of Computer Graphics Broad sense: Any computer-driven display of visual information For example: Text Line drawings Graphs, Charts, Schematics Realistic Pictures Any designs Various tools to work with: Color, Shading, Texture Variation in time (movies) Human 3D perceptual abilities
Application of Computer Graphics (1/2) User Interfaces: windowing systems, desktops, point and click interaction etc. Interactive plotting: 2D and 3D graphical representations of numerical data in science engineering and business A plotter is a computer hardware device much like a printer that is used for printing vector graphics. Instead of toner, plotters use a pen, pencil, marker, or another writing tool to draw multiple, continuous lines onto paper rather than a series of dots like a traditional printer Computer aided design: VLSI planes trains and automobiles buildings bridges communication networks optical systems nuclear reactors etc.
Application of Computer Graphics (2/2) Visualizing 3D databases: Medical tomography, engineering tomography, geological structure, etc. Entertainment: Computer and arcade games, cartoons, special effects, whole movies, virtual environment and interactive games. Interactive training: Flight simulators, surgical simulators, immersive war games and practice scenarios. Art and commerce: snazzy TV ads, virtual real-estate walkthroughs fun visuals Cartography: Maps for civilianand military use navigation boxes
Display/ Output Technology Hardcopy devices: vector technologies: Pen plotters raster technologies: CRT camera, dot matrix, ink jet, etc Electronic displays: vector technologies: swept, direct view storage raster technologies: CRT, LCD, plasma, etc.
Graphics Display Hardware There are two types of digital graphics files vector and raster. Vector images are made of hundreds of thousands of tiny lines and curves (or paths) to create an image. Raster images are composed of pixels.
Graphics Display Hardware Vector (calligraphic, random- scan) Driven by display commands (move (x, y), char( A ), line(x, y) ) Survives as scalable vector graphics Raster (TV, bitmap, pixmap) used in displays and laser printers Driven by array of pixels (no semantics, lowest form of representation) Note jaggies (aliasing errors) due to discrete sampling of continuous primitives
Vector Display 60s through mid 80s Practically obsolete now. Consists of a buffer memory containing endpoints of vectors (and characters) to be drawn, and a display processor that interprets the buffer and sends end points to a vector generator that drives the electron beam across the screen
Raster Display (1/2) Became affordable in mid 70s, based on television technology. Represents image as an array called a raster of colored dots called pixels that are refreshed row by row. Each row is called a raster line. Consists of a buffer memory containing codes describing the dot colors hardware that drives one or three electron beams in a regular scan pattern and a display processor that scans the buffer in sync with the beam and sets the beam intensities to produce the desired color. Cheaper RAM was breakthrough needed to make technology affordable.
Raster Display (2/2) Advantages Lower cost Less complex driver electronics Ability to display area filled with color or patterns Refresh independent of number of objects Disadvantages Need for scan conversion, e.g., lines to pixels. Slower real-time dynamics Problems with aliasing (the jaggies)
Example
Enabling Modern Computer Graphics (1/3) Hardware revolution 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 Titan Z 8122 gigaflops Newest CPUs are 64-bit, 2, 4, 6, 8, or 10 core Intel Core i7 consumer, up to 6 cores hyperthreaded to provide 12 threads Intel Haswell industrial, 8 cores HT, 16 threads
Enabling Modern Computer Graphics (2/3) Input Devices Mouse, tablet & stylus, multi-touch, force feedback, and other game controllers (e.g., Wii), scanner, digital camera (images, computer vision), etc. Body as interaction device
Enabling Modern Computer Graphics (3/3) Many form factors Smartphones/laptops/desktops/tablets Microsoft PPI display Smart watches Head-mounted displays (HMDs) 3D immersive virtual reality spaces
Conceptual Framework for Interactive Graphics Graphics library/package is intermediary between application and display hardware (Graphics System) Application program maps application objects to views (images) of those objects by calling on graphics library. Application model may contain lots of non-graphical data (e.g., non-geometric object properties) User interaction results in modification of image and/or model This hardware and software framework is 5 decades old but is still useful S o f t w a r e H a r d w a r e Application Model / database Application program Graphics Library Graphics System/ GPU 9/4/2014 27
Graphics Library Examples: OpenGL, DirectX, Windows Presentation Foundation (WPF), RenderMan, HTML5 + WebGL Primitives (characters, lines, polygons, meshes, ) Attributes Color, line style, material properties for 3D Lights Transformations
Modeling Create models Apply materials to models Place models around scene Place lights in scene Place the camera Rendering Take picture with camera Modeling vs. Rendering Both can be done with commercial software: Autodesk Maya TM,3D Studio Max TM, Blender TM, etc. S p o t L i g h t Point Light A m b i e n t L i g h t Directional Light
Thank you