Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
ID3D12Resource我想知道在将它传递给a之前为a创建一个着色器资源视图ID3D12GraphicsCommandList并在帧完成后销毁它是否被认为是一种“好的”做法?
ID3D12Resource
ID3D12GraphicsCommandList
请注意,我只为所述资源创建了一次描述符视图。
这是微软工程师关于为什么 CreateShaderResourceView 返回 void 而不是错误代码的引述。
我们故意在高频 API 上没有返回码,因为每次调用都检查错误会浪费 CPU 时间,而这可能会在一帧中发生数千次。
他们通过设计假设它是一个可以在一个框架中多次调用的 api,您的问题的答案是,是的,您可以做到,这不是问题。
您只需要小心保护描述符堆中的视图生命周期,只要 gpu 在覆盖它之前可能需要它。