28 lines
664 B
Markdown
28 lines
664 B
Markdown
|
|
# D3D12Common::CreateUAVBarrier
|
|||
|
|
|
|||
|
|
```cpp
|
|||
|
|
inline D3D12_RESOURCE_BARRIER CreateUAVBarrier(ID3D12Resource* resource = nullptr)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
创建无序访问视图(UAV)屏障,用于同步 UAV 访问。
|
|||
|
|
|
|||
|
|
**参数:**
|
|||
|
|
- `resource` - UAV 资源指针,默认为 `nullptr`(全局 UAV 屏障)
|
|||
|
|
|
|||
|
|
**返回:** 配置好的 `D3D12_RESOURCE_BARRIER` 结构
|
|||
|
|
|
|||
|
|
**线程安全:** ✅(纯函数)
|
|||
|
|
|
|||
|
|
**示例:**
|
|||
|
|
|
|||
|
|
```cpp
|
|||
|
|
ID3D12Resource* uavResource = ...;
|
|||
|
|
D3D12_RESOURCE_BARRIER barrier = CreateUAVBarrier(uavResource);
|
|||
|
|
cmdList->ResourceBarrier(1, &barrier);
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 相关文档
|
|||
|
|
|
|||
|
|
- [D3D12Common 总览](common.md)
|
|||
|
|
- [CreateTransitionBarrier](create-transition-barrier.md)
|