Microsoft DirectX 8.0 (C++)

IDirect3DDevice8::CreateTexture

テクスチャ リソースを作成する。

HRESULT CreateTexture(
  UINT Width,
  UINT Height,
  UINT  Levels,
  DWORD Usage,
  D3DFORMAT Format,
  D3DPOOL Pool,
  IDirect3DTexture8** ppTexture
);

パラメータ

Width
[in] 最上位のテクスチャの幅 (ピクセル単位)。ミップマップ レベルが下のピクセル ディメンジョンは 1 つ上のレベルのピクセル ディメンジョンを (単純に) 1/2 した値である。それぞれの大きさは、1 ピクセルのサイズに収められる。したがって、2 で除算した結果が 0 の場合、代わりに 1 が使用される。
Height
[in] 最上位のテクスチャの高さ (ピクセル単位)。ミップマップ レベルが下のピクセル ディメンジョンは 1 つ上のレベルのピクセル ディメンジョンを (単純に) 1/2 した値である。それぞれの大きさは、1 ピクセルのサイズに収められる。したがって、2 で除算した結果が 0 の場合、代わりに 1 が使用される。
Levels
[in] テクスチャにあるレベルの数。0 を指定すると、MIP マップ化テクスチャをサポートするハードウェアに対し、Microsoft® Direct3D® は、1 × 1 ピクセルまでのすべてのテクスチャ サブレベルを生成する。その他の値を指定した場合は、1 レベルを生成する。IDirect3DBaseTexture8::GetLevelCount を呼び出して、生成されたレベル数を確認する。
Usage
[in] このリソースの使用方法を記述する、次の 1 つ以上のフラグの組み合わせ。
D3DUSAGE_DEPTHSTENCIL
サーフェスが深度ステンシル サーフェスとして使用されることを示す。リソースは、IDirect3DDevice8::SetRenderTarget メソッドの pNewZStencil パラメータに渡すことができる。
D3DUSAGE_RENDERTARGET
サーフェスがレンダリング ターゲットとして使用されることを示す。リソースは、SetRenderTargetpRenderTarget パラメータに渡すことができる。

D3DUSAGE_RENDERTARGET または D3DUSAGE_DEPTHSTENCIL のいずれかが指定された場合は、アプリケーションで IDirect3D8::CheckDeviceFormat を呼び出して、デバイスがこれらの処理をサポートするかどうかを確認しなければならない。

Format
[in] D3DFORMAT 列挙型のメンバ。テクスチャの全レベルのフォーマットを示す。
Pool
[in] D3DPOOL 列挙型のメンバ。テクスチャを格納するメモリ クラスを示す。
ppTexture
[out, retval] 作成されたテクスチャ リソースを表す IDirect3DTexture8 インターフェイスへのポインタのアドレス。

戻り値

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

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

D3DERR_INVALIDCALL
D3DERR_OUTOFVIDEOMEMORY
E_OUTOFMEMORY

注意

テクスチャを指定して IDirect3DDevice8::SetRenderTarget を呼び出すには、IDirect3DTexture8::GetSurfaceLevel を使ってレベルを選択してから、そのサーフェスを SetRenderTarget に渡さなければならない。

動作環境

  ヘッダー : d3d8.h で宣言。
  インポート ライブラリ : D3d8.lib を使用。