+ All Categories
Home > Documents > CS248 Final Review

CS248 Final Review

Date post: 25-Feb-2016
Category:
Upload: jag
View: 48 times
Download: 1 times
Share this document with a friend
Description:
CS248 Final Review. CS248 Final. Thurs, December 12, 7-10 pm, Gates B01, B03 Mainly from material in the second half of the quarter will not include material from last part of last lecture (volume rendering, image-based rendering) Review session slides available from class website - PowerPoint PPT Presentation
Popular Tags:
32
CS248 Final Review CS248 Final Review
Transcript
Page 1: CS248 Final Review

CS248 Final ReviewCS248 Final Review

Page 2: CS248 Final Review

CS248 FinalCS248 Final

• Thurs, December 12, 7-10 pm, Gates B01, B03

• Mainly from material in the second half of the quarter– will not include material from last part of last

lecture (volume rendering, image-based rendering)

• Review session slides available from class website

• Office hours as regularly scheduled

Page 3: CS248 Final Review

CS248 Final Review CS248 Final Review ContentsContents

• Image warping, texture mapping• Perspective• Visibility• Lighting / Shading

Page 4: CS248 Final Review

Texture MappingTexture Mapping

• Coordinate systems– [u,v,q] => [xo, yo zo, wo] => [xw, yw zw,

ww] => [x, y, w]– Assuming all transforms are linear, then

– [A][u, v, q]’ = [x, y, w]• Common mappings

– forward mapping (scatter), texture->screen

– backward mapping (gather)

Page 5: CS248 Final Review

Texture WarpsTexture Warps

• Rotation, translation• perspective• Minification (decimation)

– unweighted average: average projected texel elements that fall within a pixel’s filter support

– area-weighted average: average based on area of texel support

Page 6: CS248 Final Review

Texture WarpsTexture Warps

• Magnification– Unweighted– Area-weighted– bilinear interpolation

= texel= pixel

Page 7: CS248 Final Review

TexturesTextures

1.Mipmapping1.multi-resolution texture2.bilinear interpolation at 2 closest

resolutions to get 2 color values3.linear interpolate 2 color values

based on actual resolution2.Summed area tables

1.fast calculation of prefilter integral in texture space

Page 8: CS248 Final Review

Viewing: Planar Viewing: Planar ProjectionsProjections

• Perspective Projection– rays pass through center of projection– parallel lines intersect at vanishing

points• Parallel Projection

– center of projection is at infinity– oblique– orthographic

How many vanishing points are there in an image produced by parallel projection ?

Page 9: CS248 Final Review

Specifying Perspective Specifying Perspective ViewsViews

• Observer position (eye, center of projection)

• Viewing direction (normal to picture plane)

• Clipping planes (near, far, top, bottom, left, right)

Page 10: CS248 Final Review

Viewing: OpenGL PipelineViewing: OpenGL Pipeline

• Object Space• Eye Coordinates• Projection Matrix• Clipped to Frustum• Homogenize to normalized device

coordinates• Window coordinates

Page 11: CS248 Final Review

VisibilityVisibility

1.6 visible-surface determination algorithms:1.Z-buffer2.Watkins3.Warnock4.Weiler-Atherton5.BSP Tree6.Ray Tracing

Page 12: CS248 Final Review

Things to knowThings to know

how does it workwhat are the necessary preconditions?asymptotic time complexityhow can anti-aliasing be done?how can shading be incorporated?well-suited for hardware?parallelizable?ease of implementationbest-case/worst-case scenarios

Page 13: CS248 Final Review

Z-bufferZ-buffer

• Project all polygons to the image plane, at each pixel, pick the color corresponding to closet polygon

Page 14: CS248 Final Review

WatkinsWatkins

• Scanline + depth– progressing across scanline, if pixel is

inside two or more polygons, use depth to pick

– process interpenetrating polygons, add those events

Page 15: CS248 Final Review

Warnock SubdivisionWarnock Subdivision

• Start with area as original image– subdivide areas until either:

• all surfaces are our outside the area• only one inside, overlapping or

surrounding• a surrounding surface obscures all other

surfaces

*

Page 16: CS248 Final Review

Weiler-Atherton Weiler-Atherton SubdivisionSubdivision

• Cookie-cutter algorithm:clips polygons against polygons– front to back sort of list– clip with front polygon

Page 17: CS248 Final Review

BSP TreesBSP Trees

• Provides a data structure for back-to-front or front-to-back traversal– split polygons according to specified

planes– create a tree where edges are

front/back, leaves are polygons

Page 18: CS248 Final Review

Ray TracingRay Tracing

• “Ray Casting”– for each pixel, cast a ray into the

scene, and use the color of the point on the closest polygon

– Parametric form of a line: u(t) = a+(b-a)t a b

(0,0) x

y t

Page 19: CS248 Final Review

Ray TracingRay Tracing

• Sphere: |P-Pc|2 – r2 = 0• Plane: N • P = -D• Can you compute the intersection

of a ray and a plane? A ray and a sphere?

Page 20: CS248 Final Review

Ray TracingRay Tracing

• Point in polygon tests– Odd, even rule

• draw a line from point to infinity in one direction

• count intersections: odd = inside, even = outside

– Non-zero winding rule• counts number of times polygon edges wind

around a point in the clockwise direction• winding number non zero = inside, else

outside

Page 21: CS248 Final Review

LightingLighting

• Terminology– Radiant flux: energy/time (joules/sec

= watts)– Irradiance: amount of incident radiant

flux / area (how much light energy hitting a unit area, per unit time)

– Radiant intensity (of point source): radiant flux over solid angle

– Radiance: radiant intensity over a unit area

Page 22: CS248 Final Review

LightingLighting

• Point to area transport– Computing the irradiance to a surface– Cos falloff: N • L– E = Fatt x I x (N • L)

Page 23: CS248 Final Review

LightingLighting

• Lambertian (diffuse) surfaces– Radiant intensity has cosine fall off

with respect to angle– Radiance is constant with respect

toangle– Reason: the projected unit area ALSO

gets smaller as a cosine fall off!– Fatt x I x Kd x (N • L)

NV

I length = cos(t)

Radiance intensity: intensity/solid angle

NV

Page 24: CS248 Final Review

LightingLighting

• BRDF = Bidirectional Reflectance Distribution Function– description of how the surface interacts with

incident light and emits reflected light– Isotropic

• Independent of absolute incident and reflected angles

– Anisotropic• Absolute angles matter

– Don’t forget the generalizations to the BRDF!• Spatially/spectrally varying, florescence,

phosphorescence, etc.

Page 25: CS248 Final Review

LightingLighting

• Phong specular model– Isn’t true to the physics, but works

pretty well– reflected light is greatest near the

reflection angle of the incident light, and falls off with a cosine power

– Lspec = Ks x cosn(a), a= angle between viewer and reflected ray

– how do you compute the reflected ray vector?

N LR

V

Page 26: CS248 Final Review

LightingLighting

• Local vs. infinite lights– Understand them! Know how to draw

the goniometric diagrams for various light/viewer combinations

• N • H model– H is the halfway vector between the

viewer and the light– What is the difference in specular

highlight?

N

VR H L

Page 27: CS248 Final Review

ShadingShading

• Gouraud shading– Compute lighting information (ie: colors) at

polygon vertices, interpolate those colors– Problems?

• Misses highlights• need high resolution mesh to catch highlights• mach bands!

Page 28: CS248 Final Review

ShadingShading

• Angle interpolation– interpolate normal angles according to the

implicit surface– compute shading at each point of the

implicit surface– CORRECT! But very expensive

Page 29: CS248 Final Review

ShadingShading

• Phong shading– Compute lighting normals at all points on

the polygon via interpolation, and do the lighting computation on the interpolated normals (of the polygon)

– Problems? Difference with angle interpolation?

Implicit surfacePolygon approximationN1 N2

Page 30: CS248 Final Review

Lighting and ShadingLighting and Shading

• Know the OpenGL 1.1, 1.2 light equations

Page 31: CS248 Final Review

Exotic uses of texturesExotic uses of textures

• Environment/reflection mapping• Alphas for selecting between

textures/shading parameters• Bump mapping• Displacement mapping• Object placement• 3d textures

Page 32: CS248 Final Review

Good Luck!Good Luck!

Good Luck on the Final!

More review questions at:http://graphics.stanford.edu/courses/cs248-99/final_review


Recommended