Computer Graphics and Programming

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/69

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 7:49 AM on 9/7/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

70 Terms

1
New cards

computer graphics

describes the use of computers to create and manipulate images

2
New cards

Modeling

deals with the mathematical specification of shape and appearance properties in a way that can be stored on the computer.

3
New cards

Rendering

deals with the creation of shaded images from 3D computer models.

4
New cards

Animation

a technique to create an illusion of motion through a sequence of images.

5
New cards

Raster

Rendering a scene produces a

6
New cards

raster

is an array of pixels (picture elements) displayed on a screen, arranged in a grid with two (2) dimensions

7
New cards

Pixels

specify colors using triples of floating-point numbers between 0 and 1, which represent the amount of red, green, and blue light existing in a color; a value of 0 indicates that no amount of that color exists, while a value of 1 represents that color is displayed at full intensity

8
New cards

Resolution

is the number of pixels in the raster while precision is the number of bits used for each pixel.

9
New cards

Resolution

The quality of an image depends partly on its

10
New cards

buffer (or data buffer, or buffer memory)

is a part of a computer's memory that serves as temporary storage for data while being moved from one location to another

11
New cards

framebuffer

Pixel data is stored in a region of memory called the

12
New cards

color buffer

which stores RGB values.

At a minimum, the framebuffer must contain a

13
New cards

depth buffer

When rendering a 3D scene, the framebuffer must also contain a

14
New cards

depth buffer

stores distances from points on scene objects to the virtual camera.

15
New cards

Depth values

determine whether the object's points are in front of or behind other objects

16
New cards

stencil buffer

Finally, framebuffers may contain a buffer called a Finally, framebuffers may contain a buffer called a

17
New cards

frame

each of the images that is displayed is called a

18
New cards

frame rate and is measured in frames per second (FPS).

The speed or rate at which these images appear is called the

19
New cards

Graphics Processing Unit (GPU)

features a highly parallel structure that makes it more efficient than CPUs for rendering computer graphics.

20
New cards

shaders

Programs run by GPUs are called

21
New cards

application programming interface (API)

Shader programming languages implement an ------------, which defines a set of commands, functions, and protocols that can be used in interacting with an external system such as the GPU

22
New cards

DirectX API & High-Level Shading Language (HLSL)

used on Microsoft platforms, including the Xbox game console

23
New cards

Metal API & Metal Shading Language

runs on modern Mac computers, iPhones, and iPads

24
New cards

OpenGL (Open Graphics Library) API & OpenGL Shading Language (GLSL)

a cross-platform library - OpenGL is the most widely adopted graphics API.

25
New cards

graphics pipeline

is an abstract model used to describe a sequence of steps needed in rendering a three-dimensional scene.

26
New cards

Application

initializing the window where rendered graphics will be displayed; sending data to the GPU

27
New cards

Geometry Processing

determining the position of each vertex of the geometric shapes to be rendered, implemented by a program known as vertex shader

28
New cards

Rasterization

determining which pixels correspond to the geometric shapes to be rendered

29
New cards

Pixel Processing

determining the color of each pixel in the rendered image, involving a program called a fragment shade

30
New cards

Creating a window where the rendered graphics will be displayed:

the window must be initialized to read the graphics from the GPU framebuffer. For animated and interactive applications, the main application contains a loop that repeatedly re-renders the scene, usually aiming for a rate of 60 FPS.

31
New cards

Reading data required for the rendering process

This data may include vertex attributes, which describe the appearance of the geometric shapes being rendered.

32
New cards

vertex buffer objects (VBOs

The vertex attribute data is stored in GPU memory buffers called

Lastly, source code for the vertex shader and fragment shader programs needs to be sent to the GPU, compiled, and loaded.

33
New cards

texture buffers

while images to be used as textures are stored in

34
New cards

Sending data to the GPU

The application needs to specify the associations between attribute data stored in VBOs and attribute variables in the vertex shader program

35
New cards

vertex array objects (VAOs)

Each shape may also be rendered by a different shader program. These sets of associations can be managed using ________. VAOs store this information and can be activated and deactivated as needed during the rendering process.

36
New cards

Geometry Processing

The shape of a geometric object is defined by a mesh, a collection of points that are grouped into lines or triangles

37
New cards

mesh

The shape of a geometric object is defined by a

38
New cards

vertex

Apart from the object's overall shape, additional information may be required to describe how the object should be rendered. The properties or attributes that are specific to rendering each individual point are grouped together into a data structure called a

39
New cards

Texture coordinates (or UV coordinates)

which indicate a point in an image that is mapped to the vertex

40
New cards

normal vector

which indicates the direction perpendicular to a surface and is typically used in lighting calculations

41
New cards

Model transformation

The collection of points defining the intrinsic shape of an object may be translated, rotated, and scaled. Hence, the object appears to have a particular location, orientation, and size with respect to a virtual three-dimensional world.

42
New cards

world space

the origin is at the center of the scene

43
New cards

view space (or camera space, or eye space

is the result when world-space coordinates are transformed to coordinates in front of the user's view.

44
New cards

View transformation

Coordinates in this context are said to be in view space

45
New cards

Projection transformation

Any points outside the specified region are discarded or clipped from the scene; coordinates expressed at this stage are in clip space.

46
New cards

Stage 3: Rasterization

Once the vertex shader has specified the final positions of each vertex, the rasterization stage begins. The points themselves must first be grouped into the desired type of geometric primitive: points, lines, or triangles, consisting of sets of 1, 2, or 3 points.

47
New cards

(called a line strip)

They could also be grouped in overlapping pairs, such as (A, B), (B, C), (C, D), (D, E), (E, F), producing a set of connected line segments

48
New cards

primitive assembly

The process of grouping points into geometric primitives is termed

49
New cards

fragment

is a collection of data used to determine the color of a single pixel in a rendered image.

50
New cards

raster position

The data stored in a fragment always includes the ________, also called pixel coordinates.

51
New cards

fragment shader

During the first part of the pixel processing stage, a program called the _________ is applied to each of the fragments to calculate their final color

52
New cards

Stage 4: Pixel Processing

The primary purpose of this stage is to determine the final color of each pixel, storing this data in the color buffer within the framebuffer. During the first part of the pixel processing stage, a program called the fragment shader is applied to each of the fragments to calculate their final color.

53
New cards

window

is a graphical interface element that displays an application's content.

54
New cards

Startup

During this stage, objects are created, values are initialized, and any required external files are loaded.

55
New cards

Main Loop

Process Input - checks if the user has performed any action that sends data to the computer, such as pressing keys on a keyboard or clicking buttons on a mouse.

Update - changes values of variables and objects.

Render - creates graphics that are displayed on the screen.

This stage repeats continuously while the application is running

It consists of the following three (3) substages:

56
New cards

Shutdown

This stage typically begins when the user performs an action indicating that the program should stop

57
New cards

Pygame

is a set of Python modules designed for creating video games.

58
New cards

use the pygame.display.set_mode() method.

To set up a window using Pygame

59
New cards

point

A ____is a location in space. It is the most basic graphical element. To render a single point on the screen, use a vertex shader

60
New cards

main ()

Every shader must contain a _______ function

61
New cards

vertex buffers.

Every vertex shader that you write will use arrays of data stored in

62
New cards

glVertex3f.

Each of the triangle's vertices is specified by a call to the function

63
New cards

glBegin and glEnd

vertices must be specified between calls to

64
New cards

Uniform variables

are global variables that can be accessed by the vertex shader or the fragment shader, and whose values are constant while each shape is being drawn (can be changed between draw function calls).

65
New cards

uniform

Uniform shader variables, declared with the type qualifier ________, provide a mechanism for directly sending data from variables in a CPU application to variables in a GPU program.

66
New cards

glGetUniformLocation

The ___________function returns a value used to reference a uniform variable (indicated by the type qualifier uniform) with the name indicated by the parameter variableName and declared in the program referenced by the parameter programRef. If the variable is not declared or not used in the specified program, -1 is returned.

67
New cards

Pygame

library provides support for working with user input events. Pygame detects keydown events and keyup event

68
New cards

keyup events

while ______events occur the moment the key is released.

69
New cards

discrete

An event is said to be ______if it happens once at an isolated point in time.

70
New cards

continuous

It is said to be ______if it continues happening during an interval of time