Повоизлся с шейдерами под DirectX. Нормально, не оч. сложно оказалось. По факту в шейдере операция которую нужно выполнить на GPU а не на CPU. Токо пока не ясно как с их помощью можно управлять освещением и рябью на воде т.к. шейдер вроде применяется ко ВСЕМ вершинам. Ну это какнить потом
Вот тут оч просто все объяснено:
www.intuit.ru/department/graphics/direct3dhlsl/...