Share via


IDirect3DDevice9::GetClipStatus メソッド (d3d9.h)

クリップの状態を取得します。

構文

HRESULT GetClipStatus(
  [out] D3DCLIPSTATUS9 *pClipStatus
);

パラメーター

[out] pClipStatus

種類: D3DCLIPSTATUS9*

クリップの状態を説明する D3DCLIPSTATUS9 構造体へのポインター。

戻り値

型: HRESULT

メソッドが成功した場合、戻り値はD3D_OK。

引数が無効な場合、D3DERR_INVALIDCALLが返されます。

注釈

頂点処理中にクリッピングが有効になっている場合 ( IDirect3DDevice9::P rocessVerticesIDirect3DDevice9::D rawPrimitive、またはその他の描画関数によって)、Direct3D はすべての頂点のクリップ コードを計算します。 クリップ コードは、D3DCS_* ビットの組み合わせです。 頂点が特定のクリッピング 平面の外側にある場合、対応するビットがクリッピング コードで設定されます。 Direct3D は、ClipUnion メンバーと ClipIntersection メンバーを持つ D3DCLIPSTATUS9を使用してクリップの状態を維持します。 ClipUnion は、すべての頂点クリップ コードのビットごとの "OR" であり、ClipIntersection はすべての頂点クリップ コードのビットごとの "AND" です。 ClipUnion の場合は初期値が 0、ClipIntersection の場合は0xFFFFFFFF。 D3DRS_CLIPPINGが FALSE に設定されている場合、ClipUnion と ClipIntersection は 0 に設定されます。 Direct3D は、描画呼び出し中にクリップの状態を更新します。 特定のオブジェクトのクリップ状態を計算するには、ClipUnion と ClipIntersection を初期値に設定し、描画を続行します。

クリップの状態は 、ソフトウェア エミュレーションがないため、IDirect3DDevice9::D rawRectPatchIDirect3DDevice9::D rawTriPatch によって更新されません。

クリップの状態は、ソフトウェア頂点の処理中に使用されます。 したがって、このメソッドは、純粋または非純粋なハードウェア処理デバイスではサポートされていません。 純粋デバイスの詳細については、「 D3DCREATE」を参照してください。

要件

要件
対象プラットフォーム Windows
ヘッダー d3d9.h (D3D9.h を含む)
Library D3D9.lib

こちらもご覧ください

IDirect3DDevice9

IDirect3DDevice9::SetClipStatus