D3DXCreateVolumeTextureFromFileInMemoryEx 関数

D3DXCreateVolumeTextureFromFileInMemoryEx 関数

ファイルを基にしてボリューム テクスチャを作成する。これは、D3DXCreateVolumeTextureFromFileInMemory よりも高度な関数である。

構文

HRESULT D3DXCreateVolumeTextureFromFileInMemoryEx(      
    LPDIRECT3DDEVICE9 pDevice,
    LPCVOID pSrcData,
    UINT SrcDataSize,
    UINT Width,
    UINT Height,
    UINT Depth,
    UINT MipLevels,
    DWORD Usage,
    D3DFORMAT Format,
    D3DPOOL Pool,
    DWORD Filter,
    DWORD MipFilter,
    D3DCOLOR ColorKey,
    D3DXIMAGE_INFO *pSrcInfo,
    PALETTEENTRY *pPalette,
    LPDIRECT3DVOLUMETEXTURE9 *ppVolumeTexture
);

パラメータ

  • pDevice
    [in] IDirect3DDevice9 インターフェイスへのポインタ。テクスチャに関連付けられているデバイスを表す。
  • pSrcData
    [in] ボリューム テクスチャの作成に使うメモリ内のファイルへのポインタ。
  • SrcDataSize
    [in] メモリ内のファイルのサイズ (バイト単位)。
  • Width
    [in] 幅 (ピクセル単位)。この値が 0 または D3DX_DEFAULT の場合、ディメンジョンはファイルから取得される。
  • Height
    [in] 高さ (ピクセル単位)。この値が 0 または D3DX_DEFAULT の場合、ディメンジョンはファイルから取得される。
  • Depth
    [in] 深度 (単位ピクセル)。この値が 0 または D3DX_DEFAULT の場合、ディメンジョンはファイルから取得される。
  • MipLevels
    [in] 要求されるミップ レベルの数。この値が 0 または D3DX_DEFAULT の場合は、完全なミップマップ チェーンが作成される。
  • Usage
    [in] 0、D3DUSAGE_RENDERTARGET、または D3DUSAGE_DYNAMIC。このフラグを D3DUSAGE_RENDERTARGET に設定すると、そのサーフェイスはレンダリング ターゲットとして使われることを示す。リソースは、IDirect3DDevice9::SetRenderTarget メソッドの pNewRenderTarget パラメータに渡すことができる。D3DUSAGE_RENDERTARGET または D3DUSAGE_DYNAMIC を指定する場合、Pool を D3DPOOL_DEFAULT に設定し、アプリケーションは IDirect3D9::CheckDeviceFormat を呼び出して、デバイスがこの処理をサポートしていることを確認する必要がある。D3DUSAGE_DYNAMIC は、サーフェイスを動的に処理する必要があることを示す。動的テクスチャの使い方の詳細については、「動的テクスチャの使い方」を参照すること。
  • Format
    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。
  • ppVolumeTexture
    [out] 作成されたキューブ テクスチャ オブジェクトを表す、IDirect3DVolumeTexture9 インターフェイスへのポインタのアドレス。

戻り値

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

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

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

注意

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

関数の情報

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

参照

D3DXCreateVolumeTextureFromFileD3DXCreateVolumeTextureFromFileExD3DXCreateVolumeTextureFromFileInMemoryD3DXCreateVolumeTextureFromResourceD3DXCreateVolumeTextureFromResourceExテクスチャの色変換