01Introduction to Computer Graphics
The role of graphics in visualization, games, simulation, and interactive systems; offline and real-time rendering; OpenGL and related graphics APIs.
02Environment Setup
C++17 projects in CLion, CMake configuration, OpenGL contexts, GLFW window and input management, GLAD function loading, and common compilation issues.
03Modern Graphics Pipeline
The programmable rendering pipeline, vertex processing, clipping, rasterization, fragment processing, and the flow of data from application code to the GPU.
04Buffers, Attributes & Shaders
Vertex buffer objects, element buffer objects, vertex array objects, vertex and fragment shaders, shader compilation, linking, attributes, uniforms, and GLSL data flow.
05Textures & Meshes
Texture coordinates, wrapping, filtering, mipmaps, image loading, texture units, indexed geometry, and reusable mesh abstractions.
06Transformations
Vectors and matrices, translation, rotation, scaling, matrix composition, GLM, and the mathematical foundations of positioning geometry.
07Coordinate Systems & Cameras
Local, world, view, clip, and normalized device spaces; model, view, and projection matrices; perspective and orthographic projection; camera movement, orientation, and zoom.
08Lighting & Materials
Ambient, diffuse, and specular lighting, material properties, lighting maps, directional lights, point lights, spotlights, and the foundations of Phong shading.
09Advanced OpenGL
Depth and stencil testing, z-fighting, object outlines, blending, transparency, cubemaps, skyboxes, reflection, and refraction.
10Shadows & Interactive Scenes
Directional- and point-light shadow mapping, framebuffer preparation, combining pipeline stages, and building complete textured and illuminated 3D scenes.