IDirect3DDevice9::CreateCubeTexture
キューブ テクスチャー リソースを作成します。
HRESULT
CreateCubeTexture(
UINT EdgeLength,
UINT Levels,
DWORD Usage,
D3DFORMAT Format,
D3DPOOL Pool,
IDirect3DCubeTexture9 ** ppCubeTexture,
HANDLE* pSharedHandle
);
パラメータ
- EdgeLength
キューブ テクスチャーのすべての最上位面のエッジのサイズ。各面の下のレベルのピクセルのサイズは、1 つ上のレベルのピクセルのサイズを (個別に) 1/2 にした値です。それぞれのサイズは、1 ピクセルのサイズに収められます。したがって、2 で除算した結果が 0 の場合、代わりに 1 が使用されます。 - Levels
キューブ テクスチャーの各面のレベルの数。0 を指定すると、Direct3D は、ミップマップ キューブ テクスチャーをサポートするハードウェアに対して、各面の 1x1 ピクセルまでのすべてのキューブ テクスチャー サブレベルを生成します。生成されるレベルの数を確認するには、IDirect3DBaseTexture9::GetLevelCount を呼び出します。 - Usage
使用法には 0 を指定できます。これは使用法の値がないことを示します。ただし、使用法が必要な場合は、1 つ以上の D3DUSAGE 定数の組み合わせを使用します。CreateCubeTexture の使用法パラメーターと IDirect3D9::CreateDevice の動作フラグを一致させることが適切です。詳細については、「解説」を参照してください。 - Format
D3DFORMAT 列挙型のメンバー。キューブ テクスチャーのすべての面の全レベルのフォーマットを示します。 - Pool
D3DPOOL 列挙型のメンバーです。キューブ テクスチャーを配置するメモリー クラスを示します。 - ppCubeTexture
作成されたキューブ テクスチャー リソースを示す IDirect3DCubeTexture9 インターフェイスへのポインターのアドレスです。 - pSharedHandle
予約済みです。このパラメーターを NULL に設定します。このパラメーターを Windows Vista の Direct3D 9 で使用して、リソースを共有することができます。
戻り値
メソッドが成功した場合は、D3D_OK を返します。失敗した場合は、次の戻り値のいずれかを返します。D3DERR_INVALIDCALL、D3DERR_OUTOFVIDEOMEMORY、E_OUTOFMEMORY。
解説
ミップマップ (テクスチャー) は、連続してダウンサンプリングされた (ミップマップ化された) サーフェスの集合です。一方、IDirect3DDevice9::CreateCubeTexture で作成されるキューブ テクスチャーは、サーフェスごとに 1 つずつ、全部で 6 つのミップマップの集合です。すべてのサーフェスは、キューブ テクスチャーに含まれていなければなりません。また、キューブ マップ サーフェスの 3 つのサイズ (x、y、および z) は、すべて同じピクセル サイズであることが必要です。
D3DUSAGE_AUTOGENMIPMAP を指定して IDirect3D9::CheckDeviceFormat を呼び出すことで、特定のフォーマットの ミップマップの自動生成 (Direct3D 9) のサポートを確認できます。IDirect3D9::CheckDeviceFormat で D3DOK_NOAUTOGEN が返された場合、IDirect3DDevice9::CreateCubeTexture は成功しますが、1 レベルのテクスチャーを返します。
要件
ヘッダー: D3D9.h 宣言
ライブラリ: D3D9.lib 内容
関連項目
D3DXCreateCubeTexture, D3DXCreateCubeTextureFromFile, D3DXCreateCubeTextureFromFileEx, D3DXCreateCubeTextureFromFileInMemory, D3DXCreateCubeTextureFromFileInMemoryEx, D3DXCreateCubeTextureFromResource, D3DXCreateCubeTextureFromResourceEx