Direct3D10 は 覚えなおし?
インストールできなくても、ヘッダーやヘルプを見ることが出来たので覗いてみました。 個人的に一番気になっていたことは、新しいテクノロジが云々ということよりも、まず インターフェース名 だったりします。(ぉ
IDirect3D7 -> IDirect3D8 -> IDirect3D9 と来て、次は "IDirect3D10"? バージョン番号が二桁になるの? それはなんかダサい気がするんだけど………?
// d3d10.h : Line 4950 近辺 MIDL_INTERFACE("9B7E4C0F-342C-4106-A19F-4F2704F689F0") ID3D10Device : public IUnknown
マジか。
いやいやまてまて、IDirect3D10Device
じゃなくて ID3D10Device
? Direct -> D とな? タイプが短くてよい感なのかもしれないと思ってみたけれど、Shiftキーを押したり離したりとメドそうだぞ。
…そういえば ID3D10 が無い。 IDirect3D9 に相当するものは何処に…? と思ったら
// d3d10misc.h : Line 107近辺 HRESULT WINAPI D3D10CreateDevice( IDXGIAdapter *pAdapter, D3D10_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, UINT SDKVersion, ID3D10Device **ppDevice);
ダイレクトに作成に変更かい。
つか、もともと WGF として用意されていた為か、ライブラリ自体が大きく変更されてますね。 インターフェース一気に増えましたし。 …これは、色々と 覚えなおし のような気がしないでもありません。テクスチャの読み込みも
// Load the Texture ID3D10Resource *pRes = NULL; if( FAILED(D3DX10CreateTextureFromFile( g_pd3dDevice, L"seafloor.dds", NULL, NULL, &pRes )) || !pRes ) return FALSE; pRes->QueryInterface( __uuidof( ID3D10Texture2D ), (LPVOID*)&g_pTexture ); pRes->Release();
と1クッション置かなければいけないぐらいですから……。*1
……。Dx9もまだ覚えること沢山なのにぃ〜
参考 -インターフェース一覧 ぶっこ抜き-
- ID3D10Asynchronous
- ID3D10BlendState
- ID3D10Blob
- ID3D10Buffer
- ID3D10Counter
- ID3D10Debug
- ID3D10DepthStencilState
- ID3D10DepthStencilView
- ID3D10Device
- ID3D10DeviceChild
- ID3D10Effect
- ID3D10EffectBlendVariable
- ID3D10EffectConstantBuffer
- ID3D10EffectDepthStencilVariable
- ID3D10EffectMatrixVariable
- ID3D10EffectPass
- ID3D10EffectPool
- ID3D10EffectRasterizerVariable
- ID3D10EffectSamplerVariable
- ID3D10EffectScalarVariable
- ID3D10EffectShaderResourceVariable
- ID3D10EffectShaderVariable
- ID3D10EffectStringVariable
- ID3D10EffectTechnique
- ID3D10EffectType
- ID3D10EffectVariable
- ID3D10EffectVectorVariable
- ID3D10GeometryShader
- ID3D10Include
- ID3D10InfoQueue
- ID3D10InputLayout
- ID3D10Multithread
- ID3D10PixelShader
- ID3D10Predicate
- ID3D10Query
- ID3D10RasterizerState
- ID3D10RenderTargetView
- ID3D10Resource
- ID3D10SamplerState
- ID3D10ShaderReflection
- ID3D10ShaderReflectionConstantBuffer
- ID3D10ShaderReflectionType
- ID3D10ShaderReflectionVariable
- ID3D10ShaderResourceView
- ID3D10StateBlock
- ID3D10StateMirror
- ID3D10Texture1D
- ID3D10Texture2D
- ID3D10Texture3D
- ID3D10TextureCube
- ID3D10VertexShader
- ID3D10View
- ID3DX10DataLoader
- ID3DX10DataProcessor
- ID3DX10Font
- ID3DX10Mesh
- ID3DX10MeshBuffer
- ID3DX10SkinInfo
- ID3DX10Sprite
- ID3DX10ThreadPump
- ID3DXMatrixStack
一気に増えたなぁー
*1:いやまぁ、この程度であれば対応できますが、他の部分がどうなっていることやら…