IDirect3DDevice9::SetClipPlane 方法 (d3d9.h)

设置设备的用户定义的剪辑平面的系数。

语法

HRESULT SetClipPlane(
  [in] DWORD       Index,
  [in] const float *pPlane
);

参数

[in] Index

类型: DWORD

要为其设置平面公式系数的剪辑平面的索引。

[in] pPlane

类型: const float*

指向表示要设置的剪裁平面系数的四个元素数组的地址的指针,该数组采用常规平面公式的形式。 请参阅“备注”。

返回值

类型: HRESULT

如果方法成功,则返回值D3D_OK。 如果方法失败,则返回值D3DERR_INVALIDCALL。 此错误指示 Index 中的值超过了设备支持的最大剪辑平面索引,或者 pPlane 处的数组不够大,无法包含四个浮点值。

注解

此方法设置的系数采用常规平面公式的形式。 如果 pPlane 数组中的值按它们在数组中显示的顺序标记了 A、B、C 和 D,则它们将适合通用平面公式,以便 Ax + By + Cz + Dw = 0。 如果 Ax + By + Cz + Dw >= 0,则具有同质坐标的点 (x、y、z、w) 在平面的半空间中可见。 剪辑平面后面的点将从场景中剪裁。

使用固定函数管道时,假定平面公式位于世界空间中。 使用可编程管道时,假定平面公式位于剪辑空间中, (输出顶点) 相同的空间。

此方法不启用正在设置的剪裁平面公式。 若要启用剪辑平面,请设置应用于D3DRS_CLIPPLANEENABLE呈现状态的 DWORD 值中的相应位。

要求

   
目标平台 Windows
标头 d3d9.h (包括 D3D9.h)
Library D3D9.lib

另请参阅

IDirect3DDevice9

IDirect3DDevice9::GetClipPlane