Ray Tracing Flashcards

1
Q

Helmhotz Reciprocity Rule

A

We can trace rays backwards as well as forwards.

BRDF(x, ψ’, ψ, λ) = BRDF(x, ψ, ψ’, λ)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How do we order the basis of the View and World coordinate systems?

A
View = Left Hand Rule
World = Right Hand Rule
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

4 Steps to translate pixel locations to world space for ray tracing

A
  1. Translate the pixel (x, y, 0) by (-hx / 2, -hy / 2, d)
  2. Preserve aspect ratio with a scale (-w / nx, -h /ny, 1)
  3. Rotate to look at correct direction
  4. Translate to origin of view

P = (T_y R_z) S_z T_I
T_y R_z = M_vw

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does pixel translation look like if

d=1, lookfrom = (0s), look at = (0s) and up = (0, 1, 0)?

A

?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Texture Mapping

A

A way of adding surface detail without increasing model complexity

Paper: Blinn & Newell 1976

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

UV Mapping

A

Convert (x, y, z) -> (u, v) unit square. Retrieve (u, v) from (di, dj) in the texture and map it back to the original 3D point.

Different projections: Plane, Sphere, Cube, Cylinder

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Bump Mapping

A

Perturb normal with image by taking difference between pixels in texture as the change in u and v and applying that change to the normal.

Paper: Blinn 1978 “Wrinkled Surfaces”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Solid Texture

A

3D Textures to replicate wood, marble, and other textured objects with volume.

Paper: Perlin 1985 “Image Synthesizer”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Computational Solid Geometry

A

Allow for intersections, unions, and boolean operations of models/geometry to create new shapes. With raytracing, find the near and far points of intersection with every object and then calculate appropriate point based on type of operation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Bounding box

A

Surround each complex geometry with a box so ray intersection only has to check the more complex intersection if it intesects the box. Use box aligned with coordinate axes.

Tradeoff with bounding box construction time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Spatial Subdivision

A

Split space into subregions so only subregions through which the ray passes need to be checked for intersections.

Use voxels or trees. Useful with lots of small objects in scene.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Grid Acceleration

A

Good: if occupancy does not vary significantly
Bad: Stepping through empty cells
Use: Bressenham’s line algorithm
O( c_1 cubedroot(n) )

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Octree Acceleration

A

Good: if Occupancy varies
Bad: Must traverse height of tree
O( log n )

How well did you know this?
1
Not at all
2
3
4
5
Perfectly