This action might not be possible to undo. Are you sure you want to continue?
Course Speakers: Mike Bailey, Oregon State University Andrew Glassner, Coyote Wind Films
The SIGGRAPH conference is an exciting event, but it is often an intimidating experience for first-time attendees. There are so many new terms, new concepts, and new products to try to understand. It is like standing in a room with 100 doors and having no idea which door to open because you have no idea what the label on each door actually means. This leaves new attendees baffled and frustrated about how to spend their time. This course is designed to ease newcomers into the SIGGRAPH conference experience by presenting the fundamental concepts and vocabulary at a level that can be readily understood. Far from being made up of dry facts, this course will also portray the fun and excitement that led most of us here in the first place. Attendees in the course will become well-prepared to understand, appreciate, enjoy, network, and learn from the rest of the SIGGRAPH experience. This is a half-day Beginning course. This course will be given lecture-style. There will be live demos showing the use of computer graphics in applications such as modeling, animation, rendering, and visualization. These will be used to illustrate fundamental concepts and to illustrate those concepts in applications.
Mike Bailey Computer Science Oregon State University 2117 Kelley Engineering Center Corvallis, OR 97331-5501 W: 541-737-2542 F: 541-737-1300 email@example.com Mike Bailey is a professor in Computer Science at Oregon State University. Mike holds a PhD from Purdue University. Mike has worked at Sandia National Labs, Purdue University, Megatek Corporation, and the San Diego Supercomputer Center. Mike has extensive experience with the SIGGRAPH courses, having been Courses Chair five times and Conference Co-Chair in 1991. Mike has taught numerous classes at conferences (SIGGRAPH, IEEE Visualization, Supercomputing), at the college level (Purdue, UC San Diego, San Diego State University, Oregon State University), and
commercially. Mike was five times voted Computer Science Teacher of the Year by the UCSD CS seniors.
Andrew Glassner Coyote Wind Films 726 North 47th Street Seattle, WA 98103 W: 206-632-7663 F: 206-632-7665 firstname.lastname@example.org Andrew Glassner is an independent writer and consultant. Andrew holds a PhD from the University of North Carolina at Chapel Hill. Andrew is well known in the SIGGRAPH community through his papers, panel presentations, and course speaking. Andrew has also worked at Xerox PARC, IBM Watson Research Lab, Bell Communications Research, Delft University, the New York Institute of Technology, and Microsoft Research. Andrew is familiar with the workings of SIGGRAPH, having been Papers Chair in 1994. Andrew is also known for his "unique" sense of humor that comes through in his presentations.
The prerequisites for this course are a basic understanding of computers and algebra. We will fill in all other required knowledge by carefully planning the order of presentations.
Level of Difficulty
This course is intended for the complete newcomer to SIGGRAPH and computer graphics who wants to learn some of the basic terms and concepts in computer graphics as well as receive some guidance on how to get the most out of attending SIGGRAPH.
8:30: Welcome and Overview (Bailey) o Course goals and schedule 8:30 – 9:00: How to attend a SIGGRAPH, I (Bailey) o How to read the schedule and where to get more help o What other courses will attending this one qualify you for? o What is the difference between Papers and Panels? o What are Posters? o What is the Educators program? o What to look for in the Exhibition, and advice on getting the most from it in a short time 9:00 – 9:30: How to attend a SIGGRAPH, II (Glassner) o Why you want to attend the Electronic Theatre and when o How is the ET different from the Computer Animation Festival? o What is the difference between Papers and Sketches? o What is special about the Art Gallery? o What is Emerging technology about? o What is the Guerilla Studio? 9:30 – 9:45: Scientific and Data Visualization (Bailey) o What problems are you trying to solve? o How does this impact hardware and software decisions? 9:45 – 10:15: GPU Programming (Bailey) o Vertex, Geometry, Fragment shaders o Where does this fit in the graphics pipeline? o What you can do with shaders -- effects, visualization, geometry o How does this affect buying a graphics card? 10:15 – 10:30: Morning Break 10:30 – 11:00: Modeling (Glassner) o The creation of 3D models o Scene descriptions o Levels of detail o Model "robustness" versus complexity o Geometric primitives 11:00 – 11:30: Rendering (Glassner) o Efficiency, Accuracy, Effects o Two approaches: start at the object and start at the eye o Local and global illumination o Shading o Cel rendering o Toon rendering o Rendering in Hardware 11:30 – 12:00: Animation (Glassner)
o o o o •
Keyframe interpolation Object geometry animation Camera animation Kinematics and inverse kinematics
12:00 – 12:30: Finding additional information (Bailey)
Purdue University. Megatek. San Diego Supercomputer Center (UC San Diego). and OSU mjb@cs.Introduction to SIGGRAPH and Computer Graphics Mike Bailey Oregon State University Andrew Glassner Independent Mike Bailey Professor of Computer Science. Oregon State University PhD from Purdue University Has worked at Sandia Labs.edu .oregonstate.
screenwriter. NYIT. Xerox PARC. Microsoft Research.com Course Goals • Understand the different venues at SIGGRAPH. Bell Communications. panels. and how to strategically attend the ones that are best for you • Provide a background for papers. and Coyote Wind Studios andrew@glassner. artist from Coyote Wind Studios PhD from the University of North Carolina Chapel Hill Has worked at IBM. and other courses • Help appreciate the Electronic Theater • Get more from the vendor exhibits • Give our take on where the future is • Provide pointers for further study .Andrew Glassner Author. Delft University.
Topics • How to Attend SIGGRAPH 2007 (Mike and Andrew) • Scientific and Data Visualization (Mike) • GPU Programming (Mike) • Modeling (Andrew) • Rendering (Andrew) • Animation (Andrew) • Finding More Information (Mike) Introduction to SIGGRAPH and Computer Graphics Mike Bailey Oregon State University Andrew Glassner Independent .
com You can’t see it all.Make a Plan and a Schedule ! . so … Think Strategically -.How To Attend SIGGRAPH 2007 Mike Bailey Oregon State University email@example.com Andrew Glassner Coyote Wind Studios andrew@glassner.
Courses • Sunday – Wednesday • Some are “standard knowledge” (e.g.. this one…) knowledge” one… • Some are cutting edge • Some are new topics • You got the full set of notes on the courses DVD Courses Strategy • Choose courses that are useful • Choose courses that are meaningful • Chose courses where you really want to see the speaker(s) speaker(s) • Choose courses for which there will be great visual presentations which cannot be replicated in the notes • Hop around between courses to catch the best topics and speakers .
3D interfaces. applications.Web Program • Wednesday . and standards Opening Session • Monday.Thursday • Covers issues such as: navigation. animations. 1:15 – 3:15 • Doors open ≈ 12:30 • Only those with Full Conference or One Day badges can enter • “State of the SIGGRAPH” message by the SIGGRAPH Chair SIGGRAPH” . games.
Opening Session Awards • Coons Award • Achievement Award • Significant New Researcher Award Papers • Monday-Thursday Monday• Deep technical information • Printed in the proceedings and on the conference DVD • Strategy: attend when an animation or interactive technique is being discussed • Strategy: attend when you think you will not understand the topic from reading alone .
opinion.Panels • Monday-Thursday Monday• General discussion. or animation you really want to see is being discussed Sketches • Monday .Thursday • Paper-like content. usually not • Strategy: attend when a topic. sometimes controversial • Important point: sometimes transcribed. but shorter and less formal Paper• Some of the work has been completed • Some of it is “Work in Progress” Progress” . speaker.
so go with a strategy! it’ . it’s big. 3:45-5:30 3:45- Exhibition • Tuesday – Thursday • Many vendors time their hottest product releases for this week! • But.Special Events • Fast-Forward Papers review: Sunday 6:00-8:00 Fast6:00• ACM Student Research Competition: Tuesday.
where XX is the Aisle # and YY is (1/5)*the number of feet from the front • For example. and 10:00-5:00 on Thursday 10:00• The vendors are all listed in the Program and Buyer’s Guide Buyer’ • They are listed both by alphabetical name and by product category Exhibition Strategy • Look at the list of vendors in the Program and Buyers Guide • Make a list of the ones you really must see and sort the list by booth number • Booth numbers are XXYY. BunkSpeed = booth 1110.Exhibition Strategy • The Exhibition is open 10:00-6:00 on Tuesday and 10:00Wednesday. which is Aisle 11. 50 feet from the front • Start at one end of the floor and work your way across .
tutorials. and interactive instruction • Sometimes a raw sales pitch. but usually more informative than that .Exhibitor Tech Talks • Tuesday .Thursday • 2-hour demos.
Exhibition Warning The Exhibition closes at 5:00 on Thursday afternoon. not 6:00 !!! Electronic Theatre • Monday – Wednesday • Computer Graphics’s greatest animation hits for Graphics’ the past year • It is considered cool to see it early in the week • Watch to see whose piece goes first and whose goes last • Sometimes includes an audience participation piece .
Reception ! • Wednesday 8:00 – 10:00 Pathfinders • Staffed by “graphics veterans” who can give advice on veterans” attending the conference • They are also very nice people • Open Saturday – Thursday .
Art Gallery • Sunday – Thursday • Always fun ! • Be sure to see it. 6:30 PM . even if you just stroll through without stopping Get Involved ! • Tuesday.
audio. music.Educators Program • Wednesday and Thursday • Presentations of innovative educational uses of computer graphics • Covers both teaching computer graphics and using computer graphics to teach other things Emerging Technologies • Sunday . web. visualization. gaming. robotics. sensors. haptics.Thursday • Speculative research on graphics. displays. and entertainment . AI. haptics.
Guerilla Studio • Sunday . and 3D prototyping Job Fair • Tuesday – Wednesday • Good place to find information on who is hiring • Also a good place to post your resume .Thursday • Working studio for 2D and 3D graphics.
and have fun ! .Birds of a Feather • Opportunity for impromptu gatherings centered around different topics • All week • Check the BOF sign-up board sign- Good Luck.
How To Attend SIGGRAPH 2007 Mike Bailey Oregon State University firstname.lastname@example.org .edu Andrew Glassner Coyote Wind Studios email@example.com.
Visualization provides very nice examples of that.oregonstate. 1 . Much of it is used for data exploration and education.edu Why Are We Covering This Topic? Not all computer graphics is used for realistic rendering.Computer Graphics for Scientific Visualization Mike Bailey Oregon State University mjb@cs. and games. animation.
Computer Graphics Geometry “Rendering” Display A Gallery of Display Options Points Lines Flat Shaded Smooth Shaded Transparent 2 .
Scientific Visualization Data “Geometrizing” Geometry Information & Insight “Rendering” Display Visualization Dimensions Spatial Dimension 2D 3D Scalar Data Dimension Vector 3 .
2D Scalar Examples: • Temperatures on a plane • Barometric pressures on a map • Heights on a map Techniques: • Colored dots • Contour lines • Interpolated Colors 2D Color Interpolation 4 .
2D Contours 3D Scalar Examples: • Temperatures in a room • Molecular potentials Techniques: • Colored dots (“point cloud”) • Cutting plane • Isosurfaces 5 .
3D Orthographic Point Cloud 3D Perspective Point Cloud 6 .
3D Jittered Point Cloud Cropping the Point Cloud: Range Sliders 7 .
Cropping in X. Z Cropping in S 8 . Y.
What’s Happening on a Cutting Plane? What’s Happening on More Than One Cutting Plane? 9 .
What’s Happening within the Volume? 3D Wireframe Isosurface 3D Polygonal Isosurface 10 .
Isosurface + Contour Plane Isosurfaces of Medical Data 11 .
3D Vector Examples: • 3D flow field Techniques: • Arrows (“vector cloud”) • Streamlines 3D Flow Field Streamlines Vector Cloud 12 .
3D Flow Field Probes Ribbon Trace Streamline Trace 3D Flow Blob Probes 13 .
3D Volume Examples: • 3D Medical Scan Techniques: • Volume Rendering 14 .
A Volume is Essentially a Point Cloud Where Each Point has Size Original Data: Range Crop the Scalar Value: 15 .
Cropping the Volume Turbulent Flow Solar Wind 16 .
Bone Structure Underground Rock Layers Setting Colors Red+Green=Yellow Green+Blue=Cyan Red+Blue=Magenta Red+Green+Blue=White Known as “Additive Color”. g. 17 . or “RGB” glColor3f( r. b ).
mostly concentrated in the center of your field of vision. Cones: Provide perception of colors.30R + .Color Rules: Your Eye Rods: Provide perception of light intensity. Much fewer of these. Lots of these.11B Use it to decide what makes a good contrast and what doesn’t 18 . Color Rules • Remember the Luminance Equation: L = . mostly concentrated in the periphery of your field of vision.59G + . or luminance.
Black White Black White Black White Black White Black White Black White Black White Black White Black White Red Red Red Red Red Red Red Red Red Yellow Green Blue Yellow Green Blue Yellow Green Blue Yellow Green Blue Yellow Green Blue Yellow Green Blue Yellow Green Blue Yellow Green Blue Yellow Green Blue Color Rules • Do not use Reds and Blues directly together 19 .
20 . This is especially true if you are going to be videotaping this display. Color Rules • The best colors for fine detail are black-grey-white. It is hard for your eyes to focus on both.Reds and Blues are on opposite ends of the color spectrum.
Color Rules • Surround contrasting color areas with a white or black line 21 .
Be aware that our perception of color changes with: • The surrounding color • The size of the object • How close two objects are • The ambient light • The age of the viewer
Watch out for afterimage effects !
Color Rules Watch out for afterimage effects ! + Beware of Mach Banding 26 .
Beware of Mach Banding Actual Intensity Perceived Intensity Beware of Mach Banding Perceived Intensity Actual Intensity 27 .
Beware of Lots of Other Stuff Visualization Hardcopy • Film recording • Color printing • Videotaping • Manufacturing 28 .
Blue-Orange 96 cycles/scanline 3.NTSC Videotaping for Visualization Hardcopy • Resolution is 640x480. Luminance 267 cycles/scanline 2. at best • Interlaced • Color bandwidth is given to. Purple-Green 35 cycles/scanline • Saturated (bright) colors don’t come out well Fabrication for Visualization Hardcopy Black Beetle Virus 29 . in order: 1.
Oregon Willamette Valley Geology 30 .
Example: Model of Southern California Fire Smoke Example: Modeling Anabolic Aortic Aneurysms CAT scan slices from the UCSD Medical School Interaction in OSU vx (Volume Explorer) Tesselated by OSU vs (Volume Solid) Fabricated at OSU Center for Visualization Prototypes 31 .
Anything that turns data in the computer into information and insight in your brain is fair game.oregonstate.edu 32 .Summary Scientific Visualization has “no rules”. Computer Graphics for Scientific Visualization Mike Bailey Oregon State University mjb@cs.
new area in computer graphics • These notes will focus on what can be done this way. not on how to do it (that would take lots more time) • If you want to know more. catch me during a break! .edu GPU Shader Programming • Allows programmers to load their own code into parts of the hardware graphics pipeline • Gives a unique combination of control and speed • This is a hot.GPU Shader Programming Mike Bailey Oregon State University firstname.lastname@example.org.
The Generic Computer Graphics System Input Devices Vertex Processor CPU B u s Rasterizer Fragment Processor TC RGBAZ Pixels Uniform variables Network Shader Memory Uniform variables Display List Z-Buffer Back Front Video Driver Texture Memory Double-buffered Framebuffers A GLSL Vertex Shader Replaces These Operations: • Vertex transformations • Normal transformations • Normal normalization • Handling of per-vertex lighting • Handling of texture coordinates A GLSL Fragment Shader Replaces These Operations: • Color computation • Texturing • Color arithmetic • Handling of per-pixel lighting • Fog • Blending • Discarding fragments .
Bump Mapping with Shaders Changing the Bump Height .
Cube Mapping with Shaders Cube Map of Nvidia’s Lobby .
Using Noise in Shaders Positional Noise .
Gradient Noise Image Representation of 2D Noise 4 Octaves 1 Octave .
3D Surface Representation of 2D Noise 4 Octaves How to Apply Noise Have an equation to describe color assignment Have actual coordinates at a pixel Add Noise to the actual coordinates to produce new coordinates Use the new coordinates in the old equation to assign a color at that pixel .
Noise Examples Color Blending for Marble Color Blending for Fire Color Blending for Clouds Deciding when to Discard for Erosion Using Shaders to Manipulate Imagery .
Negatives Brightness .
Contrast Sharpening .
Embossing Toon Rendering Original Image Colors Quantized Outlines Added .
if ever? .Toon Rendering for Non-Photorealistic Effects Use the GPU to enhance scientific and engineering illustration Mandelbrot Set zi+1 = z +z 2 i 0 How fast does it converge.
if ever? Spectral Effects Using Shaders .Julia Set zi+1 = z +c 2 i How fast does it converge.
528 Θ 42° 41° 40° cosΘ 0.766 ΘΘ 50. paint the right color 3. discard that fragment .510 1.0° 51.5° 53. Anywhere that .743 0.7400 ≤ cos(Θ) ≤ .0° Rainbow Strategy 1.7700. If not.Rainbow Effects ~ 41 ° Color Red Green Blue λ ≈ 650 nm ≈ 500 nm ≈ 400 nm η 1. Draw one big quadrilateral across the scene 2.755 0.519 1.
Scientific Visualization using Shaders Bump-Mapping for Terrain Visualization Visualization by Nick Gebbie .
3. Find the flow field velocity vector there Follow that vector in both directions Blend in the colors at the other fragments along that vector Rotational flow field 3D Line Integral Convolution Visualization by Vasu Lakshmanan . 2.2D Line Integral Convolution Original image At each fragment: 1.
Extruding Shapes Along Flow Lines Adding moving “humps” to create a peristaltic effect Adding bumpmapping to aid in understanding the orientation Geometry Processing using Shaders .
with Geometry Shaders Vertex Processor Transformed Vertices Vertices CPU B u s Assemble Geometry Create New Geometry Assemble New Geometry Assembled Primitive Rasterizer Interpolated Values Fragment Processor Pixels Expanding 4 Points into a Bezier Curve with a Variable Number of Line Segments FpNum = 5 FpNum = 25 .A Shader-eye View of the Graphics Process.
Sphere Subdivision starting with 8 triangles Level = 0 Level = 1 Level = 3 Level = 2 Shrinking Triangles .
Geometry Silhouettes Hedgehog Plots .
Hedgehog Plots Gone Wild? GPU Shader Programming There are a lot of GPU shader programming resources at: http://eecs.oregonstate.edu/~mjb/glman Mike Bailey Oregon State University email@example.com .oregonstate.
An Introduction To Modeling Andrew Glassner Coyote Wind Studios 3D Computer Graphics The Big Picture Why Create 3D Models? • • • • • Image Synthesis Design Manufacturing Simulation Art 1 .
Models for Image Synthesis • Camera – Viewpoint for image Models for Simulation • Physics – An airplane wing • Light Sources – Radiate light – Have size and shape • Mechanics – Fit between parts – Manufacturability • Objects – Physical structures Model Attributes • Structure – Geometry and Topology Levels of Detail • Visual detail for images • Structural detail for simulation • Appearance – Looks and surfaces 2 .
Seeing in 3D • The world in basic shapes • Simple but not too simple 3 .
and occupies more disk space • Procedural objects – More detail when you want it 4 .Detail for Image Synthesis • Real shapes are complex! • More detail = more realism – Takes longer to model. longer to render.
Detail for Simulation • Can affect accuracy of simulation • Different simulations require detail in different places Levels of Detail for Simulations Does it fit in the box? Does it fit with the cover on? Types of Modelers • • • • Interactive Scripted Data Collection Others 5 .
<A Model Manipulation 6 .
A> Primitives and Instances • Platonic “ideal” • Shapes are instances of primitives • Each instance may be different 7 .
Choosing a Model Representation • • • • • Cost Effectiveness Complexity Ease of Simulation Ease of Animation • • • • • Model Cost Designer’s time Computer Storage Rendering Time Simulation Time Ease of Animation Model Effectiveness • Geometry – Looks – Accuracy Model Complexity • Number of primitives • Number of shapes • Complexity of each instance • Appearance – Looks – Accuracy Model Simulation • Is shape matched to simulator? • Cost of conversion – Time and storage – Maintaining duplicate versions Model Animation • Articulation – Getting at the part you want – Getting it to move correctly • Physics of motion • Constraints 8 .
Modeling and Rendering • Rendering adds light • The renderer tracks the light • Lights and cameras are part of the model. Modeling and Animation • Animating is a model over time • Different keys given by the animator are interpolated to give in-betweens Levels of Detail • Use only enough detail – Complexity costs Procedural Models • Create model on demand • Models from coarse to fine • Requires skillful programming • Switch levels of detail – Requires multiple models – Switching is hard to hide • Automatic Methods Basic Linear Operations on Primitives Translate Rotate Scale <B Box Modifiers 9 .
B> 12 .
taper. not the object • Great for animation • Allows flexible transformations – Bend. melt. twist.Free-Form Deformation • Change the space. <C FFD 13 . etc.
C> Types of Primitives • • • • 0 1 2 3 Dimensions: Points Dimension: Lines Dimensions: Surfaces Dimensions: Volumes Point Primitives • Particle systems • Requires many particles • Often procedurally controlled 14 .
really flat.Surface Primitives • Polygons • Patches • • • • • • Polygons Simple to define and use Assemble to make polyhedra Flat Flat Flat Really. always <D Polygon shading 15 .
D> <E Polygon counts 17 .
E> Images by Neil Blevins Images by Neil Blevins 18 .
Patches • • • • Naturally curved Defined by control points or curves Interpolating Approximating Interpolation and Approximation Interpolation Approximation Continuity 0-order 1-order 2-order • • • • • Types of Patches Bezier B-spline Bicubic NURBS many more 19 .
<F Mesh Smooth 22 .
closed • Can be complex.F> Voxels • Small blocks of space • Equally-sized (grid) • Varying sizes (octree) Volumetric Primitives • Volumes that enclose some space • Open vs. a donut Voxels for Approximation Original Shape Voxel Approximation Constructive Solid Geometry • Combination rules for solids • Each combines two solids • Results can are new solid – CSG Tree <G CSG 23 • Three (or four) rules . e.g.
CSG Difference is Not Symmetrical A B Union: A + B A B A.B B-A Difference: A-B AIntersection: A&B Difference is Useful for Cutting Holes Block + Cylinder Block .Cylinder 24 .
radius2 25 . usually spherical • Add together to make smooth blends F(x.G> Algebraic Functions Fillets and Blends • Make a smooth join between surfaces • Hard to do automatically Blobs • Algebraic functions.y)= x2 + y2 .y)=0 F(x.
Loft Surface of Revolution • Make an outline • Revolve it 26 .<H Blobby movie SOR. Extrude.
Extrusion • Make an outline • Sweep it along a line or curve H> <J Morph 27 .
J> K> <K Sheets Shading 28 .
Texture 32 .
<L Solid Texture 35 .
L> Knotwork 36 .
Texturing Methods 41 .
• • • • Fractals Graphtals Shape Grammars General Procedural Models
• Self-similar • Infinite detail
– Computer only approximates
• Difficult to control • Mountains and ferns
• • • • Make the structure first Add geometry later Useful for plants and organic forms Data Amplification
• Shapes that turn into other shapes • Details that work with substrate • Data Amplification
2D Variations 46 .
3D Shape Grammars 51 .
animation Allows models that interact with the scene 59 .General Procedural Models • • • • Most powerful technique of all Smooth changes in detail Supports simulation.
• • • • Interactive Scripted Captured Clip Art
• Interactive • Exploratory • Immediate Feedback
• Precise • Repeatable
• Build up 3D intuition • Stretches visual imagination
• • • • Allows capturing real-world shapes Generates rich models Can be noisy Can have geometric restrictions • • • •
Fast acquisition Can be cheaper May not be articulated as you want Difficult to customize
Modeling for Animation
• Rigid structures are easiest to make • Articulated structures are easiest to animate • Plan for where you want motion • Built-in constraints
• Many primitives • Many modelers • Use what you need • modeler, primitive, construction
style, and level of detail
• Think before you model!
Sculpture • Physics – Studying nature • Computers – Efficient algorithms What is Rendering? • Turning ideas into pictures • Communications tool • A means to an end 1 .An Introduction To Rendering Andrew Glassner Coyote Wind Studios Rendering Roots • The Visual Arts – Painting.
Approaches to Rendering • Simulate Nature • Anything else Simulating Nature • Advantages – Precise goal – Path is clear – Practical value • Disadvantages – Ignores other styles 2 .
Photorealism • The Big Winner so far – coined in 1968 – just one school of art – alternatives emerging 3 .
physics.Today’s view • Rendering as commodity • Buy. images. don’t write • Still requires care – Efficiency – Accuracy – Effects Rendering • Transformation • Inputs – Geometry. perception • Output – Images Purpose of this talk • The basic ideas – Techniques – Tradeoffs – Vocabulary The Rendering Equation • Unifies all algorithms • Based on nuclear physics • Trivial and self-evident • High-level understanding – Not programming! The Big Picture • Fake a photo (almost) • Data into picture – Geometry – Surfaces • Reflection • Transparency • Emission – Camera and film 4 . programs.
Light and Matter • Reflection • Transmission • Absorption Rendering • Interaction of Light and Matter – Light – Matter The Flow of Light • Flux • Photons in space 5 .
The Usual Question • What’s the color of the light – from this point – on this surface – in this direction The Interaction • Light arrives • Energy transfers • Light departs 6 .
Shading • 1. Calculate incident light • 2. Gather Incident Light 2. Interact With Material 7 . Calculate outgoing light 1. Interact with material • 3.
Visibility • What do I see? • Paint by numbers 3. Calculate Outgoing Light Shading and Visibility • Visibility – What we see Shading • Fill in the numbers • Don’t stick to flat colors • Shading – How it looks 8 .
be happy Visibility: Paint-by-numbers 8 4 5 7 Why do it globally? • • • • • Shadows Reflections Refraction (transparency) Emissions (light sources) Subtle touches 2 3 1 6 Shading: Object colors • • • • • Why do it locally? Often close enough Fast! Hardware support Many effects can be faked Unlimited scene size 9 . be happy • Global shading – Do it slow and correct – Worry. fast and dirty – Don’t worry.Local & Global Shading • Use environment. or fake it? • Local shading – Fake it.
Ray Tracing 2 • Shoot new rays to find illumination Ray Tracing Ray Tracing 1 • Follow lines of sight 10 .
Ray Tracing Without Words 11 .
Radiosity 1 • Discretize the environment Radiosity 2 • Bounce energy back and forth Radiosity 12 .
Radiosity 3 • View results 13 .
Radiosity Without Words 14 .
Lighting Images by Neil Blevins 15 .
Comparing Ray Tracing and Radiosity Images by Neil Blevins Image by Neil Blevins Image by Chris Pember 16 .
Hardware support • Z-buffers – Inifnite # of objects – Local shading – Fast – Many tricks available Image-Based Rendering • Some photos • Some geometry Rendering at extremes • Atoms – or sub-atomic particles Sue Vision • Galaxies – or the Milky Way • Relativity • Ocean depths • Inside people Bob Graphics Image-Based Rendering (IBR) 17 .
Computer Graphics Output Image Synthetic Camera Model Computer Vision Output <A Alpha Maps Model Real Scene Real Cameras CG Meets CV A> 18 .
<B Street Barricade B> <C Patio Table 19 .
C> 21 .
Fluorescence Solar Halos 22 .
Halo Movie Odd Output Media 25 .
Interference 26 .
Relativity 27 .
Polarization Phosphorescence 28 .
Caustics Focused light Image by Johan Thorngren Image by Johan Thorngren 30 .
Volumetric Effects Non-Euclidean Space 31 .
Exposure • • • • Cameras Lenses Films Intended viewing conditions Animation • Film: 24 frames/second – 30 minutes = 43.200 frames – More for TV! • Motion blur 32 .
recent conditions • Interpolation is tricky – RGB is not perceptually uniform Non-Realistic Rendering Color 1 • • • • • The The The The The RGB Myth HSV Myth 8-bit Myth Constancy Myth Fifth Myth with pith 33 . monitors • Perception matters – Metamers – Diet.Color 2 • Devices vary – Printers vs.
fluorescents Metals 34 .Real Materials • • • • Absorption spectra Layers or coatings Phosphors.
space 35 . Floating point – Symbolic • Compression – Lossy (MPEG. JPEG) – Non-lossy (GIF) – Speed vs.Reflectivity of Paper Images 1 • Frame buffers – Pixels – 8 bits/color • Samples – 1 sample/pixel – Supersampling Images 2 • Storage – Components • Integer.
foregrounds Real Projection Mattes – Matte lines – Matte operators – Alpha buffers 36 .Compositing • • • • Layering of images Backgrounds.
Image by Michael Spaw Image by Steven Blackmon Image by Johan Thorngren 37 .
Dorsey. Reid Gershbein. John R. Pat Hanrahan Color Head: Philippe Lacroute. Donald P. Kenneth Torrance 1984: Tom Porter. Rob Cook. Sillion. Camshaft. Andy Forsberg. Grandpa?” 38 . Wallace. Donald P. Cohen. Greenberg Opera Lighting: Julie O'B. Cohen. Loren Carpenter The Compleat Angler: Turner Whitted Still Life: Cassidy Curtis Focused Caustics: Paul Heckbert TV Room: Bob Zeleznik. Greenberg 3 teapots. Wallace. Greenberg Two Pass Rendering: John R. Liberty Set. Ronchamps: Eric Haines • “You did what. Shenchang Eric Chen.Donald P. Filippo Tampieri. Craig Kolb. Counter. Greenberg Radiosity Factory and Museum: Michael F. Francois X. Michael F. Caustic Pool: Eric Veach Summer Lake: Matt Pharr. Marc Levoy Material Vases: Rob Cook.The future 1 • Photorealism grows – More accuracy – More speed – Parallel algorithms Where The Fun Is • Non-Realistic rendering • Shaders • The fuzzy space • Subjective Rendering grows – New opportunities – More personal Image by Tomek Baginski Image by Jorge Seva & Sergio Miruri The future 2 • Desktop animation – Sophisticated support – Standards and architectures – Rendering one piece among many • • • • • • • • • • • • • • • • Image Credits Discontinuity Meshing: Dani Lischinski. Loring Holden Big Cloud: David Ebert Interior: Michael Fowler Sphereflake. Donald P.
Thanks • • • • • Michael F. Cohen Peter-Pike Sloan Jonathan Shade Paul Debevec Marc Levoy 39 .
Image by Steven Blackmon 42 .
An Introduction To Computer Animation Andrew Glassner Coyote Wind Studios 1 .
Why Animation Works • Many still images • Rapid succession • Persistence of vision – Must overcome flicker 2 .
000 frames • 5 minutes/frame.Animation is Expensive! • 30 frames/second • 30 minutes = 54. 12 hours/day ~ 1 year • Limited animation • Computer-assisted animation Thinking About Animation • Low level: Individual frames • Mid level: Sequences & scenes • High level: Story and message • Computer helps all 3 levels 3 .
Traditional 2D Animation • Hand-drawn cels • Stacks of cels over background • Only redraw cels that change – Limited animation • Experimental forms 4 .
Traditional 3D Animation • Individual frames • Stop motion – King Kong. Wizard of Space & Time • Puppetry – Claymation • Experimental forms Computer-Assisted Animation • 2D – Create & draw frames – Computer helps ink & paint 5 .
composes 6 . poses – Computer interpolates – Computer renders.Computer-Assisted Animation • 3D – Create models. sets.
2D Computer Animation • What gets interpolated? – Strokes – Outlines – Colors • High-quality compositing 7 .
2D Morphing • Image interpolation • Feature matching • Multiple layers 8 .
3D Computer Animation • What gets interpolated? – Shape geometry – Shape appearance – Light source information – Cameras – Anything! 9 .
3D Computer Animation • 1. Interpolate • 2. Compose Object Animation • Location • Geometry • Transformations & deformations • Appearance and textures • Light sources 10 . Render • 3.
Camera Animation • FOV • Focal length • Position & orientation Object Interpolation • Parameterized transformation – Rotation – Scaling – Deformation • Interpolate parameters • Build new transformations 11 .
3D Animation Methods 1 • Low level manual • High level manual • Automated Parametric Interpolation • Any number of parameters • User-specified smoothness • Transformation & deformations • Parameter source – User – Measured (rotoscope. mocap) – Procedural 13 .
Kinematics • Specify position and time • Give velocity. acceleration of parts • Nested interpolation • Each transformation accessible 14 .
Bouncing Ball 15 .
Bounce Ball vertical position 17 .
Squash Ball squash percentage 18 .
Path Ball track position 19 .
Ball track percent Path 20 .
Inverse Kinematics • Goal-driven • Supports constraints • Control what you care about – Let computer fill in the rest 21 .
IK 22 .
Constraints • Parametric restrictions • Aids in inverse kinematics – Put the foot on the ground • Restricts model to “sensible” poses and motion • Can be frustrating 23 .
Dynamics • Physical simulation • Based on physics • Requires physical data – Mass. friction. • Accurate motion • Difficult to control 24 . moments of inertia. etc. center of mass.
Simulation • Precompute model parameters • May be expensive • Many methods available • Complex motion – Flocking – Cloth – Liquids 25 .
Dynamics 26 .
Cloth films 27 .
Wizard 31 .
Parameterized Motion • Capture • Synthesize MOCAP processing The Process of Motion Capture: Dealing with the Data Bodenheimer. Rosenthal. Rose. Pella Computer Animation and Simulation 1997 32 .
Compositing • Multiple renders • Overlay results • Huge time savings • Extra control 33 .
• Points • Born, Live, Die • Color • Motion • Geometry
• Programming language • Results of simulation
– With constraints
• Can include 2D transitions
Artificial Intelligence • High level “director’s language” • Conversations • Shots • Scripts? 39 .
Combined Methods • Key-framing major components • Simulation for details – Secondary motion 40 .
Slide Credits • Charles F. Cohen • Bobby Bodenheimer 41 . Rose • Michael F.
glassner.com www.Conclusions • The computer is not the animator! • Many types of motion control • Different skills involved • Emotion still requires acting Thank you! firstname.lastname@example.org 42 .
Fundamentals of Computer Graphics. Graphics Gems 5. Charles River Media. 2001. 1994. Andrew Glassner. Olin Lathrop. AddisonWesley. 3rd Edition. James Arvo. Alan Paeth. 2007 1 .org/publications/bibliography F. 1996. Hill. Graphics Gems 3. Peter Shirley. McGraw-Hill. Mathematics for 3D Game Programming and Computer Graphics. Prentice Hall. 1990.2 Math and Geometry Eric Lengyel. Alan Watt. Interactive Computer Graphics: A Top-down Approach with OpenGL. 1995. 1998. Graphics Gems 2. Academic Press. Graphics Gems 4. A Trip Down the Graphics Pipeline. References 1. AK Peters. 2004. Donald Hearn and Polly Baker. Procedural Elements for Computer Graphics. S. Addison-Wesley. 2000.Where to Find More Information about Computer Graphics and Scientific Visualization Mike Bailey Oregon State University 1. Paul Heckbert. Pearson/Prentice-Hall. Jim Blinn. 2005. 2000. Academic Press.1 General SIGGRAPH Online Bibliography Database: http://www. Academic Press. Computer Graphics Using OpenGL. 3D Computer Graphics. 1. 1997. 1991. Edward Angel.siggraph. Curves and Surfaces in Geometric Modeling. Morgan Kaufmann. Academic Press. April 20. 2002. 1992. David Kirk. Morgan Kaufmann. David Rogers. Academic Press. Computer Graphics with OpenGL. 1997. John Wiley & Sons. Dirty Pixels. Morgan Kaufmann. Jim Blinn. Graphics Gems. 2003. Jean Gallier. SIGGRAPH Conference Final program. The Way Computer Graphics Works.
2000. OpenDX: Paths to Visualization. Visualization and Imagery Solutions. Springer-Verlag. 1999. Christopher Johnson and Charles Hansen. Subdivision Methods for Geometric Design: A Constructive Approach. Morgan Kaufmann. McGraw-Hill. 1979. Inc. Christopher Hoffman. 1992.J. Joe Kniss. 1997. Peters. 2006. Academic Press. Physically-Based Modeling for Computer Graphics. Tony DeRose. I. Ken Martin. Chandrajit Bajaj. Faux and M. Prentice-Hall. 3rd Edition. Markus Hadwiger. Volume Graphics. Wadsworth & Brooks/Cole. Arie Kaufman. AK Peters. Computational Geometry in C. Cambridge University Press. Elementary Differential Geometry. Joe Warren and Henrik Weimer. Ellis-Horwood.Walter Taylor. John Wiley & Sons.K. Gerald Farin. 1996. David Rogers and J. 1989. Computational Geometry for Design and Manufacture. William Schroeder. 1992. Geometric & Solid Modeling. and Bill Lorensen. Data Visualization Techniques. 2005.3 Scientific Visualization Klaus Engel. 1992. 1989. David Thompson. Curves and Surfaces for Computer Aided Geometric Design. Joseph O’Rourke. Eric Stollnitz. The Visualization Handbook. April 20. Elsevier Academic Press. MorganKaufmann. Barrett O’Neil. The Geometry Toolbox for Graphics and Modeling. 2001. 2001. 1. Morgan Kaufmann. and David Salesin. 1996. 1985. 2004. and Roni Yagel. Geometric Modeling. Academic Press. Christof Rezk-Salama. Generative Modeling for Computer Graphics and Computer Aided Design. and Daniel Weiskopf. Ronen Barzel. Alan Adams. Pratt. Academic Press. Academic Press. 3rd Edition. 1998. The Visualization Toolkit. John Snyder. The Geometry of Computer Graphics. A.. Wavelets for Computer Graphics.D. and Ray Ford. Mathematical Elements for Computer Graphics. Min Chen. 2007 2 . Jeff Braun. John Wiley & Sons. 2000. Michael Mortenson. RealTime Volume Graphics. Gerald Farin and Dianne Hansford.
IEEE Computer Society Press. Stereo Computer Graphics and Other True 3D Technologies.G. Prentice Hall. Robert Wolff and Larry Yaeger. Academic Press. Oxford Press. The Illusion of Reality. Supercomputing and the Transformation of Science. Smith. Scientific Visualization: Overviews. Principles of Digital Image Synthesis. L. 3D Graphics: A Visual Approach. Springer-Verlag. 1989. Spyglass. Princeton University Press. 2006. The CrystalEyes Handbook. 1. Academic Press. 1993. Illumination and Color in Computer Generated Imagery. The ITK Software Guide: The Insight Segmentation and Registration Toolkit (version 1. Techniques. Effective Color Displays. William Kaufmann and Larry Smarr. April 20. Methodologies. 1991. Edward Tufte.5 Rendering Andrew Glassner.4). Visual Explanations. 1993. Visualization of Natural Phenomena. Thorell and W. 1995. 2003. 1. Graphics Press. 1993. Radiosity and Realistic Image Synthesis. Using Computer Color Effectively. 1997. An Introduction to Ray Tracing. Morgan Kaufmann. 1991. Beautiful Evidence. Springer-Verlag. 2007 3 . Andrew Glassner. 1993. Springer-Verlag. 2003. 1997. Edward Tufte.J. 1993. A Field Guide to Digital Color. Rosalee Wolfe. Visual Cues: Practical Data Visualization. 1990. 1990. Prentice-Hall.Luis Ibanez and William Schroeder. and Heinrich Müller. The Data Handbook: A Guide to Understanding the Organization and Visualization of Technical Data. Graphics Press. Scientific American Library. 1983. 1992. Michael Cohen and John Wallace. Morgan-Kaufmann. IEEE Press. Envisioning Information. AK Peters. David Travis. David McAllister. Greg Nielson. Brand Fortner. The Visual Display of Quantitative Information. 1989. Graphics Press. Peter Keller and Mary Keller. Edward Tufte. Roy Hall. Edward Tufte. Lenny Lipton.4 Color and Perception Maureen Stone. Graphics Press. StereoGraphics Corporation. 1989. Hans Hagen. Howard Resnikoff.
Charles River Media. Munlo Coutinho. Charles River Media. 1. 2001. O’Reilly and Associates. AK Peters. 2005.net http://www. David Eberly. David Bourg. Future Visions: New Technologies of the Screen. Charles River Media. 2nd Edition.net April 20. Compressed Image File Formats. 2002. 1. Charles River Media. Mark DeLoura. Morgan Kaufmann. 2006. Alan Watt and Fabio Policarpo. 1996. 3D Game Engine Design: A Practical Approach to Real-Time Computer Graphics. 2001. 1998.7 Animation Alan Watt and Mark Watt. Mark DeLoura. 2002. Advanced Animation and Rendering Techniques. The Art and Science of Digital Compositing. The Computer Image. Philip Hayward and Tana Wollen.gamasutra. Eric Lengyel. Interactive Computer Animation. Alan Watt and Fabio Policarpo. John Miano. Advanced Game Development with Programmable Graphics Hardware. Addison-Wesley. 1998. 1. http://www. 1988. 1993. Nadia Magnenat Thalmann and Daniel Thalmann. Game Programming Gems 3. Springer Verlag. Morgan Kaufmann. 3D Games: Real-time Rendering and Software Technology. 1999. Mathematics for 3D Game Programming and Computer Graphics. Ron Brinkman.8 Games Alan Watt and Fabio Policarpo. 2000.6 Images David Ebert et al. Physics for Game Developers. IEEE Computer Society Press. Image Synthesis. 1999. Academic Press.gamedev. Addison-Wesley. 2001. 1998. Game Programming Gems 2. 2002. Indiana University Press. Mark DeLoura. Texturing and Modeling.Ken Joy et al. Addison-Wesley. 2007 4 . Dynamic Simulations of Multibody Systems. Addison-Wesley. PrenticeHall. Game Programming Gems.
0 Sourcebook. Ruby in a Nutshell. David Flanagan. The VRML 2. 1. Addison-Wesley. 2006. 1999. GPU Gems 2. 2006 (2nd edition). Steve Upstill. OpenGL 2. Rasmus Lerdorf and Kevin Tatroe. 1. 1995. Yukihiro Matsumoto. Morgan Kaufmann. Advanced RenderMan: Creating CGI for Motion Pictures. Java Examples in a Nutshell. 2007 5 . April 20. 1998.0 Programming Guide. 2003. 2004. Addison-Wesley. Randima Fernando. David Flanagan. 3rd edition. 2004.10 The Web Gene Davis. Addison-Wesley. Thinking in Java. 2005 (5th edition). 2002. 2005. 1990. Morgan Kaufmann. Tom McReynolds and David Blythe. Bruce Eckel. Andrew Glassner. O’Reilly & Associates. Addison-Wesley. Matt Pharr. John Moreland. Addison-Wesley. Learning Java Bindings For OpenGL (JOGL). OpenGL Shading Language. The RenderMan Companion. Henry Sowizral. Randima Fernando. 5th edition. Recreational Computer Graphics. NVIDIA. 1997. 2005. Programming PHP. 2004. Prentice-Hall.11 Shaders Randi Rost. O’Reilly. GPU Gems. OpenGL: A Primer. NVIDIA. 2002. Tony Apodaca and Larry Gritz.1. John Wiley & Sons. 1. Addison-Wesley. 1999.9 Virtual Reality John Vince. AuthorHouse. Edward Angel. Virtual Reality Systems. Java in a Nutshell. and Michael Deering. Kevin Rushforth.12 Miscellaneous OpenGL 2. O’Reilly. Andrea Ames. 2005. 1998. David Nadeau. O’Reilly & Associates.0 Reference Manual. The Java 3D API Specification. Addison-Wesley. Advanced Graphics Programming Using OpenGL. Morgan Kaufmann.
) Computer Graphics Quarterly: published by ACM SIGGRAPH (http://www. Wiley. J. Peters (http://www akpeters. 617-235-2210) Game Developer: published by CMP Media (http://www gdmag.com. Methods. Addison-Wesley. 2003.org.computer.org. Cambridge University Press. Isaac Victor Kerlow and Judson Rosebush. ASME Press. 415-905-2200) (Once a year publishes the Game Career Guide.org. The Unwritten Laws of Engineering. 951-781-1917) April 20.cgw. Digital Illusion. 2000. Addison-Wesley. and Algorithms.computer.cinefex. King. Periodicals Computer Graphics and Applications: published by IEEE (http://www. and Brian Flannery. Second Edition. Mehmed Kantardzic. 1986. Numerical Recipes in C. Data Mining: Concepts. Addison-Wesley.com. 2000. Saul Teukolsky. William Press.acm. 714-821-8380) Transactions on Graphics: published by ACM (http://www.K. Van Nostrand Reinhold. 1997.siggraph. Jef Raskin. 212-869-7440) Cinefex (http://www. 603-891-0123) Journal of Graphics Tools: published by A. James Skakoon and W. Addison-Wesley. The Art of 3-D: Computer Animation and Imaging.com. Models. Clark Dodsworth. Ben Shneiderman.Anne Spalter. 2. The Humane Interface. 2001. 714-821-8380) Computer Graphics World: published by Pennwell (http://www.org. 1997. William Vetterling. The Computer in the Visual Arts. 1999. Isaac Victor Kerlow. 2007 6 . Designing the User Interface. 1997. 212-869-7440) Transactions on Visualization and Computer Graphics: published by IEEE (http://www.com. Computer Graphics for Designers and Artists.
... Professional organizations ACM.. National Association of Broadcasters http://www.... NV – April 12-17 http://www..computer...... ACM Special Interest Group on Computer Graphics http://www.. 212-869-7440 IEEE . CA – October 27-November 1 http://vis...... Association for Computing Machinery http://www.. NV – September 4-7 http://www.siggraph.... July http://www..3.org. Conferences ACM SIGGRAPH: 2008: Los Angeles – August 11-15 http://www....org.org.asmeconferences.nab.. 800-521-8624 ASME.. CA – February 18-22 http://www. 212-869-7440 SIGGRAPH ...computer.acm.....org...nab...com Electronic Entertainment Expo: 2007: Santa Monica.. CA – July 11-13 2008: ???.e3expo.......... 800-THE-ASME 4..acm. 202-371-0101 NAB ......org/s2008 IEEE Visualization: 2007: Sacramento. Institute of Electrical and Electronic Engineers http://www.asme.. American Society of Mechanical Engineers http://www....org ACM SIGCHI: 2007: San Jose.......com ASME International Design Engineering Technical Conferences (includes the Computers and Information in Engineering conference):: 2007: Las Vegas.. CA – April 28-May 3 April 20.org/IDETC07 National Association of Broadcasters (NAB): 2008: Las Vegas..org/sigchi. 212-869-7440 SIGCHI.gdconf.. 2007 7 .org Game Developers Conference: 2008: San Francisco... ACM Special Interest Group on Computer-Human Interfaces http://www..siggraph.org...
Graphics Performance Characterization The GPC web site tabulates graphics display speeds for a variety of vendors' workstation products.org 5. 2007 8 .acm. visit: http://www. To get the information.org/benchmarks.html#gpc April 20.supercomputing.November 10-16 http://sc07. NV -.spec.http://www.org/sigchi ACM SIGARCH / IEEE Supercomputing: 2007: Reno.
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue reading from where you left off, or restart the preview.