1. D3DXAssembleShaderFromFile - assembles any assembler coded shader
2. D3DXCompileShaderFromFile - compiles any (pixel or vertex) HLSL shaders to code.
3. -> (1), (2)
4. ".fx" files "effect" files encapsulate render states, pixel / vertex shaders in simgle "effect". Which can be: multipass; different render techniques for different hardware (for example one for GeForce3 with ps.1.1. and another for HW with PS.3.0. support)