01Overview
In 1999 the GeForce 256’s fixed pipeline could only do preset transforms and lighting. In 2001 DirectX 8 introduced programmable vertex and pixel shaders, and OpenGL followed with extensions: developers wrote short programs that ran on thousands of GPU cores. Shader languages — HLSL, GLSL — were born.
Shaders let real-time graphics produce water, skin, volumetric fog and post-processing. In 2006 CUDA opened the same parallelism to general computation. Today shaders are not only a rendering tool but also used for physics simulation, particle systems and neural-network inference. The GPU programming model — many threads, SIMT, an explicit memory hierarchy — has become the general paradigm of parallel computing.
02History
- 2001
Programmable shaders
GPUs begin to accept general programs.
- 2006
CUDA
An operating system for general-purpose GPU computing.
- 2009
WebGL
3D in the browser.
- 2018
Real-time ray tracing in shaders
Ray tracing combined with rasterised shading.
03Core concepts
Vertex shader
Processes position, normal and texture coordinates per vertex.
Pixel shader
Computes colour per fragment and decides the final image.
SIMT
One instruction drives many threads — suited to data parallelism.
04Hands-on
Do it once — it beats reading it ten times
Write a fragment shader that produces a procedural checkerboard, then add one light and one shadow
05Self-check
Say it in your own words first, then open the answer. Whatever you cannot explain is what to review next.
Can you explain "Vertex shader"?
Processes position, normal and texture coordinates per vertex.
Can you explain "Pixel shader"?
Computes colour per fragment and decides the final image.
Can you explain "SIMT"?
One instruction drives many threads — suited to data parallelism.
What problem did it solve, and why was there nothing better at the time?
Go back to the history section: how was this done before, and what did it cost?
If you had to build it today, how would you break it down?
Use the hands-on task above: write a plan of at most three steps before you start.
06Key people
John Carmack
1970 –
Co-founder of id Software; a driving force behind real-time 3D.
David Kirk
1960 –
NVIDIA chief scientist; GPU computing architecture.
07Further reading
- GPU Gems
- OpenGL Programming Guide