Program
History and progress transfer
Session summary
Homework β optional, outside the timer
Theory of all steps of the program by blocks. Open a topic to read it.
How a session goes
A session is 10β90 minutes: a warm-up on what you've learned, new steps with short theory and problems, practice. Each problem gives two tries: 100 points on the first, 60 on the second; after the second mistake the correct answer is shown. You move on in the program if 70 % of the problems are solved.
Problems with numbers are generated anew every time a step is repeated. A fractional answer can be entered with a comma, a point or as a fraction: 0,5, 0.5, 1/2. In Practice any topic is available without a timer.
About the course
The vertex shader and lighting, normal maps and parallax, textures, render to texture and ping-pong, shadow maps, PBR basics, raymarching, voxels, debugging and other shader languages.
Course program: 50 lessons
The vertex shader and geometry
- Vertex shader: model, view, projection
- Passing data to the fragment shader
- Deformation: scaling and offset
- Waves on a grid
- Twisting
- Lambert lighting
- Vertices: mixed practice
- Checkpoint: the vertex shader
Normal maps and parallax
- Normal maps and TBN
- Normal map with color and highlight
- Parallax
- Checkpoint: normal maps and parallax
Textures, render to texture, ping-pong
- A texture on a mesh
- Repeating and scrolling a texture
- Filtering and mipmaps
- A full-screen picture
- Render to texture
- Ping-pong: the previous frame
- The Game of Life
- Checkpoint: textures and render to texture
Shadows with a shadow map
- Shadow map
- Depth bias
- Soft shadow edge (PCF)
- Checkpoint: shadows
PBR basics
- BlinnβPhong highlight
- Fresnel
- Roughness: GGX
- Environment reflection
- HDR and tone mapping
- Checkpoint: PBR
Raymarching
- Raymarching: the first sphere
- A normal from the distance function
- A scene from distance functions
- Soft shadows
- Ambient occlusion (AO)
- Infinite repetition
- Raymarching: build a scene
- Checkpoint: raymarching
Voxels
- Voxels by simple stepping
- Grid traversal: DDA
- Voxels from a 3D texture
- Lighting voxels
- Voxels: mixed practice
- DDA: once more
- Checkpoint: voxels
Debugging, performance, other languages
- Debugging with color
- Common bugs
- Performance
- HLSL and WGSL: the same in other words
- Checkpoint: debugging and languages