D3DXCreatePRTCompBuffer 関数

圧縮されていない ID3DXPRTBuffer オブジェクトから圧縮済みの事前計算済み放射転送 (PRT) バッファーを作成します。 この関数は、頂点ごとのバッファーまたはボリューム バッファーと共に使用する必要があります。

構文

HRESULT D3DXCreatePRTCompBuffer(
  _In_    D3DXSHCOMPRESSQUALITYTYPE Quality,
  _In_    UINT                      NumClusters,
  _In_    UINT                      NumPCA,
  _In_    LPD3DXSHPRTSIMCB          pCB,
  _In_    LPVOID                    lpUserContext,
  _In_    LPD3DXPRTBUFFER           pBuffer,
  _Inout_ LPD3DXPRTCOMPBUFFER       *ppBuffer
);

パラメーター

品質 [入力]

型: D3DXSHCOMPRESSQUALITYTYPE

球面調和(SH)圧縮の質。 「D3DXSHCOMPRESSQUALITYTYPE」を参照してください。

NumClusters [in]

型: UINT

圧縮に使用するクラスターの数。

NumPCA [in]

型: UINT

各クラスターで使用する主成分分析 (PCA) 基底ベクトルの数。

pCB [in]

種類: LPD3DXSHPRTSIMCB

完了した PRT 圧縮計算の割合を計算するために使用される LPD3DXSHPRTSIMCB コールバック関数へのオプションのポインター。 圧縮ルーチンを実行し続けるためにS_OKを返すには、コールバック関数を実装する必要があります。 その他の値は圧縮を停止します。 NULL を指定できます。

lpUserContext [in]

種類: LPVOID

LPD3DXSHPRTSIMCB コールバック関数に渡されるユーザー定義値へのオプションのポインター。 通常、コールバック関数のコンテキスト情報を提供するデータ構造へのポインターを渡すためにアプリケーションによって使用されます。 NULL を指定できます。

pBuffer [in]

種類: LPD3DXPRTBUFFER

圧縮される非圧縮 ID3DXPRTBuffer オブジェクトへのポインターのアドレス。

ppBuffer [in, out]

種類: LPD3DXPRTCOMPBUFFER*

出力 ID3DXPRTCompBuffer オブジェクトへのポインターのアドレス。

戻り値

種類: HRESULT

関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、E_OUTOFMEMORY。

要件

要件
ヘッダー
D3DX9Mesh.h
ライブラリ
D3dx9.lib

関連項目

事前計算済みの放射転送関数

D3DXCreatePRTBuffer

D3DXCreatePRTBufferTex