Share via


D3DXCreateCubeTextureFromResourceEx 関数

D3DXCreateCubeTextureFromResourceEx 関数

文字列で指定したリソースを元にしてキューブ テクスチャを作成する。これは、D3DXCreateCubeTextureFromResource の上位の関数である。

構文

HRESULT D3DXCreateCubeTextureFromResourceEx(      
    LPDIRECT3DDEVICE9 pDevice,
    LPCSTR hSrcModule,
    LPCTSTR pSrcResource,
    UINT Size,
    UINT MipLevels,
    DWORD Usage,
    D3DFORMAT Format,
    D3DPOOL Pool,
    DWORD Filter,
    DWORD MipFilter,
    D3DCOLOR ColorKey,
    D3DXIMAGE_INFO *pSrcInfo,
    PALETTEENTRY *pPalette,
    LPDIRECT3DCUBETEXTURE9 *ppCubeTexture
);

パラメータ

  • pDevice
    [in] IDirect3DDevice9 インターフェイスへのポインタ。キューブ テクスチャに関連付けられるデバイスを表す。
  • hSrcModule
    [in] リソースに置かれているモジュールへのハンドル。または、オペレーティング システムが現在のプロセスに使用するイメージに関連付けられているモジュールの場合は NULL。
  • pSrcResource
    [in] リソース名を指定する文字列へのポインタ。コンパイラの設定が Unicode を要求している場合、データ タイプ LPCTSTR は LPCWSTR になる。それ以外の場合は、この文字列のデータ タイプは LPCSTR になる。「注意」を参照すること。
  • Size
    [in] キューブ テクスチャの幅と高さ (ピクセル単位)。たとえば、キューブ テクスチャが 8x8 ピクセルのキューブの場合、このパラメータの値は 8 となる。この値が 0 または D3DX_DEFAULT の場合、ディメンジョンはファイルから取得される。
  • MipLevels
    [in] 要求されるミップ レベルの数。この値が 0 または D3DX_DEFAULT の場合は、完全なミップマップ チェーンが作成される。
  • Usage
    [in] 0、D3DUSAGE_RENDERTARGET、または D3DUSAGE_DYNAMIC。このフラグを D3DUSAGE_RENDERTARGET に設定すると、そのサーフェイスはレンダリング ターゲットとして使われることを示す。リソースは、IDirect3DDevice9::SetRenderTarget メソッドの pNewRenderTarget パラメータに渡すことができる。D3DUSAGE_RENDERTARGET を指定する場合、アプリケーションは IDirect3D9::CheckDeviceFormat を呼び出して、デバイスがこの処理をサポートしていることを確認する必要がある。D3DUSAGE_DYNAMIC は、サーフェイスを動的に処理する必要があることを示す。動的テクスチャの使い方の詳細については、「動的テクスチャの使い方」を参照すること。
  • Format
    [in] D3DFORMAT 列挙型のメンバ。キューブ テクスチャに対して要求されたピクセル フォーマットを記述する。返されるキューブ テクスチャのフォーマットは、Format で指定されたフォーマットと異なる場合がある。アプリケーションは、返されたキューブ テクスチャのフォーマットを確認する必要がある。Format の値が D3DFMT_UNKNOWN の場合、フォーマットはファイルから取得される。
  • Pool
    [in] D3DPOOL 列挙型のメンバ。キューブ テクスチャの配置先となるメモリ クラスを記述する。
  • Filter
    [in] イメージをフィルタリングする方法を制御する 1 つあるいは複数の D3DX_FILTER の組み合わせ。このパラメータに D3DX_DEFAULT を指定することは、D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER を指定することと等しい。
  • MipFilter
    [in] イメージをフィルタリングする方法を制御する 1 つあるいは複数の D3DX_FILTER の組み合わせ。このパラメータに D3DX_DEFAULT を指定することは、D3DX_FILTER_BOX を指定することと等しい。
  • ColorKey
    [in] 透明となる D3DCOLOR の値。カラーキーを無効にする場合は 0 を指定する。ソース イメージのフォーマットとは関係なく、これは常に 32 ビットの ARGB カラーである。アルファが有意であり、通常はカラー キーを不透明にする場合は FF を指定する。したがって、不透明な黒の場合、値は 0xFF000000 となる。
  • pSrcInfo
    [in, out] ソース イメージ ファイル内のデータの記述を格納する D3DXIMAGE_INFO 構造体へのポインタ、または NULL。
  • pPalette
    [out] 格納する 256 色パレットを表す PALETTEENTRY 構造体へのポインタ、または NULL。
  • ppCubeTexture
    [out] 作成されたキューブ テクスチャ オブジェクトを表す、IDirect3DCubeTexture9 インターフェイスへのポインタのアドレス。

戻り値

成功した場合は、D3D_OK を返す。

失敗した場合は、次のいずれかの値を返す。

D3DERR_INVALIDCALL メソッドの呼び出しが無効である。たとえば、メソッドのパラメータに無効な値が設定されている場合などである。
D3DERR_NOTAVAILABLE このデバイスは、照会されたテクニックをサポートしていない。
D3DERR_OUTOFVIDEOMEMORY Microsoft® Direct3D® が処理を行うのに十分なディスプレイ メモリがない。
D3DXERR_INVALIDDATA データが無効である。
E_OUTOFMEMORY Direct3D が呼び出しを完了するための十分なメモリを割り当てることができなかった。

注意

この関数は、Unicode 文字列および ANSI 文字列を両方サポートしている。

この関数がサポートしている ファイル フォーマットは、.bmp、.dds、.dib、.jpg、.png、および .tga である。

キューブ テクスチャは、サーフェイスの集合である点が他のサーフェイスと異なる。キューブ テクスチャを指定して IDirect3DDevice9::SetRenderTarget を呼び出すには、IDirect3DCubeTexture9::GetCubeMapSurface を使って特定の面を選択し、そのサーフェイスを IDirect3DDevice9::SetRenderTarget に渡す必要がある。

D3DXCreateCubeTextureFromResourceEx は、DirectDraw® サーフェイス (DDS) ファイル フォーマットを使う。DXTex ツールによって、他のファイル フォーマットからキューブ マップを生成し、それを DDS ファイル フォーマットで保存することができる。

関数の情報

ヘッダー d3dx9tex.h
インポート ライブラリ d3dx9.lib
最低限のオペレーティング システム Windows 98

参照

D3DXCreateCubeTextureFromResourceテクスチャの色変換