DOC PREVIEW
UVA CS 445 - 3D Rendering

This preview shows page 1-2-3-4 out of 11 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1Greg HumphreysCS445: Intro GraphicsUniversity of Virginia, Fall 20033D RenderingGreg HumphreysUniversity of VirginiaCS 445, Fall 2003Course SyllabusI. Image processingII. RenderingIII. ModelingIV. AnimationWhere Are We Now?I. Image processingII. RenderingIII. ModelingIV. AnimationThe Everyday World2The Nature of RealismToyota Supra by Kevin HulseyThe Nature of RealismCafé Express by Richard Estes, 1975Rendering• Generate an image from geometric primitivesRenderingGeometric PrimitivesRaster Image3D Rendering ExampleWhat issues must be addressed by a 3D rendering system?3Overview• 3D scene representation• 3D viewer representation• Visible surface determination• Lighting simulationOverview» 3D scene representation• 3D viewer representation• Visible surface determination• Lighting simulationHow is the 3D scenedescribed in a computer?3D Scene Representation• Scene is usually approximated by 3D primitivesD PointD Line segmentD PolygonD PolyhedronD Curved surfaceD Solid object D etc.3D Point• Specifies a locationOrigin43D Point• Specifies a locationD Represented by three coordinatesD Infinitely smalltypedef struct {Coordinate x;Coordinate y;Coordinate z;} Point;(x,y,z)Origin3D Vector• Specifies a direction and a magnitude3D Vector• Specifies a direction and a magnitudeD Represented by three coordinatesD Magnitude ||V|| = sqrt(dx dx + dy dy + dz dz)D Has no locationtypedef struct {Coordinate dx;Coordinate dy;Coordinate dz;} Vector;(dx,dy,dz)3D Vector• Specifies a direction and a magnitudeD Represented by three coordinatesD Magnitude ||V|| = sqrt(dx dx + dy dy + dz dz)D Has no location• Dot product of two 3D vectorsD V1·V2= dx1dx2 +dy1dy2 +dz1dz2D V1·V2 = ||V1 || || V2 || cos(Θ)typedef struct {Coordinate dx;Coordinate dy;Coordinate dz;} Vector;(dx1,dy1,dz1)(dx2,dy2 ,dz2)Θ53D Line Segment• Linear path between two pointsOrigin3D Line Segment• Use a linear combination of two pointsD Parametric representation:» P = P1+ t (P2-P1), (0 ≤ t ≤ 1)typedef struct {Point P1;Point P2;} Segment;P1P2Origin3D Ray• Line segment with one endpoint at infinityD Parametric representation: » P = P1+ t V, (0 <= t < ∞)typedef struct {Point P1;Vector V;} Ray;P1VOrigin3D Line• Line segment with both endpoints at infinityD Parametric representation: » P = P1+ t V, (-∞ < t < ∞)P1typedef struct {Point P1;Vector V;} Line;VOrigin6Origin3D Plane• A linear combination of three pointsP1P3P2Origin3D Plane• A linear combination of three pointsD Implicit representation: » P·N + d = 0, or» ax + by + cz + d = 0D N is the plane “normal”» Unit-length vector» Perpendicular to planetypedef struct {Vector N;Distance d;} Plane;P1N = (a,b,c)dP3P23D Polygon• Area “inside” a sequence of coplanar pointsD TriangleD QuadrilateralD ConvexD Star-shapedD ConcaveD Self-intersectingD Holes (use > 1 polygon struct)typedef struct {Point *points;int npoints;} Polygon;Points are in counter-clockwise order3D Sphere• All points at distance “r” from point “(cx, cy, cz)”D Implicit representation:»(x -cx)2+ (y - cy)2+ (z - cz)2= r 2D Parametric representation:» x = r cos(φ) cos(Θ) + cx» y = r cos(φ) sin(Θ) + cy»z = r sin(φ) + cztypedef struct {Point center;Distance radius;} Sphere;rOrigin73D Geometric Primitives• More detail on 3D modeling later in course D PointD Line segmentD PolygonD PolyhedronD Curved surfaceD Solid object D etc.H&B Figure 10.46Overview• 3D scene representation» 3D viewer representation• Visible surface determination• Lighting simulationHow is the viewing devicedescribed in a computer?Camera Models• The most common model is pin-hole camera D All captured light rays arrive along paths toward focal point without lens distortion (everything is in focus)D Sensor response proportional to radianceOther models consider ...Depth of fieldMotion blurLens distortionView planeEye position(focal point)Camera Parameters• What are the parameters of a camera?8Camera Parameters• PositionD Eye position (px, py, pz)• OrientationD View direction (dx, dy, dz)D Up direction (ux, uy, uz)• ApertureD Field of view (xfov, yfov)• Film plane D “Look at” pointD View plane normalrightbackUp directionEye PositionView directionViewPlane“Look at”PointMoving the cameraView FrustumRightBackTowardsUpOverview• 3D scene representation• 3D viewer representation» Visible surface determination• Lighting simulationHow can the front-most surfacebe found with an algorithm?Visible Surface Determination• The color of each pixel on the view planedepends on the radiance emanating from visible surfacesView planeEye positionSimplest methodis ray castingRays throughview plane9Ray Casting• For each sample …D Construct ray from eye position through view planeD Find first surface intersected by ray through pixelD Compute color of sample based on surface radianceRay Casting• For each sample …D Construct ray from eye position through view planeD Find first surface intersected by ray through pixelD Compute color of sample based on surface radianceVisible Surface Determination• For each sample …D Construct ray from eye position through view planeD Find first surface intersected by ray through pixelD Compute color of sample based on surface radianceMore efficient algorithmsutilize spatial coherence!Rendering AlgorithmsRendering is a problem insampling and reconstruction!10Overview• 3D scene representation• 3D viewer representation• Visible surface determination» Lighting simulationHow do we compute theradiance for each sample ray?Lighting Simulation• Lighting parametersD Light source emissionD Surface reflectanceD Atmospheric attenuationD Camera responseNNCameraSurfaceLightSourceLighting Simulation• Direct illuminationD Ray castingD Polygon shading• Global illuminationD Ray tracingD Monte Carlo methodsD Radiosity methodsMore on these methods later!NNCameraSurfaceLightSourceNSummary• Major issues in 3D rendering D 3D scene representationD 3D viewer representationD Visible surface determinationD Lighting simulation• Concluding noteD Accurate physical simulation is complex and intractable» Rendering algorithms apply many approximations to simplify representations and computations11Next Lecture• Ray intersections• Light and reflectance models• Indirect illuminationFor assignment #3, you will write a ray


View Full Document

UVA CS 445 - 3D Rendering

Documents in this Course
Lighting

Lighting

49 pages

Color

Color

20 pages

Clipping

Clipping

10 pages

Shadows

Shadows

95 pages

Color

Color

37 pages

Radiosity

Radiosity

49 pages

Clipping

Clipping

59 pages

Assign 3

Assign 3

28 pages

Splines

Splines

17 pages

Color

Color

17 pages

Load more
Download 3D Rendering
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view 3D Rendering and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view 3D Rendering 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?