I second Bob's suggestion on Shane's tutorials.
Regarding DX 09c and current operating systems such as Windows 7 and Windows 8.x, it works fine. It installs as a subset to your current DirectX install and coexists side-by-side. The reason why we need to do this is due to the current DirectX versions not having all of components of DX09. They have parts of the older specs and drivers, but are missing the important components needed by Trainz and many other programs for that matter. By installing the older DirectX 09.c, this adds the necessary components in and everything works.
Over the years, I have found that some versions of NVidia drivers worked better in Open/GL than they did in DirectX. Now it seems the current breed prefer DirectX over Open/GL as the performance is pretty sucky in Open/GL.
John