![Page 1: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/1.jpg)
© Machiraju/Zhang/Möller
3D Viewing
Introduction to Computer GraphicsTorsten Möller / Manfred Klaffenböck
![Page 2: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/2.jpg)
© Machiraju/Zhang/Möller �2
Reading• Chapter 5 of Angel • Chapter 13 of Hughes, van Dam, … • Chapter 7 of Shirley+Marschner
![Page 3: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/3.jpg)
© Machiraju/Zhang/Möller
Objectives• What kind of camera we use? (pinhole) • What projections make sense
– Orthographic – Perspective
• The viewing pipeline • Viewing in WebGL • Shadows
�3
![Page 4: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/4.jpg)
© Machiraju/Zhang/Möller �4
3D Viewing• Popular analogy: virtual camera taking
pictures in a virtual world • The process of getting an image onto the
computer screen is like that of taking a snapshot.
![Page 5: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/5.jpg)
© Machiraju/Zhang/Möller �5
3D Viewing (2)• With a camera, one:
– establishes the view – opens the shutter and exposes the film
![Page 6: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/6.jpg)
© Machiraju/Zhang/Möller �6
3D Viewing (3)• With a camera, one:
– establishes the view – opens the shutter and exposes the film
• With a computer, one: – chooses a projection type (not necessarily
perspective) – establishes the view – clips the scene according to the view – projects the scene onto the computer display
![Page 7: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/7.jpg)
© Machiraju/Zhang/Möller
Normal Camera Lens
�7
http://michaeldmann.net/pix_7/lenses.gif
![Page 8: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/8.jpg)
© Machiraju/Zhang/Möller �8http://en.wikipedia.org/wiki/File:DOF-ShallowDepthofField.jpg
![Page 9: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/9.jpg)
© Machiraju/Zhang/Möller �9
The ideal pinhole camera• Single ray of light gets through small pinhole • Film placed on side of box opposite to
pinhole
Projection
![Page 10: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/10.jpg)
© Machiraju/Zhang/Möller �10
The pinhole camera• Angle of view (always fixed)
• Depth of field (DOF): infinite – every point within the field of view is in focus (the image of a point is a point)
• Problem: just a single ray of light & fixed view angle
• Solution: pinhole → lens, DOF no longer infinite
![Page 11: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/11.jpg)
© Machiraju/Zhang/Möller �11
The synthetic camera model• Image formed in front of the camera • Center of projection (COP):
center of the lens (eye)
![Page 12: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/12.jpg)
© Machiraju/Zhang/Möller �12
Types of projections• Choose an appropriate type of projection
(not necessarily perspective) • Establishes the view: direction and
orientation
![Page 13: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/13.jpg)
© Machiraju/Zhang/Möller �13
3D viewing with a computer• Clips scene with respect to a view volume
– Usually finite to avoid extraneous objects • Projects the scene onto a projection plane
– In a similar way as for the synthetic camera model
– Everything in view volume is in focus – Depth-of-field (blurring) effects may be generated
![Page 14: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/14.jpg)
© Machiraju/Zhang/Möller �14
Project onto projection plane
Clip against 3D view volume
Where are we at?
![Page 15: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/15.jpg)
© Machiraju/Zhang/Möller
Objectives• What kind of camera we use? (pinhole) • What projections make sense
– Orthographic – Perspective
• The viewing pipeline • Viewing in WebGL • Shadows
�15
![Page 16: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/16.jpg)
© Machiraju/Zhang/Möller �16
Projection: 3D → 2D• We study planar geometric projections:
– projecting onto a flat 2D surface – project using straight lines
• Projection rays, called projectors, are sent through each point in the scene from the centre of projection (COP) - our pinhole
• Intersection between projectors and projection plane form the projection
![Page 17: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/17.jpg)
© Machiraju/Zhang/Möller �17
Perspective and parallel projections
• Parallel: – COP at infinity – By direction of
projectors (DOP)
• Perspective: - Determined by COP
![Page 18: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/18.jpg)
© Machiraju/Zhang/Möller �18
COP in homogeneous coordinates
• Perspective projection: COP is a – finite point: (x, y, z, 1)
• Parallel projection – Direction of projection is a vector:
(x, y, z, 1) – (x’, y’, z’, 1) = (a, b, c, 0) – Points at infinity and directions correspond in a
natural way
![Page 19: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/19.jpg)
© Machiraju/Zhang/Möller �19
Perspective vs. parallel• Perspective projection:
– Realistic, mimicking our human visual system – Foreshortening: size of perspective projection of
object varies inversely with the distance of that object from the center of projection
– Distances, angles, parallel lines are not preserved • Parallel projection:
– Less realistic but can be used for measurements – Foreshortening uniform, i.e., not related to distance – Parallel lines are preserved (length preserving?)
![Page 20: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/20.jpg)
© Machiraju/Zhang/Möller �20
![Page 21: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/21.jpg)
© Machiraju/Zhang/Möller �21
Taxonomy of projectionsAngle between projectors and projection plane?
Number of principal axes cut by projection plane
![Page 22: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/22.jpg)
© Machiraju/Zhang/Möller �22
Parallel projections• Used in engineering mostly, e.g., architecture • Allow measurements • Different uniform foreshortenings are
possible, i.e., not related to distance to projection plane
• Parallel lines remain parallel • Angles are preserved only on faces which
are parallel to the projection plane – same with perspective projection
![Page 23: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/23.jpg)
© Machiraju/Zhang/Möller �23
Orthographic (parallel) projections
• Projectors are normal to the projection plane • Commonly front, top (plan) and side
elevations: projection plane perpendicular to z, y, and x axis
• Matrix representation (looking towards negative z along the z axis; projection plane at z = 0):
![Page 24: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/24.jpg)
© Machiraju/Zhang/Möller �24
Orthographic projections• Axonometric projection
– Projection plane not normal to any principal axis – E.g., can see more faces of an axis-aligned
cube
![Page 25: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/25.jpg)
© Machiraju/Zhang/Möller �25
Orthographic projections• Foreshortening: three
scale factors, one each for x, y, and z axis
• Axonometric projectionexample:
![Page 26: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/26.jpg)
© Machiraju/Zhang/Möller �26
Orthographic projection• Axonometric projection – Isometric
– Projection-plane normal makes same angle with each principal axis
– There are just eight normal directions of this kind – All three principal axes are equally
foreshortened, good for getting measurements – Principal axes make same angle in projection
plane • Alternative: dimetric & trimetric (general
case)
![Page 27: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/27.jpg)
© Machiraju/Zhang/Möller �27
Parallel Projection (4)• Axonometric Projection - Isometric
– Angles between the projection of the axes are equal i.e. 120º
• Alternative - dimetric & trimetric
![Page 28: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/28.jpg)
© Machiraju/Zhang/Möller
Types of Axonometric Projections
�28
![Page 29: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/29.jpg)
© Machiraju/Zhang/Möller �29
Oblique (parallel) projections• Projectors are not normal to projection
plane
• Most drawings in the text use oblique projection
![Page 30: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/30.jpg)
© Machiraju/Zhang/Möller �30
Oblique projections• Two angles are of interest:
– Angle α between the projector and projection plane
– The angle φ in the projection plane
• Derive the projection matrix
![Page 31: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/31.jpg)
© Machiraju/Zhang/Möller �31
Derivation of oblique projections
![Page 32: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/32.jpg)
© Machiraju/Zhang/Möller �32
Common oblique projections• Cavalier projections
– Angle α = 45 degrees – Preserves the length of a line segment
perpendicular to the projection plane – Angle φ is typically 30 or 45 degrees
• Cabinet projections – Angle α = 63.7 degrees or arctan(2) – Halves the length of a line segment
perpendicular to the projection plane – more realistic than cavalier
![Page 33: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/33.jpg)
© Machiraju/Zhang/Möller �33https://en.wikipedia.org/wiki/Graphical_projection#/media/File:Graphical_projection_comparison.png
![Page 34: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/34.jpg)
© Machiraju/Zhang/Möller �34
Projections, continued
![Page 35: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/35.jpg)
© Machiraju/Zhang/Möller �35
Perspective projections• Mimics our human visual
system or a camera • Project in front of the center
of projection • Objects of equal size at different distances
from the viewer will be projected at different sizes: nearer objects will appear bigger
![Page 36: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/36.jpg)
© Machiraju/Zhang/Möller �36
Types of perspective projections
• Any set of parallel lines that are not parallel to the projection plane converges to a vanishing point, which corresponds to point at infinity in 3D
• One-, two-, three-point perspective views are based on how many principal axes are cut by projection plane
![Page 37: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/37.jpg)
© Machiraju/Zhang/Möller �37
Vanishing points
![Page 38: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/38.jpg)
© Machiraju/Zhang/Möller
• COP at z = 0 • Projection plane at z = d
• Transformation is not invertible or affine. Derive the projection matrix.
�38
Simple perspective projection
![Page 39: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/39.jpg)
© Machiraju/Zhang/Möller �39
Simple perspective projection• How to get a perspective projection matrix? • Homogeneous coordinates come to the
rescue
![Page 40: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/40.jpg)
© Machiraju/Zhang/Möller �40
Summary of simple projections• COP: origin of the coordinate system • Look into positive z direction • Projection plane perpendicular to z axis
![Page 41: 06 1 viewing 18w - univie.ac.atvda.univie.ac.at/Teaching/Graphics/19s/LectureNotes/06_1_viewing_18w.pdfPerspective vs. parallel • Perspective projection: – Realistic, mimicking](https://reader034.vdocuments.us/reader034/viewer/2022042115/5e92fb63814ef1219c237104/html5/thumbnails/41.jpg)
© Machiraju/Zhang/Möller
Objectives• What kind of camera we use? (pinhole) • What projections make sense
– Orthographic – Perspective
• The viewing pipeline • Viewing in WebGL • Shadows
�41