Lecture 3 (Rendering Pipeline) Flashcards

1
Q

What is the Direct3D 11 pipeline?

A
  • ** Refer to a diagram please :)
  • Input assembler
  • Vertex Shaders
  • Tesselation stages (optional)
  • Geometry Shader (optional)
  • Stream output (optional)
  • Rasteriser (culling)
  • Pixel Shader
  • Output-merger
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

WTF is ‘Shaders’?

A

Vertex shader -> Shades a polygon based off the properties of its vertices e.g. colour

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

How does ‘Culling’ work? Which direction does that?

A
Clockwise = Render
Anti-Clockwise = Don't render
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is ‘Double Buffering’? Why is it useful?

A

Images should be completely drawn before showing on the screen.

  • Helps to reduce tearing.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

WTF is a ‘Framerate’?

A

Number of times data is sent through the pipeline

e.g. 30 fps = data sent through the pipeline 30 times in a second

A higher framerate will result in smoother animations

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

WTF is ‘HLSL’?

A

High Level Shader Language in Unity

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

WTF is ‘Culling’?

A

Only rendering the side of the object which is visible to the viewer. The backside doesn’t get rendered therefore improves performance.

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

What is the ‘Input Assembler Stage’ (Direct3D 11 Pipeline)?

A

Building block stage

  • Reads data from our buffers into a primitive format that can be used by the other stages of the pipeline
  • Mainly use Triangle Lists (Refer to notes)
  • This stage feeds into the Vertex Shader Stage of the Pipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the ‘Vertex Shader Stage’ (Direct3D 11 Pipeline)?

A

Performs operations on individual vertices received from the Input Assembler Stage

  • This will typically include transformations
  • May also include per-vertex lighting
  • This stage feeds into the Tessellation Stages of the Pipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the ‘Tessellation Stages’? (Direct3D 11 Pipeline)

A

Adding additional polygons for more detail

  • Optional stages (introduced with Direct3D 11)
  • Enables generations of additional vertices within the GPU
  • Can take a lower detail model and render it in higher detail
  • Can perform level of detail scaling
  • This stage feeds into the Geometry Shader Stage of the Pipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the ‘Geometry Shader Stage’ (Direct3D 11 Pipeline)?

A

Operations on an entire primitive (e.g. triangles) (as opposed to the Vertex Shader Stage which is performs operations on individual vertices)

  • Optional stage (introduced with Direct3D 10)
  • Can perform a number of algorithms:
    • Dynamically calculating normals
    • Particle systems
    • Shadow volume generation
  • This stage feeds into the Stream Output Stage (loop)/Rasterizer Stage of the Pipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the ‘Stream Output Stage’ (Direct3D 11 Pipeline)?

A

Receives data (vertices or primitives) from the geometry shader and feeds back into the pipeline for processing by another set of shaders

  • Used to have the GPU do processing instead of the CPU
  • Useful for particle systems update e.g. waves, ripples
  • This stage feeds into Memory Resources then loops back up to any of the above stages
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the ‘Rasterizer Stage’ (Direct3D 11 Pipeline)?

A

Converts vector information into a raster image (composed of pixels) for the purpose of displaying real-time 3D graphics

  • Performs culling*
  • This stage feeds into the Pixel Shader Stage of the Pipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is the ‘Pixel (Fragment) Shader’ (Direct3D 11 Pipeline)?

A

Produces colour values for each interpolated pixel fragment

  • Per-pixel lighting can be performed
  • Can also produce depth values for depth-buffering
  • This stage feeds into the Output-Merger Stage of the Pipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is ‘Output-Merger Stage’ (Direct3D 11 Pipeline)?

A

Combines pixel shader output values to produce final image

  • May also perform depth buffering
How well did you know this?
1
Not at all
2
3
4
5
Perfectly