BSCS Bachelor of Science in Computer Science: Computer Graphics Fundamentals Questions 5 — Questions and Answers
Question 1: What is the purpose of a mipmap in texture rendering?
- Storing multiple color palettes for a texture
- Pre-computed lower-resolution versions used to reduce aliasing for distant surfaces (Correct answer)
- Mapping UV coordinates to 3D world positions
- Blending two textures based on height maps
Correct answer: Pre-computed lower-resolution versions used to reduce aliasing for distant surfaces
Mipmaps are pre-filtered, progressively smaller texture images that reduce aliasing and improve performance when surfaces are small on screen.
Question 2: Which primitive is most commonly used as the fundamental rendering unit in real-time 3D graphics?
- Quadrilateral (quad)
- Triangle (Correct answer)
- NURBS patch
- Voxel
Correct answer: Triangle
Triangles are the universal rendering primitive because they are always planar, convex, and efficiently rasterized by modern GPU hardware.
Question 3: In global illumination, what does 'indirect lighting' refer to?
- Light emitted directly from area light sources
- Light that has bounced off one or more surfaces before reaching a point (Correct answer)
- Ambient light with no direction
- Shadow-mapped directional light
Correct answer: Light that has bounced off one or more surfaces before reaching a point
Indirect lighting accounts for light energy that has reflected off surfaces one or more times before contributing to the illumination of a point.
Question 4: What is the Sutherland-Hodgman algorithm used for?
- Rasterizing curves to pixel grids
- Clipping a polygon against a convex clipping region (Correct answer)
- Interpolating normals across a mesh
- Sorting depth values in a z-buffer
Correct answer: Clipping a polygon against a convex clipping region
The Sutherland-Hodgman algorithm clips a polygon against each edge of a convex clip region successively, outputting the clipped polygon.
Question 5: What information does a vertex normal store in a 3D mesh?
- The vertex's position in texture space
- The perpendicular direction to the surface at that vertex for lighting calculations (Correct answer)
- The vertex's bone weight for skeletal animation
- The index of adjacent triangles in the mesh
Correct answer: The perpendicular direction to the surface at that vertex for lighting calculations
A vertex normal stores the averaged surface direction at a vertex, enabling smooth lighting interpolation across curved surfaces.
Question 6: In screen-space ambient occlusion (SSAO), what does the algorithm approximate?
- Real-time global illumination from environment maps
- How much ambient light reaches a surface point based on surrounding geometry (Correct answer)
- Soft shadows from area lights
- Subsurface scattering in translucent materials
Correct answer: How much ambient light reaches a surface point based on surrounding geometry
SSAO approximates ambient occlusion in screen space by sampling depth buffer neighbors to estimate how occluded each pixel is from ambient light.
Question 7: What is the significance of the cross product of two edge vectors of a triangle in 3D graphics?
- It gives the centroid position of the triangle
- It produces the surface normal, indicating the face's orientation (Correct answer)
- It computes the triangle's area in texture space
- It encodes the barycentric coordinates of the vertices
Correct answer: It produces the surface normal, indicating the face's orientation
The cross product of two edge vectors of a triangle yields a vector perpendicular to the triangle's plane, which serves as the face normal.
What is the purpose of a mipmap in texture rendering?