1

ID3D12Resource我想知道在将它传递给a之前为a创建一个着色器资源视图ID3D12GraphicsCommandList并在帧完成后销毁它是否被认为是一种“好的”做法?

请注意,我只为所述资源创建了一次描述符视图。

4

1 回答 1

1

这是微软工程师关于为什么 CreateShaderResourceView 返回 void 而不是错误代码的引述。

我们故意在高频 API 上没有返回码,因为每次调用都检查错误会浪费 CPU 时间,而这可能会在一帧中发生数千次。

他们通过设计假设它是一个可以在一个框架中多次调用的 api,您的问题的答案是,是的,您可以做到,这不是问题。

您只需要小心保护描述符堆中的视图生命周期,只要 gpu 在覆盖它之前可能需要它。

于 2016-08-09T20:23:13.433 回答