Files
XCEngine/docs/api/rhi/d3d12/root-signature/root-signature.md

1.9 KiB

D3D12RootSignature

命名空间: XCEngine::RHI

类型: class (D3D12-specific, does not inherit from RHI)

头文件: XCEngine/RHI/D3D12/D3D12RootSignature.h

描述: DirectX 12 根签名的 D3D12 实现,提供根签名序列化、参数创建等功能。

公共方法

方法 描述
D3D12RootSignature 构造函数
~D3D12RootSignature 析构函数
Initialize 初始化根签名
Shutdown 关闭根签名
GetRootSignature 获取 D3D12 根签名
GetNativeHandle 获取原生句柄
GetParameterCount 获取参数数量
CreateDesc 创建根签名描述符(静态)
CreateCBV 创建常量缓冲区视图(静态)
CreateSRV 创建着色器资源视图(静态)
CreateUAV 创建无序访问视图(静态)
Create32BitConstants 创建 32 位常量(静态)
CreateDescriptorTable 创建描述符表(静态)
CreateStaticSampler 创建静态采样器(静态)
CreateSamplerDesc 创建采样器描述符(静态)
CreateDescriptorRange 创建描述符范围(静态)

使用示例

D3D12RootSignature rootSig;

D3D12_ROOT_PARAMETER params[2] = {};
params[0] = D3D12RootSignature::CreateCBV(0);
params[1] = D3D12RootSignature::CreateSRV(0);

D3D12_ROOT_SIGNATURE_DESC desc = D3D12RootSignature::CreateDesc(params, 2);

if (rootSig.Initialize(device, desc)) {
    ID3D12RootSignature* rs = rootSig.GetRootSignature();
    rootSig.Shutdown();
}

相关文档