Between all the vertex/pixel shaders, and the fixed-function terrain multitexturing threads, it would be easy to make an effect with all the fallback support. I have done that on my test project.
It goes....
Material
{
technique pixelshader 1.4
technique pixelshader 1.1-1.3
technique Fixed-function multitexture (3 stages/pass)
technique Fixed-function multitexture (2 stages/pass)
technique Fixed-function a colormap and a simple detailmap.
}
So... in my effect it should fallback as needed.
Now... the water thing. Thats easier said than done.
great water would be nice if we could get the environment reflection map to work correctly on entities other than spheres. It would also be nice to have a few more user-defined matrices at our disposal.
To have a great water effect with pixelshader 1.4, for example, it is going to be hard to replicate a that in lesser version or FFP. FFP BumpEnvMap can do a good job, but then there may be a fair amount of cards that don't support that effect.
I am working on fallback water stuff currently. Just trying to make the best with what is at hand.
I think when everything gets hammered out, the Wiki will have a very good supply of ready to use effects and whatnot. When it is all said and done, I will post my code with all the fallbacks and hopefully simple instructions for those who care less how the effects work but just care that they work.
Eric