Add CreateSamplerDesc helper method

This commit is contained in:
2026-03-17 01:19:21 +08:00
parent 64bd8c5074
commit 3d6787b6a4
2 changed files with 11 additions and 0 deletions

View File

@@ -38,6 +38,7 @@ public:
static D3D12_ROOT_PARAMETER CreateDescriptorTable(uint32_t numRanges, const D3D12_DESCRIPTOR_RANGE* ranges, ShaderVisibility visibility = ShaderVisibility::All); static D3D12_ROOT_PARAMETER CreateDescriptorTable(uint32_t numRanges, const D3D12_DESCRIPTOR_RANGE* ranges, ShaderVisibility visibility = ShaderVisibility::All);
static D3D12_STATIC_SAMPLER_DESC CreateStaticSampler(uint32_t shaderRegister, const D3D12_SAMPLER_DESC& desc, ShaderVisibility visibility = ShaderVisibility::Pixel); static D3D12_STATIC_SAMPLER_DESC CreateStaticSampler(uint32_t shaderRegister, const D3D12_SAMPLER_DESC& desc, ShaderVisibility visibility = ShaderVisibility::Pixel);
static D3D12_SAMPLER_DESC CreateSamplerDesc(FilterMode filter, TextureAddressMode address, float maxLOD = D3D12_FLOAT32_MAX);
private: private:
ComPtr<ID3D12RootSignature> m_rootSignature; ComPtr<ID3D12RootSignature> m_rootSignature;

View File

@@ -118,5 +118,15 @@ D3D12_STATIC_SAMPLER_DESC D3D12RootSignature::CreateStaticSampler(uint32_t shade
return samplerDesc; return samplerDesc;
} }
D3D12_SAMPLER_DESC D3D12RootSignature::CreateSamplerDesc(FilterMode filter, TextureAddressMode address, float maxLOD) {
D3D12_SAMPLER_DESC desc = {};
desc.Filter = ToD3D12(filter);
desc.AddressU = ToD3D12(address);
desc.AddressV = ToD3D12(address);
desc.AddressW = ToD3D12(address);
desc.MaxLOD = maxLOD;
return desc;
}
} // namespace RHI } // namespace RHI
} // namespace XCEngine } // namespace XCEngine