# D3D12Buffer **命名空间**: `XCEngine::RHI` **类型**: `class` **头文件**: `XCEngine/RHI/D3D12/D3D12Buffer.h` **描述**: DirectX 12 缓冲区资源封装类,支持顶点、索引、常量等类型的缓冲区 ## 概述 D3D12Buffer 是 DirectX 12 缓冲区资源的封装类,继承自 RHIBuffer 接口。支持多种缓冲区类型,包括顶点缓冲区、索引缓冲区、常量缓冲区等。提供了内存映射接口以支持 CPU 端数据更新。 ## 公共方法 | 方法 | 描述 | |------|------| | `D3D12Buffer()` | 默认构造函数 | | `~D3D12Buffer()` | 虚析构函数 | | [Initialize](d3d12-buffer-initialize.md) | 初始化缓冲区 | | [InitializeFromExisting](d3d12-buffer-initialize-from-existing.md) | 从现有资源初始化 | | [InitializeWithData](d3d12-buffer-initialize-with-data.md) | 初始化并上传数据 | | [Shutdown](d3d12-buffer-shutdown.md) | 关闭缓冲区 | | [GetResource](d3d12-buffer-get-resource.md) | 获取底层资源指针 | | [GetDesc](d3d12-buffer-get-desc.md) | 获取资源描述 | | [GetGPUVirtualAddress](d3d12-buffer-get-gpu-virtual-address.md) | 获取 GPU 虚拟地址 | | [UpdateData](d3d12-buffer-update-data.md) | 更新数据 | | [GetState](d3d12-buffer-get-state.md) | 获取资源状态 | | [SetState](d3d12-buffer-set-state.md) | 设置资源状态 | | [Map](d3d12-buffer-map.md) | 映射内存 | | [Unmap](d3d12-buffer-unmap.md) | 取消映射 | | [SetData](d3d12-buffer-set-data.md) | 设置数据 | ## 相关文档 - [D3D12 模块概览](d3d12.md) - D3D12 模块总览 - [RHIBuffer](../rhi-buffer.md) - RHI 缓冲区基类