The DX9 API allows apps to create FP16 MSAA surfaces, through CreateRenderTarget(), but they can't be directly used as textures. So while an app that doesn't support FP16 MSAA might create a FP16 texture, render to it, and then use it as a texture, an app that supports FP16 MSAA needs to create a FP16 texture and a FP16 MSAA render target, render into the MSAA buffer, copy the MSAA buffer into the texture, and then use the texture. Now this may sound like a big difference, but it's really not that big of a change. (When you think of how complicated the Oblivion engine is and how many hundred of surfaces they use, adding this shouldn't be hard.)