Direct3D jest API bardzo niskopoziomowym – nawet napisanie programu wyświetlającego prostą animację wymaga sporo pracy. Jednak dzięki temu programista ma dużą kontrolę nad całym procesem renderowania, co z kolei pozwala mu efektywnie wykorzystywać możliwości karty graficznej. Jednym z ważniejszych elementów API jest mechanizm shaderów, o którym chciałbym opowiedzieć w tym artykule.