I'll continue writing the FAQ for DX9/C++, primarily because thats what I'm familiar with and it still seems to be the preferred method of programming DirectX.
For everyone else I'm going to include a "look up" reference at the end of each FAQ entry. For any particular functions/enumerations/etc... mentioned in the main body they'll be translated into the equivalent.
Example from a recently completed entry on alpha blending:
Language and API Variations:
Managed Direct3D 1.1:
- SetRenderState() becomes Microsoft.DirectX.Direct3D.Device.SetRenderState()
- See the Microsoft.DirectX.Direct3D.Blend page for D3DBLEND equivalents.
- SetTextureStageState() becomes Microsoft.DirectX.Direct3D.Device.SetTextureStageState()
- See Microsoft.DirectX.Direct3D.TextureStageStates and Microsoft.DirectX.Direct3D.TextureArgument pages for equivalent parameters and enumerations.
- D3DXCreateTextureFromFileEx() becomes Microsoft.DirectX.Direct3D.TextureLoader.FromFile().
- D3DFORMAT becomes Microsoft.DirectX.Direct3D.Format
C/C++ Direct3D 10:
- An ID3D10BlendState should be created via ID3D10Device::CreateBlendState() based on the D3D10_BLEND_DESC structure and set via an ID3D10Device::OMSetBlendState() call.
- SetTextureStageState() has no direct Direct3D 10 equivalent due to there being no fixed-function pipeline
- D3DXCreateTextureFromFileEx() becomes D3DX10CreateResourceFromFile() (VERIFY!)
- D3DFORMAT becomes DXGI_FORMAT
Does that seem reasonable/understandable to you? Please say "yes" [smile]