Week 7 - Bump & Shadow Mapping and Visibility, Occultations & Clipping Flashcards

1
Q

What is bump mapping?

A

Simulating height variations by adjusting directions of surface normals

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

What his a heightmap (elevation map)?

A

A texture provided to the shader that defines for each pixel on the model’s surface how far from the polygonal mesh’s surface it should lie

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

What are the steps for using a height map (elevation map)?

A

Look up the heightmap for the current surface position (implemented as a texture lookup)

Calculate surface normal perturbation at this location from the height map

Combine the calculated normal with the original one

Calculate illumination for the new normal using a standard shading

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

What are the direct shadow methods?

A

Shadow volumes and shadow maps

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

What are the indirect shadow methods?

A

Raytracing, radiosity and photon mapping

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

What is the idea of shadow volumes?

A

Determine volumes which are created by shadows

Shadow volume represented by a polyhedral generated by object silhouette and receiver object

A point is in shadow if it is in the volume

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

What is the shadow volume algorithm?

A

Trace rays from eye point into scene for each pixel

Initialise a shadow counter to zero

Calculate intersections with shadow volumes(s)

For each intersection (sorted by distance from eye), increase shadow counter if entering the volume, and decrease shadow counter if leaving the volume

If the counter is zero, the point is not in any shadow volume

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

What does OpenGL’s depth buffer contain?

A

The depth value for each fragment, and used for occlusion control (ie z-buffering)

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

What does OpenGL’s stencil buffer contain?

A

Which fragment should be drawn, and therefore allowing fine grained clipping to arbitrary shapes

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

How are shadow volumes created using the stencil buffer proposed by Tim Heidmann in 1981?

A

Render the whole scene without the light source (ie everything in the shadows)

Then, for all light sources:
- Calculate a mask using the stencil buffer with caps on the illuminated areas
- Render the scene with lighting applying the stencil buffer
- Use blending to add this to the scene

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

What is the idea of shadow mapping?

A

Only the objects which are visible from the light source can receive direct lighting

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

What is the basic method for shadow mapping?

A

Step 1 (generation of depth maps):
- Render the scene from the light source as usual, but only keep track of the depth buffer
- Be aware of aliasing

Step 2:
- Look up the shadow maps

Step 3:
- Lookup in shadow map texture

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

What are the three types of culling?

A

View-Frustum culling

Back-face culling

Occlusion culling

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

What is also known as View-Frustum culling?

A

Rendering and clipping

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

What can you clip to?

A

Camera view frustum
Device boundaries
Viewport boundaries
User specified clipping path

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

What is the most common shape for a clipping region?

A

A convex polygon

17
Q

What is object-level culling also known as?

A

Painter’s algorithm

18
Q

What is image-level culling also known as?

A

Z-buffer algorithm

19
Q

What are the two types of occlusion culling?

A

Object-level culling and image-level culling

20
Q

What is the idea of the Painter’s algorithm?

A

Drawing objects from the most distant one to the closest one

21
Q

When does the Painter’s algorithm have an issue and how is this addressed?

A

When the objects cannot be ordered from back to front - this is addressed by the Z-buffer algorithm

22
Q

What is a Z-buffer?

A

Aka depth buffer, it is a buffer with an entry for every pixel on the screen, containing (xs, ys) element as the transformed surface that is closest to the screen at (xs, ys)

23
Q

What can’t a Z-buffer handle?

A

Transparency (including partial transparency)