Virtual Camera Model Anthony Steed 1999 2001 1

  • Slides: 18
Download presentation
Virtual Camera Model ©Anthony Steed 1999 -2001 1

Virtual Camera Model ©Anthony Steed 1999 -2001 1

Simple Camera (Cross Section) Y d ymax Z COP ymin -Z 2

Simple Camera (Cross Section) Y d ymax Z COP ymin -Z 2

General Camera n View Reference Point (VRP) • where the camera is n View

General Camera n View Reference Point (VRP) • where the camera is n View Plane Normal (VPN) • where the camera points n View Up Vector (VUV) • which way is up to the camera n X (or U-axis) forms LH system 3

UVN Co-ordinates n View Reference Point (VRP) • origin of VC system n View

UVN Co-ordinates n View Reference Point (VRP) • origin of VC system n View Plane Normal (VPN) • Z (or N-axis) of VC system n View Up Vector (VUV) • determines Y (or V-axis) of VCS n X (or U-axis) forms LH system 4

World Coords and Viewing Coords Y V U VUV N VRP X Z We

World Coords and Viewing Coords Y V U VUV N VRP X Z We want to find a general transform (EQ 1) of the above form that will map WC to VC 5

View from the Camera N and VPN into the page V Y Z xmax,

View from the Camera N and VPN into the page V Y Z xmax, ymax VUV X U xmin, ymin 6

Finding the basis vectors n Step 1 - find n n Step 2 -

Finding the basis vectors n Step 1 - find n n Step 2 - find u n Step 3 - find v 7

Finding the Mapping (1) n u, v, n must rotate under R to i,

Finding the Mapping (1) n u, v, n must rotate under R to i, j, k of viewing space n Both basis are normalised so this is a pure rotation matrix • recall in this case RT = R-1 8

Finding the Mapping (2) n In uvn system VRP (q) is (0 0 0

Finding the Mapping (2) n In uvn system VRP (q) is (0 0 0 1) n And we know from EQ 1 so 9

Complete Mapping n Complete matrix 10

Complete Mapping n Complete matrix 10

For you to check n If n Then 11

For you to check n If n Then 11

Using this for Ray-Casting Use a similar camera configuration (COP is usually, but not

Using this for Ray-Casting Use a similar camera configuration (COP is usually, but not always on -n) n To trace object must either n • transform spheres into VC • transform rays into WC 12

Ray-casting n Transforming rays into WC • Transform end-point once • Find direction vectors

Ray-casting n Transforming rays into WC • Transform end-point once • Find direction vectors through COP as before • Transform vector by • Intersect spheres in WC 13

Ray-casting n Transforming spheres into VC • Centre of sphere is a point so

Ray-casting n Transforming spheres into VC • Centre of sphere is a point so can be transformed as usual (WC to VC) • Radius of sphere is unchanged by rotation and translation (and spheres are spheroids if there is a non-symmetric scale) 14

Tradeoff n If more rays than spheres do the former • transform spheres into

Tradeoff n If more rays than spheres do the former • transform spheres into VC n For more complex scenes e. g. with polygons • transform rays into WC 15

Alternative Forms of the Camera n Simple “Look At” • Give a VRP and

Alternative Forms of the Camera n Simple “Look At” • Give a VRP and a target (TP) • VPN = TP-VRP • VUV = (0 1 0) (i. e. “up” in WC) n Field of View • Give horizontal and vertical FOV or one or the other and an aspect ratio • Calculate viewport and proceed as before 16

Animated Cameras Animate VRP (observer-cam) n Animate VPN (look around) n Animate TP (track-cam)

Animated Cameras Animate VRP (observer-cam) n Animate VPN (look around) n Animate TP (track-cam) n Animate COP n • along VPN - zoom • orthogonal to VPN - distort 17

Summary We created a more general camera which we can use to create views

Summary We created a more general camera which we can use to create views of our scenes from arbitrary positions n Formulation of mapping from WC to VC (and back) n 18