January 2018
Intermediate to advanced
374 pages
9h 53m
English
At the beginning, there were two types of shader programs, vertex shaders and fragment shaders.
Vertex shaders were used to transform world coordinates into screen space coordinates, and fragment shaders performed lighting calculations/texture lookups just before writing a pixel to the screen.
Over time, more shader-type programs were introduced and shaders gained more and more low-level options, such as reading/writing raw values from buffers instead of color values from textures.