Title: The Camera
1 2This Chapter we will learn about
- Requirements of a Computer Graphics Camera
- Visible Volumes
- Perspective vs Orthorgraphics
- Coordinate Systems
- Eye (Camera) Coordinate System
- 3D Normalized Device Coordinate System
- 3D to 2D Perspective Projection
3A Computer Graphics Camera
- Camera position
- Look at position
- Up direction
- Related terms
- Image Plane
- Viewing Direction
- View Vector
4The Up Direction (Up Vector)
- Also referred to as Twist Angle
- Cannot be parallel to viewing direction
- Does not need to be normalized
- Does not need to be perpendicular toviewing
direction
5Tut 14.1 Viewing Parameters
- All viewing parameterscontrolled by slider bars
6Tut 14.1 Controlling the Up Vector
- zslider
- Twist angle
- not perpendicularto View Vector!
7The Visible Volume
- Only geometries (primitives) inside the volume
are visible - All geometries (primitives) outside are ignored
- Primitives straddle the volume are Clipped!
8The Rectangular Visible Volume
- Volume defined by
- Near Plane (n)
- Far Plane (f)
- Width (W)
- Height (H)
- For Orthographic Projection
9Tut 14.2 Rectangular Visible Volume
- Experiment withRectangularVisibleVolume
10Tut 14.2 Orthographic Projection
11The Viewing Frustum Volume
- Volume defined by
- Near Plane (n)
- Far Plane (f)
- Fields of view (fov)
- For Orthographic Projection
12Near Plane and Aspect Ratio
- Aspect Ratio
- Near Plane
- Height (nh)
- Width (nw)
13Tut 14.3 Viewing Frustum
- Experiment withViewing Frustum
14Tut 14.3 Perspective Projection
15Orthographic vs Perspective Projection
- Orthographic Projection
- Parallel projection
- Preserve size
- Good for determining relative size
- Perspective Projection
- Projection along rays
- Closer objects appears larger
- Human vision!
- Only work with Perspective Projection
16Near-to-Far Plane distance
- Fixed number of bits to resolve distance
- E.g. 16-bits Unique positions
- If (f-n)18
- resolve distances larger than
- If (f-n) 106
- resolve distance larger than
- Rule of Thumb
- Minimize f and maximize n
- f-n As tight as possible
17Tut 14.4 Near/Far Distance
- Two squares very closeto each other
- Set n/f values to see errors!!
18Coordinate Transformation Pipeline
- Recall
- Transforms
- World Transform (MW)
- Object Space (OC) To World Space (WC)
- View Transform (MV)
- WC to Eye (Camera) Space (EC)
- Projection Transform (MP)
- EC To NDC (Normalize Device)
19The MW World Transform
- Transformation
- From Object Space to World Space
- Identical to 2D!
- Refer to discussions
- In Chapter 11 World Coordinate System
- Library Implementation
- SceneNodes Transform operator!
- DrawHelper Matrix Stack Manipulations!
20The MV View Transform
- Transformation
- From World to Eye Space
- Referred to as
- Eye, or View, or Camera Transform
- Topics
- Eye Coordinate Orthonormal Basis
- The Eye Coordinate (EC) Space
- Aligning EC and WC Orthonormal Basis
- The WC to EC Transform
21The EC Orthonormal Basis
- Viewing Parameters Eye Position At
Position Up Vector - View Vector
- Side Vector
- Adjusted Up Vector
22Example
23The Eye Coordinate Space
- Origin eye position
- Axes Directions
- View -z
- Up y
- Side x
- Visible Volume
- Near z-n
- Far z-f
24Align EC and WC Orthonormal Basis
25MV Mw2e WC To EC Transform
26Inverse Transform Me2w
- Row-4 is The Eye Position!!
27The MP Projection Transform
- Transform from EC to NDC
- Recall NDC Range
- Transform
- Squeeze the View Frustum into NDC Cube
28View Frustum to NDC Cube
293D NDC to 2D Image (Near) Plane
30Re-Examine Tutorial 13.1