Exam Questions by Subject
Exam Questions by Subject
Graphics Pipeline:
2.
Retained: All geometric data is computed and stored in some storage structure. The scene is then displayed by
sending all data to the graphics processor at once.
4. Give 2 advantages and a disadvantage of using the pipeline approach to form CGI.
Advantages:
- Increases performance when the same sequence of concurrent operations in carried out on many, or large,
datasets
- Process on each primitive can be done independently
Disadvantage:
- Latency of the system must be balanced against increased throughput.
- Global effects may not be handled correctly.
about:blank 1/15
9/23/24, 7:41 AM Exam Questions by Subject
5. Name the frames in the usual order in which they occur in the WebGL pipeline
Object coordinates World coordinates eye coordinates clip coordinates Normalised device
coordinates window coordinates Screen coordinates
8.
about:blank 2/15
9/23/24, 7:41 AM Exam Questions by Subject
1. Besides the transformation to 2D, explain what other transformations must be done before we can show an
image on a computer screen?
4. Describe, with use of diagrams, how polygons are clipping using the Cohen-Sutherland line clipping
algorithm
The algorithm divides a 2 dimensional space into 9 regions (Centre being the inside region), then efficiently
determines the line and portions of lines that are inside the given rectangular area.
5. Give one advantage and one disadvantage of using the Cohen-Sutherland line clipping algorithm?
Advantage: Works best when there are many line segments but few are actually visible.
Disadvantage: the algorithm has to be used recursively.
6. What is meant by the term “double buffering” and for what purpose is it used?
Double buffering solves the problem of distortion caused when the frame buffer redisplays causing a partially
drawn display. There are 2 frame buffers used, a front buffer that is displayed, and a back buffer that is
available for constructing the next display. The buffers are then swopped and the new back buffer is cleared
and starts drawing the next display.
about:blank 3/15
9/23/24, 7:41 AM Exam Questions by Subject
9. In WebGL graphics pipeline, when a triangle is processed, the (x,y,z) coordinates of the vertices are
interpolated across whole triangle to give coordinates of each fragment. Name 2 other things that may
commonly be specified at the vertices and then interpolated across the triangle to give a value for each
fragment
Colours, normals, and texture coordinates.
10. Explain crossing, or odd-even test, with respect to a point p inside a polygon.
Any ray emanating from point p that is inside the polygon will have an odd number of crossings before infinity
Any ray emanating from point p that is outside the polygon will have an even number of crossings before
infinity
12.
about:blank 4/15
9/23/24, 7:41 AM Exam Questions by Subject
2. Why are projections produced by parallel and perspective viewing known as planar geometric projections?
Both parallel and perspective views are known as planar projections because the projection surface is a plane
and the projectors are lines.
5. Shape of the viewing volume for an orthogonal projection is right parallelepiped. Discuss steps involved in
the projection normalisation process for an orthographical projection
1. Perform translation to move centre of specified view volume to centre of canonical view volume
2. Scale sides of specified view volume such that they have a length of 2.
7. Transformations are often carried out using a homogenous coordinate representation. Why is this
representation used?
- All affine transformations can be represented using matrix multiplications
- Uniform representation of all affine transformations make carrying out successive transformations far easier
than in 3D space.
- Less arithmetic is involved
about:blank 5/15
9/23/24, 7:41 AM Exam Questions by Subject
9. Since clipping to a clip region that is a cube is so easy, graphics systems transform any scene with its clip
window to make the clip window a cube
a. Name this transformation technique
b. Give one other advantage of using this transformation technique
a) Projection normalisation
b) Both perspective and parallel views can be supported by the same pipeline.
For each, state if statements are True. May have none, one, or more than one.
a. Position of an arbitrary vertex is always the same after transformation None
b. Length of an arbitrary line segment is the same after transformation A and B
c. Angle between 2 arbitrary vectors is the same after transformation
d. Arbitrary parallel lines are still parallel after transformation A, B, and C
13. Synthetic coordinate reference frame is given by a VRP, VPN, and VUP. Using a diagram show how these
quantities describe the location and orientation of the synthetic camera
15. Explain why translation and rotation are known as rigid body transformations
Translation and rotation cannot alter the volume or the shape of an object
about:blank 6/15
9/23/24, 7:41 AM Exam Questions by Subject
16. Model-view transformation is the concatenation of 2 transformations. Name and describe these 2
Modelling transformation: Takes instances of objects in object coordinates and brings them into the world
frame
Viewing transformation: Transforms world coordinates into camera coordinates.
17.
about:blank 7/15
9/23/24, 7:41 AM Exam Questions by Subject
1. Hidden surface removal can be divided into 2 broad classes, state and explain each of these classes
Object space: Attempts to order surfaces of objects in the scene such that rendering surfaces in a particular
order provide the correct image
Image space: Works as part of projection process and seeks to determine the relationship among object points
on each projector
2. Compare and contrast the depth sort and Z-buffer hidden surface removal algorithms with respect to the
following:
a. Rasterization process
b. Type of algorithm
c. Hardware implementation
d. Scenes that are difficult to render
a) Depth Sort:
Z-Buffer: As primitives are rasterized, it keeps track of the distance from COP to closest point on each
projector already rendered
c) Depth Sort:
Z-Buffer: Easy to implement.
d) Depth Sort:
Z-Buffer:
3. Draw a picture of a set of simple polygons that the depth sort algorithm cannot render without splitting the
polygons
4. Differentiate between depth sort and Z-buffer algorithms for hidden surface removal
Z-Buffer:
Z-Buffer stores the depth of the object from the COP, whereas the depth sort does sorting to determine if
there are any polygons whose z-extents overlap.
5. State whether the following about depth sort and Z-buffer are true or false, correct if false.
a. Depth sort is image space algorithm False, object space algorithm
b. Z-buffer is image space algorithm True
c. Z-buffer does rasterization polygon by polygon True
d. Depth sort considers depth of each fragment in a polygon corresponding to intersection of a polygon
with a ray from COP True
e. Z-buffer find scenes where polygon pierces another difficult to render False, depth sort
f. Depth-sort find scenes where 3 or more polygons operate cyclically difficult to render True
g. Z-buffer can only be implemented in software False, hardware or software
h. Depth sort orders polygons True
about:blank 8/15
9/23/24, 7:41 AM Exam Questions by Subject
6. Briefly describe the algorithm for removing back facing polygons, assume normal points out from visible side
of the polygon
Culling is used in situations where back faces cannot be seen. This reduces the work for the hidden surface
removal algorithms by eliminating all back facing polygons before applying other hidden surface removal
algorithms.
a) Depth information
b) WebGL uses this to determine if a fragment rasterized will have a greater depth than that in the Z-buffer. If
so, it is discarded.
c) Easy to implement in either hardware of software, and is compatible with pipeline architectures.
about:blank 9/15
9/23/24, 7:41 AM Exam Questions by Subject
a) n – normal at p
v – in direction from p to viewer or COP
l – In direction of a line from p to arbitrary point on light source
r – in direction of a perfectly reflected ray from I would take
b) p is the shininess coefficient. Reflected light is concentrated in a narrower region centred on the angle
of a perfect reflector.
c) ka is the ambient reflection coefficient, decreasing this will decrease the amount of light reflection
given by the surface.
3. Can the standard WebGL pipeline easily handle light interactions from object to object?
Explain
Lambert’s law states we only see the vertical component of the incoming light
6. Using Lambert’s law, derive the equation for calculating approximations to diffuse reflection on a computer
�d=�d� d(�∙�)
about:blank 10/15
9/23/24, 7:41 AM Exam Questions by Subject
7. Name 2 artifacts in computer graphics that may commonly be specified at vertices of a polygon and then
interpolated across the polygon to give a value for each fragment within the polygon
Colours, normals, and texture coordinates
8. Shading intensity at any given point p on a surface is, in general comprised of 3 contributions, each
corresponding to a distinct physical phenomenon. List and describe these 3 phenomenon
Ambient, specular, and diffuse light interactions
9. We have 3 choices where we do lighting calculations. In the application, vertex shader, or fragment shader
a. Describe 3 steps required to implement lighting in a shader
b. Explain difference between doing lighting calculation on a per-fragment as opposed to per-vertex
basis
a. Choose lighting model, Write the shader to implement the model, and finally transfer necessary data to
shader
b. When doing lighting on a per-fragment vases, we obtain highly smooth and realistic looking shadings.
a) Local – lighting is done independently on objects. Global – Lighting is universal throughout the scene
b) Cannot manage shadows or reflections on the objects
c) Global models are incompatible with the pipeline architecture
d) Ray tracing
11. Interactions between light and material can be classified into 3 groups, state and explain each
Diffuse surface: Reflected light is scattered in all directions
Specular surface: Appear shiny because most of the light that is reflected or scattered is in a narrow range of
angles
Translucent surface: Some light penetrates the surface and emerges from another location on the object
13. Shading:
a. Name the 3 major shading techniques used in computer graphics
b. Describe the computation process for each of these
c. Discuss how objects shaded by different methods differ in appearance.
about:blank 11/15
9/23/24, 7:41 AM Exam Questions by Subject
about:blank 12/15
9/23/24, 7:41 AM Exam Questions by Subject
Discrete Techniques:
1. Explain what is meant by reflection mapping and discuss briefly how this is implemented in WebGL
Allows us to create images that heave the appearance of reflected materials without having to deflect rays
An image of the environment is painted onto the surface as that surface is being rendered.
Done in 2 passes:
1) Renders scene without reflecting object. Camera place at centre of mirror pointed in direction of the
normal of mirror
2) Use the image to obtain shades to place on the mirror for second rendering.
2. Explain what is meant by texture mapping and discuss briefly how this is implemented in WebGL
Uses an image to influence the colour of a fragment.
The texture can be a digitised image or generated by a procedural texture generation method.
Done by:
1) Form texture image and place in texture memory on GPU
2) Assign texture coordinates to each fragment
3) Apply texture to each fragment
3. Explain the problem of rendering translucent objects using the Z-buffer algorithm, and describe how the
algorithm can be adapted to deal with this problem
When rendering a translucent object before an opaque, the Z-buffer will not composite polygons correctly if an
opaque object is rendered afterwards, behind it.
The Z-buffer can be made read only when rendering the translucent polygons and depth information will be
prevented from being updated when rendering translucent objects
4. Explain what is meant by bump (or normal) mapping and discuss briefly how this is implemented in
computer graphics
Bump mapping distorts the normal vectors during the shading process to make the surface appear to have
small variations in shape. The technique varies the apparent shape of the surface by perturbing normal vectors
as the surface is rendered,
5. We would like to create a realistic looking 3D CG scene of room using WebGL. There is a mirror and a
window, garden is visible through window.
a. Briefly describe a fairly simple and cheap way for us to create the window through which the garden
can be seen
b. Briefly describe a fairly simple and cheap way for to create the mirror
a. Using the texture mapping to map an image of the outside to create the scene of the garden on the window
b. Using the environment mapping to get an image of the room from the mirror to the normal of the mirror
and map it to the mirror.
about:blank 13/15
9/23/24, 7:41 AM Exam Questions by Subject
a) The alpha channel gives the object the ability to be transparent, translucent, or opaque
b) When a line is rendered, instead of colouring a whole pixel with the colour of the line, it passes through it.
It adjusts the intensity of the colour, avoiding sharp contrasts.
c) Enable blending, setup the desired source and destination factors, and the application program must use
RGBA colours.
d) The alpha value controls how much RGB is written into frame buffer
7. What mapping technique computes the surroundings visible as a reflected image on a shiny object?
Environment mapping.
9. When texture mapping, aliasing errors occurring when mapping texture coordinates to a texel. Name and
describe 2 strategies used in CG to deal with this.
1. Point sampling: Use value of texel closest to the texture coordinate output
2. Linear filtering: Use a weighted average for a group of texels in the neighbourhood determined by point
sampling.
about:blank 14/15
9/23/24, 7:41 AM Exam Questions by Subject
1. Provide the pseudocode for DDA line rasterization algorithm, and explained how it is derived
2. Explain the 2 techniques to determine the process of filling the inside of a polygon with a colour or pattern
Odd -even testing & Winding test – see previous explanations
3. Describe briefly, with the use of diagrams, the Cohen-Sutherland line clipping algorithm
The algorithm divides a 2D space into 9 regions, then efficiently determining the lines and portions of lines inside
the given rectangular area.
about:blank 15/15