ID3D12StateObjectProperties::SetPipelineStackSize 方法 (d3d12.h)
设置当前管道堆栈大小。
语法
void SetPipelineStackSize(
UINT64 PipelineStackSizeInBytes
);
参数
PipelineStackSizeInBytes
每个着色器线程的管道执行期间要使用的堆栈大小(以字节为单位)。 GPU 上一次可能有数千个线程在运行中。
如果值大于 0xffffffff (则 32 位 UINT 的最大值) 运行时将放弃调用,调试层将打印错误,因为这可能是使用无效参数调用的 GetShaderStackSize 返回的无效堆栈大小求和的结果,这些堆栈大小返回0xffffffff。 在这种情况下,之前设置的堆栈大小(默认值)将保留。
返回值
无
备注
此方法和 GetPipelineStackSize 不会重新进入。 这意味着,如果从单独的线程调用任一或两者,应用必须自行同步。
运行时会删除对光线跟踪管道以外的状态对象的调用,例如集合。
要求
目标平台 | Windows |
标头 | d3d12.h |
Library | D3D12.lib |
DLL | D3D12.dll |