;;And please, lave Direct3D and OpenGL out of it  that may be where most people will encounter them, but that's not the only thing to shaders and most definetly not the origin of shaders. Feel free to write what you think is best, and have a look at some of the early versions, which are a lot better written than the current one, has more information and less specifics to OpenGL and (in particular) Direct3D.