# D3D12UnorderedAccessView DirectX 12 无序访问视图的 D3D12 实现。 ## 头文件 ```cpp #include ``` ## 公共成员函数 ### 构造函数与析构函数 #### `D3D12UnorderedAccessView()` 默认构造函数。 #### `~D3D12UnorderedAccessView()` 析构函数,确保调用 `Shutdown()`。 ### 初始化 #### `void Initialize(ID3D12Device* device, ID3D12Resource* resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC* desc = nullptr)` 创建 UAV。 #### `void Shutdown()` 释放 UAV。 ### 属性 #### `D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const` 获取 CPU 描述符句柄。 ## 内部成员 | 成员 | 类型 | 描述 | |------|------|------| | `m_handle` | `D3D12_CPU_DESCRIPTOR_HANDLE` | CPU 描述符句柄 | | `m_resource` | `ID3D12Resource*` | 关联的资源 | ## 备注 - UAV 用于 compute shader 中的读写访问 - UAV 需要 barrier 来同步读写 - UAV 必须在 CBV_SRV_UAV 类型描述符堆中分配