次の方法で共有


D3DXCreatePRTCompBuffer

圧縮されていない ID3DXPRTBuffer オブジェクトから圧縮された事前演算済み放射輝度伝播 (PRT) バッファーを作成します。この関数は、各頂点のバッファーまたはボリュームのバッファーと共に使用されます。

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

パラメータ

  • Quality
    球面調和 (SH) 圧縮の品質です。「D3DXSHCOMPRESSQUALITYTYPE」を参照してください。
  • NumClusters
    圧縮に使用されるクラスターの数
  • NumPCA
    各クラスターで使用される主成分分析 (PCA) 基底ベクトルの数です。
  • pCB
    完了した PRT 圧縮計算のパーセンテージを計測するために使用される LPD3DXSHPRTSIMCB コールバック関数へのポインターです (オプション)。このコールバック関数は、S_OK を返して圧縮ルーチンを実行し続けるように実装することが必要です。その他の値の場合、圧縮は停止します。NULL でもかまいません。
  • lpUserContext
    LPD3DXSHPRTSIMCB コールバック関数に渡されるユーザー定義値へのポインターです (オプション)。通常は、アプリケーションでコールバック関数にコンテキスト情報を提供するデータ構造へのポインターを渡すために使用されます。NULL でもかまいません。
  • pBuffer
    圧縮対象となる圧縮されていない ID3DXPRTBuffer オブジェクトへのポインターのアドレスです。
  • ppBuffer
    出力 ID3DXPRTCompBuffer オブジェクトへのポインターのアドレスです。

戻り値

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

要件

ヘッダー: D3DX9Mesh.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

D3DXCreatePRTBuffer, D3DXCreatePRTBufferTex