A Few Things about Graphics Jian Huang Computer Science University of Tennessee.

Slides:



Advertisements
Similar presentations
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Advertisements

1 Graphics CSCI 343, Fall 2013 Lecture 18 Lighting and Shading.
Virtual Realism LIGHTING AND SHADING. Lighting & Shading Approximate physical reality Ray tracing: Follow light rays through a scene Accurate, but expensive.
1. What is Lighting? 2 Example 1. Find the cubic polynomial or that passes through the four points and satisfies 1.As a photon Metal Insulator.
Based on slides created by Edward Angel
1 Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 Shading I.
University of New Mexico
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
Computer Graphics (Fall 2005) COMS 4160, Lecture 16: Illumination and Shading 1
(conventional Cartesian reference system)
1 CSCE 641: Computer Graphics Lighting Jinxiang Chai.
Objectives Learn to shade objects so their images appear three- dimensional Learn to shade objects so their images appear three- dimensional Introduce.
Graphics Systems I-Chen Lin’s CG slides, Doug James’s CG slides Angel, Interactive Computer Graphics, Chap 1 Introduction to Graphics Pipeline.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer.
Shading Languages By Markus Kummerer. Markus Kummerer 2 / 19 State of the Art Shading.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Shading I Ed Angel Professor of Computer Science, Electrical and Computer Engineering,
CS 480/680 Computer Graphics Shading I Dr. Frederick C Harris, Jr.
CS 445 / 645: Introductory Computer Graphics
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Shading (introduction to rendering). Rendering  We know how to specify the geometry but how is the color calculated.
Introducing To 3D Modeling George Atanasov Telerik Corporation
Week 2 - Wednesday CS361.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Ray Tracing Chapter CAP4730: Computational Structures in Computer Graphics.
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
CS-378: Game Technology Lecture #4: Texture and Other Maps Prof. Okan Arikan University of Texas, Austin V Lecture #4: Texture and Other Maps.
1Computer Graphics Lecture 4 - Models and Architectures John Shearer Culture Lab – space 2
COMPUTER GRAPHICS CSCI 375. What do I need to know?  Familiarity with  Trigonometry  Analytic geometry  Linear algebra  Data structures  OOP.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Basic Rendering Pipeline and Shading Spring 2012.
Computer Graphics Chapter 6 Andreas Savva. 2 Interactive Graphics Graphics provides one of the most natural means of communicating with a computer. Interactive.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Shading in OpenGL Ed Angel Professor Emeritus of Computer Science University of New Mexico 1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E.
Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
RENDERING Introduction to Shading models – Flat and Smooth shading – Adding texture to faces – Adding shadows of objects – Building a camera in a program.
UV Mapping After a 3D object has been modeled it must be prepared for texturing. 3D surfaces can be “unwrapped” into a 2D representation with. This process.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
Where We Stand So far we know how to: –Transform between spaces –Rasterize –Decide what’s in front Next –Deciding its intensity and color.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
Illumination Model How to compute color to represent a scene As in taking a photo in real life: – Camera – Lighting – Object Geometry Material Illumination.
CS 445 / 645: Introductory Computer Graphics Review.
OpenGL Shading. 2 Objectives Learn to shade objects so their images appear three-dimensional Introduce the types of light-material interactions Build.
Lighting and Reflection Angel Angel: Interactive Computer Graphics5E © Addison-Wesley
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Models and Architectures 靜宜大學 資訊工程系 蔡奇偉 副教授 2012.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
Computer Graphics Ken-Yi Lee National Taiwan University (the slides are adapted from Bing-Yi Chen and Yung-Yu Chuang)
Computer Graphics: Illumination
Applications and Rendering pipeline
Computer Graphics (Fall 2006) COMS 4160, Lecture 16: Illumination and Shading 1
- Introduction - Graphics Pipeline
© University of Wisconsin, CS559 Spring 2004
Models and Architectures
Models and Architectures
Models and Architectures
Introduction to Computer Graphics with WebGL
UMBC Graphics for Games
Models and Architectures
Isaac Gang University of Mary Hardin-Baylor
CS-378: Game Technology Lecture #4: Texture and Other Maps
Models and Architectures
Illumination and Shading
Texture Mapping 고려대학교 컴퓨터 그래픽스 연구실.
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
CS 480/680 Computer Graphics Shading.
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Presentation transcript:

A Few Things about Graphics Jian Huang Computer Science University of Tennessee

Graphics Graphics studies light transport in 3D scene, sometimes over time as well. Example applications abound nowadays in movies, MTVs, … In a nutshell, it’s some math and methods to compute such math efficiently on processors, memory banks and buses (lots of parallelism) Well, everything should start with that Rendering Equation

The Rendering Equation I(x,x’) = intensity passing from x’ to x g(x,x’) = geometry term (1, or 1/r 2, if x visible from x’, 0 otherwise)  (x,x’) = intensity emitted from x’ in the direction of x  (x,x’,x’’) = scattering term for x’ (fraction of intensity arriving at x’ from the direction of x’’ scattered in the direction of x) S = union of all surfaces

It’s not analytically solvable So, instead of simply doing the math, can we use computer to compute this equation in some simplified version (oftentimes, immensely)? When approximations are made, priorities are set accordingly to what is the most appealing to viewer given the current hardware capability The consumer of the result is human being, so the measurement of good and bad is not as conventional as other computer science disciplines

What does it take to get that equation done? First, one has to model the scene –What color model is used (RGB, HSV) –Surfaces as geometrical meshes (volumes …) –Materials as lighting and texturing parameters –Light sources Second, compute the result for a screen device as it would appear on a retina – the rendering process –The graphics pipeline –Speed and high quality (30 fps, 60 fps, 120 fps) –Framebuffer: 320x240, 640x480, …, 1024x768, … 6000x6000. –Popular engines use OpenGL or DX, D3D libraries

Geometric Primitives All geometric primitives are specified by vertices

Transformations Modeling transformations build complex models by positioning simple components Viewing transformations place virtual camera in the world transform from world coordinates to eye coordinates Vary transformations over time creates motion - Animation WORLD OBJECT EYE

Affine Transformation in 3D Translation Rotate Scale Shear

3D Models - The Mesh Assembled scene

A Virtual World Objects –Shape: meshed geometry (and topology) –Appearance: lighting, shading and texture Scene –Camera and viewing –Light position –Scene composition

Appearance Having just the geometry, objects don’t look right yet. The first step is to use light sources The second step is to put textures on

Multiple Light Source I L : light intensity For multiple light sources –Repeat the diffuse and specular calculations for each light source –Add the components from all light sources –The ambient term contributes only once The different reflectance coefficients can differ. –Simple “metal”: k s and k d share material color, –Simple plastic: k s is white Remember, when cosine is negative lighting term is zero!

Un-lit

Smooth Shaded

What is a Texture? Color Specular ‘color’ (environment map) Normal vector perturbation (bump map) Displacement mapping Transparency...

Rendering

Textures Make A Difference Good textures, when applied correctly, make a world out of nothing!

Examples

Examples (cont.)

Before and After “Good” Texture

More

Every Renderer is a State Machine All rendering attributes are encapsulated in the as states Transformations Viewing Rendering styles Shading Lighting Texture mapping

The Punch Line Graphics models the world with geometry and appearance attributes The rendering process is extremely computation- intensive. What processor won Processor-Of-The- Year award last year? The graphics state is complicated to maintain. The requirement is high interactivity

Distributed Graphics Systems for distributing the shared graphical state of multi-display, multi-person, distributed, interactive applications

Distributed Graphics Two key problems: –The graphics database needs to be distributed Replication is a standard go-around –The graphics states are distributed This is the tricky part

Distributed Graphics Two major categories: –Data can be replicated (let’s do this!) –Data can not be replicated Dependent on the choice –Drastically different approach –Specific pros and cons Let’s make sure graphics states are shared properly

Distributed vs. Monolithic Apps Distributed control –In a non-trivial distributed application, different components need to be notified of changes to the distributed state Interactivity –Network latency bandwidth limitations make updates to distributed state much slower. For performance, need to perform some operations locally Local variations –There are times when a shared graphical scene may need to be modified locally