1
Graphics 2
06-02408
Level 3 10 credits in Semester 2
Professor Aleš Leonardis
Slides by Professor Ela Claridge
1. INTRODUCTION
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.
What is computer graphics?
Computer graphics is concerned
with the creation and manipulation
of graphics images by computer
2
Creation (modelling)
3D Modelling
Parametric
Polygonal
Implicit
2222 rzyx =++
θ
θ
24
cossin
=
=
yx
Volumetric
3-dimensional graphics objects created in an abstract “object space”
Manipulation
• Manipulation of abstract representations of objects and their parts
Individual objects are created and then assembled into final image
TRIN
ITY
Manipulation
Individual object geometries are first modelled. These are then linked using positional / orientational relationships (via transforms)
Manipulation
• Manipulation of graphics objects – Through interactive devices (user)
– Application program (hard-wired)
– Application program (AI techniques)
• Animation
3
Graphics images
• “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)
Graphics images: Viewing and Projection
viewport
3d models camera setup
Graphics images: Camera Positioning
Different views of a 3D model
Projection - a simulation of a simple “pinhole” camera
http://photo.net/learn/pinhole/frisius.htm
4
Graphics images: Projection
Representing three dimensions on two dimensional media
Vermeer
Graphics images: Rendering
• Display of images on the screen
• Advanced rendering techniques – surfaces – colours – shading – textures
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
5
Graphics images: Rendering: Depth Cues
Perspective and Depth of Field
Shadows as depth cues
Highlight/Shadow
Graphics images: Rendering: Texture mapping
http://radoff.com/images/MMOAnatomy3.gif
Graphics images: Rendering: Rasterisation
Although the images are flattened to 2D, depth knowledge is required to order them correctly
Computer
• Hardware and software components specifically designed for graphics
– GPU
– Interactive devices
– Displays and hard-copy devices
6
3D graphics pipeline
WORLD/SCENE/OBJECT/CONCEPT
3D MODELLING
3D CLIPPING
PROJECTION
RASTERIZATION
2D PIXELMAP DISPLAY
Modelling coordinates: - world coordinate system, - object coordinate system
Camera coordinates Screen/Window coordinates Device coordinates
VIEWING
Computer graphics
• Creation and manipulation of graphics images by computer
• Other areas of computing dealing with images – image processing – computer vision
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)
7
Entertainment
• 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
Virtualized human actions
32
Virtualized human actions
33
Virtual views
34
8
Computer Assisted Drafting / Design - CAD
Tools used by engineers and designers to assist in design and documentation of new products
Medicine
Nuclear Medicine
Viewer
Medical applications
37
Medical applications
38
9
Medical applications
39
Visualisation
http://blog.tenablesecurity.com/2006/07/3d_tool_screens.html
3D graphic security tool that can help computer system administrators identify weaknesses in network security.
Commerce
• Property • Business Intelligence • E-retail • Maintenance, Training, Documentation
Property
http://www.geosimcities.com/sol_RealEstate.htm
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.
10
Business Intelligence
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.
E-Retail
http://www.virtualshowrooms.co.za http://www.technicon.com/products_demos.html#cf
Modeling environments
46
Virtual(ized) environments
47
11
Laser scanning
• 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
Digital Michelangelo Project http://graphics.stanford.edu/projects/mich/
Source: S. Seitz
Laser scanned models
The Digital Michelangelo Project, Levoy et al.
Source: S. Seitz
Laser scanned models
The Digital Michelangelo Project, Levoy et al.
Source: S. Seitz
Laser scanned models
The Digital Michelangelo Project, Levoy et al.
Source: S. Seitz
12
Laser scanned models
The Digital Michelangelo Project, Levoy et al.
Source: S. Seitz
Laser scanned models
The Digital Michelangelo Project, Levoy et al.
Source: S. Seitz
Maintenance, Training, Documentation
http://www.parallelgraphics.com
3D graphical application applied to a practical application of airplane maintenance, training and documentation
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
13
History
• First use of computer graphics?
History
• 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
• 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.
• First truly interactive graphics system, Sketchpad, pioneered at MIT by Ivan Sutherland for his 1963 Ph.D. thesis
Slide credit: Andries van Dam
Demo: Sketchpad
http://youtu.be/J6UAYZxFwLc
14
• 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 680… 3090.4 gigaflops
– Newest processors are 64-bit, 2, 4, 6, 8, or 10 core • Intel Core i7 – consumer, up to 6 cores hyperthreaded to
provide 12 threads • Intel Sandy Bridge EP– industrial, 8 cores HT, 16 threads
Enabling Modern Computer Graphics
nVidia GeForceTM chip
Slide credit: Andries van Dam
• Graphic subsystems – 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
Enabling Modern Computer Graphics
Slide credit: Andries van Dam
• 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
Enabling Modern Computer Graphics
Slide credit: Andries van Dam
• 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!
Enabling Modern Computer Graphics
Slide credit: Andries van Dam