intro comp graphics

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/28

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

29 Terms

1
New cards
Rasterization
Process of converting raw image into a pixelated image so that the computer can display it or the GPU can display it. Also called the process that makes raster images. Happens after primitive assembly and before fragment shader in the GPU pipeline.
2
New cards
Raster Image
A digital image composed of pixels, where each pixel has a specific color. Lacks geometric properties (unlike vector graphics).
3
New cards
BMP(Bitmap Image File)
Large files, high-quality, uncompressed image data.
4
New cards
PPM(Portable Pixelmap Image File)
Uncompressed, LDR (simplest image format available), 1/8/16 bits per channel.
5
New cards
PNG(Portable Graphics Format)
Lossless compression, LDR, 8/16 bits per channel or color table (2 to 256 colors).
6
New cards
GIF(Graphics Interchange Format)
Lossless compression, LDR, Color Table (2 to 256 colors).
7
New cards
JPEG(Join Photographic Experts Group)
Lossy compression (doesn't reproduce exact image when uncompressed), LDR, Equivalent of 8 bits per channel.
8
New cards
EXR(OpenEXR)
Most common HDR file format, Lossy/Lossless Compression, HDR, 16/32 bits per channel.
9
New cards
WebGL
JavaScript Graphics API that works on browsers without needing plugins. Based on OpenGL and runs on the GPU.
10
New cards
Vertex Shader
A program that runs on the GPU to process and transform the data of each vertex, which are the points that define a 3D object. Mainly changes the vertex's coordinates and position, which helps determine visibility, and modifies other vertex attributes such as color or texture coordinates.
11
New cards
Uniforms
Variables that remain constant across all vertices/fragments in a single draw call. Set from JavaScript, read-only in shaders. Used for transformation matrices, colors, light positions, time values, textures. More efficient than sending the same data per-vertex.
12
New cards
Vertex Processing
Takes each vertex (corner point) and moves it to the right place on screen (coordinate transformation). Calculates properties for that vertex like color, lighting, texture position.
13
New cards
Low/High Dynamic Range
Dynamic Range = The difference between the darkest and brightest parts of an image. HDR = Much wider range of brightness values (values above 255), uses more bits per channel, more detailed. LDR = Limited range of brightness values (0-255 per color channel), most standard monitors/images use 8 bits per channel.
14
New cards
Lossless Compression
Reproduces exact image when uncompressed, no data loss, larger file sizes.
15
New cards
Lossy Compression
Does NOT reproduce exact image when uncompressed, sacrifices some quality for smaller file size, data is permanently lost.
16
New cards
Gamma Correction
Adjusts the brightness of an image to match human perception. Human vision is more sensitive to differences in dark ranges than bright ranges (non-linear perception).
17
New cards
Alpha Blending
A technique to make objects transparent or semi-transparent. Combines the color of a foreground object with the background behind it based on an alpha value. Alpha = 0.0 → Fully transparent, Alpha = 1.0 → Fully opaque.
18
New cards
Affine Transformations
Most basic and common transformations: translation, rotation, scaling, shear. Straight lines remain straight, parallel lines remain parallel.
19
New cards
Linear Transformations
Subset of affine transformations. Preserves the origin (no translation allowed). Rotation, scaling, shearing (around origin). Excludes translation.
20
New cards
Perspective Projection
Non-affine transformation. Creates realistic depth: objects farther away appear smaller. Simulates how human eyes see the world. Used in 3D games, VR/AR, realistic rendering.
21
New cards
GPU(Graphics Processing Unit)
Specialized for graphics and parallel computations. Processes tasks in parallel (thousands at once). Thousands of smaller cores. Handles vertex shaders, fragment shaders, rasterization.
22
New cards
CPU(Central Processing Unit)
General-purpose processor. Handles logic, game rules, AI, physics. Processes tasks sequentially (one after another). Few powerful cores (4-16 typically).
23
New cards
State Machine
System that "remembers" settings until you explicitly change them. Example: gl.enable(gl.DEPTH_TEST) stays ON until you turn it OFF.
24
New cards
Retained Mode Graphics
Graphics system that stores/remembers the scene description. You build a scene graph or object list once. System handles when/how to render automatically. Examples: Three.js, Unity, scene graphs. Pros: Easier to use, system optimizes. Cons: Less control, potentially less efficient.
25
New cards
Immediate Mode Graphics
You directly command the system to draw each frame. No memory of previous frames. Must re-specify everything every single frame. Examples: WebGL, OpenGL. Pros: Full control, potentially more efficient. Cons: More work for programmer.
26
New cards
Buffering (single and double)
Buffer: Chunk of memory that stores data. Single Buffering: One buffer, draw directly to screen, may cause tearing/flickering. Double Buffering: Two buffers, back buffer drawn to, front buffer displayed, swap buffers for smooth animation. Standard for modern graphics.
27
New cards
General Buffering
Using memory to store various types of data: Vertex buffer (stores vertex positions), Color buffer (stores pixel colors), Depth buffer (stores depth values), Stencil buffer (stores masking values).
28
New cards
Buffer Swaps and Triggering
Exchange front and back buffers in double buffering. Back buffer becomes visible (front), old front becomes new back ready for next frame.
29
New cards
Attributes
Per-vertex data sent from CPU to vertex shader. Different value for each vertex. Examples: position, color, normal, texture coordinates. Stored in vertex buffer objects (VBOs) on GPU. Declared with attribute keyword in vertex shader.