ID3D12GraphicsCommandList1::OMSetDepthBounds 方法 (d3d12.h)

使用此方法可以动态更改深度边界。

语法

void OMSetDepthBounds(
  [in] FLOAT Min,
  [in] FLOAT Max
);

参数

[in] Min

类型: FLOAT

SALIn

指定最小深度边界。 默认值为 0。 NaN 值以无提示方式转换为 0。

[in] Max

类型: FLOAT

SALIn

指定最大深度边界。 默认值为 1。 NaN 值以无提示方式转换为 0。

返回值

备注

如果当前存储的深度值超出 Min 和 Max(含指定的范围,则深度边界测试允许放弃像素和样本。 如果像素或样本的当前存储深度值在此范围内,则深度边界测试通过并呈现;否则,深度边界测试失败,像素或样本将被丢弃。 请注意,深度边界测试考虑当前存储的深度值,而不是执行像素着色器生成的深度值。

若要使用深度边界测试,应用程序必须使用新的 CreatePipelineState 方法在 PSO 上启用深度边界测试,然后使用此命令列表方法动态更改深度边界。

OMSetDepthBounds 是一项可选功能。 使用 CheckFeatureSupport 方法可确定用户模式驱动程序是否支持此功能。 通过 D3D12_FEATURE_D3D12_OPTIONS2 结构报告对此功能的支持。

要求

要求
目标平台 Windows
标头 d3d12.h
Library D3d12.lib
DLL D3d12.dll

另请参阅

ID3D12GraphicsCommandList1