IDirect3DDevice9::SetClipPlane メソッド (d3d9helper.h)
デバイスのユーザー定義クリッピング プレーンの係数を設定します。
構文
HRESULT SetClipPlane(
[in] DWORD Index,
[in] const float *pPlane
);
パラメーター
[in] Index
種類: DWORD
平面方程式係数を設定するクリッピング平面のインデックス。
[in] pPlane
型: const float*
設定するクリッピング平面係数を表す値の 4 要素配列のアドレスを、一般的な平面方程式の形式で指すポインター。 「解説」を参照してください。
戻り値
種類: HRESULT
メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値はD3DERR_INVALIDCALL。 このエラーは、Index の値がデバイスでサポートされている最大クリッピング プレーン インデックスを超えているか、pPlane の配列が 4 つの浮動小数点値を格納するのに十分な大きさではないことを示します。
注釈
このメソッドが設定する係数は、一般的な平面方程式の形式になります。 pPlane の配列内の値に、配列に表示される順序で A、B、C、D というラベルが付けられると、Ax + By + Cz + Dw = 0 になるように一般的な平面方程式に収まります。 Ax + By + Cz + Dw >= 0 の場合、同種座標 (x、y、z、w) を持つ点が平面の半空間に表示されます。 クリッピング 平面の背後に存在するポイントは、シーンからクリップされます。
固定関数パイプラインを使用すると、平面方程式はワールド空間内にあると見なされます。 プログラミング可能なパイプラインを使用すると、平面方程式はクリッピング空間 (出力頂点と同じ空間) 内にあると見なされます。
このメソッドでは、設定されているクリッピング平面の数式は有効になりません。 クリッピング プレーンを有効にするには、D3DRS_CLIPPLANEENABLEレンダリング状態に適用される DWORD 値に対応するビットを設定します。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | d3d9helper.h (D3D9.h を含む) |
Library | D3D9.lib |