次の方法で共有


D3DXCreateVolumeTextureFromResourceEx

文字列で指定されたリソースからボリューム テクスチャーを作成します。これは、D3DXCreateVolumeTextureFromResource の上位の関数です。

HRESULT 
D3DXCreateVolumeTextureFromResourceEx(
  LPDIRECT3DDEVICE9 pDevice,
  HMODULE hSrcModule,
  LPCTSTR pSrcResource,
  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
    IDirect3DDevice9 インターフェイスへのポインターです。テクスチャーに関連付けられるデバイスを示します。
  • hSrcModule
    リソースが存在するモジュールのハンドルです。現在のプロセスの作成に使用されたオペレーティング システムにイメージに関連付けられたモジュールの場合は、NULL です。
  • pSrcResource
    リソース名を指定する文字列へのポインターです。コンパイラーの設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。それ以外の場合、文字列データ型は LPCSTR に解決されます。「解説」を参照してください。
  • Width
    幅 (ピクセル単位) です。この値が 0 または D3DX_DEFAULT の場合、これらのサイズはファイルから取得されます。ドライバーがサポートする最大サイズ (幅、高さ、奥行き) は、D3DCAPS9 の MaxVolumeExtent で指定されます。
  • Height
    高さ (ピクセル単位) です。この値が 0 または D3DX_DEFAULT の場合、これらのサイズはファイルから取得されます。ドライバーがサポートする最大サイズ (幅、高さ、奥行き) は、D3DCAPS9 の MaxVolumeExtent で指定されます。
  • Depth
    奥行き (ピクセル単位) です。この値が 0 または D3DX_DEFAULT の場合、これらのサイズはファイルから取得されます。ドライバーがサポートする最大サイズ (幅、高さ、奥行き) は、D3DCAPS9 の MaxVolumeExtent で指定されます。
  • MipLevels
    ミップマップ レベル数の要求値です。この値が 0 または D3DX_DEFAULT の場合は、完全なミップマップのチェーンが作成されます。
  • Usage
    0、D3DUSAGE_RENDERTARGET、または D3DUSAGE_DYNAMIC。このフラグを D3DUSAGE_RENDERTARGET に指定すると、サーフェスをレンダー ターゲットとして使用します。その後でリソースを IDirect3DDevice9::SetRenderTarget メソッドの pNewRenderTarget パラメーターとして渡すことができます。D3DUSAGE_RENDERTARGET または D3DUSAGE_DYNAMIC を指定する場合は、Pool を D3DPOOL_DEFAULT に設定し、アプリケーションで IDirect3D9::CheckDeviceFormat を呼び出してデバイスがこの処理をサポートしていることを確認する必要があります。D3DUSAGE_DYNAMIC はサーフェスが動的に処理されることを示します。動的テクスチャーの使用の詳細については、「動的テクスチャーの使用」を参照してください。
  • Format
    D3DFORMAT 列挙型のメンバーです。テクスチャーに対して要求されたピクセル フォーマットを示します。返されるテクスチャーのフォーマットは、Format で指定されたものと異なる場合があります。アプリケーションでは、返されるテクスチャーのフォーマットをチェックする必要があります。D3DFMT_UNKNOWN の場合、ファイルからフォーマットが取得されます。D3DFMT_FROM_FILE の場合、フォーマットはファイル内にあるとおり正確に取得され、デバイスの能力に違反する場合は呼び出しに失敗します。
  • Pool
    D3DPOOL 列挙型のメンバーです。テクスチャーを配置するメモリー クラスを示します。
  • Filter
    イメージのフィルタリング方法を指定する、1 つ以上の D3DX_FILTER の組み合わせです。このパラメーターに D3DX_DEFAULT を指定すると、D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER を指定したのと同じ結果になります。
  • MipFilter
    イメージのフィルタリング方法を指定する、1 つ以上の D3DX_FILTER の組み合わせです。このパラメーターに D3DX_DEFAULT を指定すると、D3DX_FILTER_BOX を指定したのと同じ結果になります。
  • ColorKey
    透明な黒と置き換える D3DCOLOR 値、またはカラーキーを無効にする 0 を指定します。この値は、元のイメージのフォーマットに関係なく常に 32 ビットの ARGB カラーになります。最上位にはアルファ値を指定します。カラー キーを不透明にする場合には FF に設定します。したがって、不透明な黒の場合には、値が 0xFF000000 になります。
  • pSrcInfo
    ソース イメージ ファイル内のデータの記述を格納する D3DXIMAGE_INFO 構造体へのポインター、または NULL です。
  • pPalette
    PALETTEENTRY 構造体へのポインターです。カラー値を格納する 256 色パレットを示します。または NULL です。
  • ppVolumeTexture
    作成するテクスチャー オブジェクトを表す IDirect3DVolumeTexture9 インターフェイスへのポインターのアドレスです。

戻り値

成功すると、D3D_OK を返します。失敗した場合は、次の戻り値のいずれかを返します。

D3DERR_NOTAVAILABLED3DERR_OUTOFVIDEOMEMORYD3DERR_INVALIDCALLD3DXERR_INVALIDDATAE_OUTOFMEMORY

解説 

コンパイラ設定により、関数のバージョンも決定されます。Unicode が定義されている場合、関数呼び出しは D3DXCreateVolumeTextureFromResourceExW に解決されます。それ以外の場合は、ANSI 文字列が使用されるため、D3DXCreateVolumeTextureFromResourceExA に解決されます。

ロードするリソースは、アプリケーション定義のリソース (RT_RCDATA) である必要があります。

この関数は、.bmp、.dds、.dib、.hdr、.jpg、.pfm、.png、.ppm、および .tga ファイル形式をサポートします。「D3DXIMAGE_FILEFORMAT」を参照してください。

要件

ヘッダー: D3dx9tex.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

D3DXCreateVolumeTextureFromFile, D3DXCreateVolumeTextureFromFileEx, D3DXCreateVolumeTextureFromFileInMemory, D3DXCreateVolumeTextureFromFileInMemoryEx, D3DXCreateVolumeTextureFromResource, D3DX 9 のテクスチャー関数