Skip to main content

01 | Overview & Rasterization

Computer graphics definition, applications, rendering pipeline, graphics vs computer vision

Instructor: Lingqi Yan | UCSB Course Link: https://www.bilibili.com/video/BV1X7411F744

1 What is Computer Graphics

Computer Graphics: The use of computers to synthesize and manipulate visual information.

The core task of computer graphics is to represent, process, render, and display graphics and images in computers.

Application Areas

AreaExamples
Video GamesReal-time rendering, 3D scenes
Film VFXOffline rendering, visual effects
AnimationCG animation like Frozen, Zootopia
Design & CADIndustrial design, architectural visualization
Data VisualizationScientific, engineering, medical data
Virtual RealityImmersive virtual environments
Augmented RealityReal-virtual fusion (AR navigation)
SimulationPhysics, weather, black hole visualization

2 Four Core Topics

GAMES101 covers four core topics in modern computer graphics:

Rasterization

  • Project geometric primitives (3D triangles) onto the screen
  • Convert projected primitives into pixel fragments
  • Gold standard for real-time applications (video games)

Curves and Meshes

  • How to represent geometric shapes in computers
  • Bézier Curves
  • Catmull-Clark Subdivision Surfaces

Ray Tracing

  • Shoot rays from camera through each pixel
  • Compute intersections and shading
  • Continue bouncing rays until hitting light sources
  • Gold standard for offline applications (movies, animation)

Animation / Simulation

  • Keyframe Animation
  • Mass-Spring Systems
  • Physics Simulation

3 Graphics vs Computer Vision

Computer GraphicsComputer Vision
InputScene / Model / GeometryImage
OutputImageScene understanding / Features
DirectionModel → ImageImage → Model
Computer Graphics:  Model  →  Image
Computer Vision:    Image  →  Model

Forward Rendering vs Inverse Problem

Forward Rendering:

  • Start from scene → compute light propagation → generate image
  • Classical ray tracing and rasterization are forward rendering

Inverse Problem:

  • Start from image → infer scene information
  • Image segmentation, object recognition, 3D reconstruction

Relationship:

  • Graphics and vision are inverse processes
  • Graphics: model → image (simulate physics)
  • Vision: image → model (understand visual information)
  • The boundary is blurry; deep learning era sees fusion (NeRF, 3D Gaussian Splatting)

4 Rendering Pipeline

The basic graphics pipeline:

Vertex Data → Vertex Shader → Primitive Assembly → Rasterization → Fragment Shader → Framebuffer → Display
StageDescription
Vertex DataInput geometry (coordinates, colors, normals)
Vertex ShaderTransform each vertex (MVP transforms)
Primitive AssemblyAssemble vertices into primitives (triangles)
RasterizationConvert primitives to pixel fragments
Fragment ShaderCompute color for each fragment (shading, textures)
FramebufferStore final pixel colors
DisplayOutput framebuffer to screen

5 What GAMES101 is NOT

This course focuses on underlying principles, not specific tools:

NotDescription
❌ OpenGL / DirectX / Vulkan syntaxLearn graphics principles, not APIs
❌ Maya / 3DS MAX / Blender modelingNot a 3D modeling software course
❌ Unity / Unreal Engine developmentNot a game engine course
❌ Computer Vision / Deep LearningNo CV or DL content

After this course, you’ll be able to learn these tools and APIs yourself.

ResourceDescription
TextbookSteve Marschner & Peter Shirley, Fundamentals of Computer Graphics, 3rd+ edition
Course Sitehttps://sites.cs.ucsb.edu/~lingqi/teaching/games101.html
Video (Bilibili)https://www.bilibili.com/video/BV1X7411F744
Assignment Frameworkhttps://github.com/AK47ASW/GAMES101
Discussion Forumhttp://games-cn.org/forums/forum/graphics-intro/

Assignment Info

  • Programming tasks with code framework provided
  • Weekly workload is small (usually < 20 lines of code)
  • Language: C++
  • Recommended IDE: Visual Studio / VS Code / Qt Creator

7 Review Quiz

  1. What is the core task of computer graphics? How does it fundamentally differ from computer vision?

  2. What is the role of rasterization in the rendering pipeline? Where does it sit?

  3. Why is rasterization the “gold standard for real-time applications”? How does it differ from ray tracing in use cases?

  4. Why does GAMES101 choose “not to teach APIs”? What’s the benefit?

  5. What scenario would use both rasterization and ray tracing together?


This is the 1st note in the GAMES101 - Modern Computer Graphics learning series.