Microsoft DirectX 8.0 (Visual Basic)

Direct3DDevice8.CreateCubeTexture

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

object.CreateCubeTexture( _ 
    EdgeLength As Long, _ 
    Levels As Long, _ 
    Usage As Long, _ 
    Format As CONST_D3DFORMAT, _ 
    Pool As CONST_D3DPOOL) As Direct3DCubeTexture8

指定項目

object
Direct3DDevice8 オブジェクトを表すオブジェクト式。
EdgeLength
キューブ テクスチャのすべての最上位サーフェスのエッジのサイズ。各サーフェスのミップマップ レベルが下のピクセル ディメンジョンは 1 つ上のレベルのピクセル ディメンジョンを (単純に) 半分にした値である。それぞれの大きさは、1 ピクセルのサイズに収められる。2 で除算した結果が 0 の場合、代わりに 1 が使用される。
Levels
キューブ テクスチャの各サーフェスのレベルの数。0 (ゼロ) を指定すると、Microsoft® Direct3D® は、ミップマップ化キューブ テクスチャをサポートするハードウェアに対して、各面の 1 × 1 ピクセルまでのすべてのキューブ テクスチャ サブレベルを生成する。その他の値を指定した場合は、1 レベルを生成する。Direct3DBaseTexture8.GetLevelCount を呼び出して、生成されたレベル数を確認する。
Usage
このリソースの使用方法を記述する CONST_D3DUSAGEFLAGS 列挙で定義される次の 1 つ以上のフラグの組み合わせ。
D3DUSAGE_DEPTHSTENCIL
サーフェスが深度ステンシル サーフェスとして使用されることを示す。リソースは、Direct3DDevice8.SetRenderTarget メソッドの NewDepthStencil パラメータに渡すことができる。「注意」を参照すること。
D3DUSAGE_RENDERTARGET
サーフェスがレンダリング ターゲットとして使用されることを示す。リソースは、SetRenderTarget メソッドの NewRenderTarget パラメータに渡すことができる。「注意」を参照すること。

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

Format
CONST_D3DFORMAT 列挙のメンバ。キューブ テクスチャの全サーフェスの全レベルのフォーマットを示す。
Pool
CONST_D3DPOOL 列挙のメンバ。キューブ テクスチャを格納するメモリ クラスを示す。

戻り値

作成されたキューブ テクスチャ リソースを表す Direct3DCubeTexture8 オブジェクト。

エラー コード

失敗した場合はエラーが発生し、Err.Number に次のいずれかの値が設定される。

D3DERR_INVALIDCALL
D3DERR_OUTOFVIDEOMEMORY
E_OUTOFMEMORY

エラー トラッピングの詳細については、Microsoft® Visual Basic® の「エラー処理」を参照すること。

注意

キューブ テクスチャは、サーフェスの集合であるポイントがほかのサーフェスと異なる。キューブ テクスチャを指定して SetRenderTarget を呼び出すには、Direct3DCubeTexture8.GetCubeMapSurface を使って個別のサーフェスを選択してから、それを SetRenderTarget に渡さなければならない。

テクスチャ (ミップマップ) は、連続してダウンサンプリングされた (ミップマップ化された) サーフェスの集合である。一方、CreateCubeTexture で作成されるキューブ テクスチャは、サーフェスごとに 1 つずつ、全部で 6 つのテクスチャ (ミップマップ) の集合である。すべてのサーフェスは、キューブ テクスチャに存在していなければならない。また、キューブ マップ サーフェスは、3 つのディメンジョン (x、y、および z) がすべて同じピクセル サイズでなければならない。

DirectX 8.0 では、リソースの使用が強制される。特定の処理においてリソースを使おうとするアプリケーションは、リソースの作成時に目的の処理を指定する必要がある。