Modeling Flashcards

(27 cards)

1
Q

What is the difference between modeling and rendering?

A

Modeling defines what the objects are; rendering decides how they appear (lighting, color, projection).

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

What is the difference between a point and a vector?

A

A point represents a position in space and can be translated; a vector represents a direction and magnitude and cannot be translated.

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

What coordinate system does OpenGL use?

A

A right-handed coordinate system (curl fingers from +X to +Y → thumb points in +Z).

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

What is the most basic polygon used in 3D graphics?

A

The triangle — because it’s always planar and easy for GPUs to render

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

Why do we prefer triangles over other polygons?

A

They are always flat (planar), stable for lighting, and efficient for GPUs.

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

What determines a polygon’s “front” face?

A

The winding order — usually counterclockwise (CCW) vertex order defines the front face.

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

What happens if a polygon is non-planar?

A

lighting and shading can behave incorrectly because the surface normal is undefined.

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

What is the general equation of a plane?

A

ax+by+cz+d=0. (a,b,c) is the planes normal and d is offset

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

How can we tell which side of a plane a point lies on?

A

Result > 0 → one side

Result < 0 → other side

Result = 0 → on the plane

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

What is a mesh?

A

A mesh is a connected collection of polygons (usually triangles) that share vertices.

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

What are the two main components of a mesh?

A

Vertex table — stores all vertex data (positions, normals, colors, etc.).

Face table — stores indices showing which vertices form each triangle.

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

What is the benefit of using meshes instead of separate polygons?

A

Shared vertices reduce redundancy, improve performance, and enable smooth shading.

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

What’s a polygon soup?

A

A disorganized collection of unconnected polygons with no shared vertices — inefficient and can cause gaps.

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

What is a triangle strip?

A

A connected series of triangles where each new triangle shares the previous two vertices.
→ Reduces data redundancy.

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

What is a triangle fan?

A

A set of triangles sharing one common central vertex — useful for circular or fan-like shapes.

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

How do you draw triangle strips or fans in OpenGL?

A

glDrawElements(GL_TRIANGLE_STRIP, …) or glDrawElements(GL_TRIANGLE_FAN, …).

17
Q

What is a normal vector?

A

A vector perpendicular to a surface — shows which way it faces and is essential for lighting.

18
Q

What are the two types of normals?

A

Polygon normal: one per face (faceted look)

Vertex normal: average of surrounding faces (smooth look)

19
Q

How do you compute a polygon’s normal from three vertices?

A

u=v2-v2 v=v3-v1
take cross prod, normalize

20
Q

Why do we normalize normals?

A

To ensure consistent lighting calculations (the lighting intensity depends on unit-length normals).

21
Q

How are vertex normals calculated for smooth shading?

A

Average the normals of all faces touching that vertex and then normalize the result.

22
Q

How does a mesh map to OpenGL structures?

A

Vertex Table → VBO (Vertex Buffer Object)

Face Table → EBO (Element Buffer Object)

Combined via VAO (Vertex Array Object)

23
Q

Why is shared vertex data more efficient?

A

Because each vertex is processed once and reused, reducing memory and computation.

24
Q

Why is vertex order important for 3D rendering?

A

It defines which side of a polygon is front-facing, affecting lighting and back-face culling.

25
What is the relationship between modeling and transformations?
Modeling defines the object’s shape and structure; transformations (via matrices) determine its position, rotation, and scale in the scene.
26
What is the purpose of normal vectors in lighting calculations?
hey determine how much light a surface receives based on the angle between the normal and light direction.
27
Why are meshes the preferred modeling structure for modern GPUs?
They are efficient, easily parallelized, and map directly to GPU memory structures.