1.3 KiB
1.3 KiB
RHISampler::GetNativeHandle
virtual void* GetNativeHandle() = 0;
获取底层图形 API 的原生句柄。该方法返回采样器在对应图形 API 中的原生对象指针或句柄,可用于调试或高级图形 API 互操作。
参数: 无
返回: 指向原生图形 API 采样器对象的 void 指针,具体类型取决于底层实现(D3D11: ID3D11SamplerState*,D3D12: D3D12_GPU_VIRTUAL_ADDRESS 或 ID3D12Resource*,Vulkan: VkSampler)
线程安全: ❌
复杂度: O(1)
示例:
#include "XCEngine/RHI/RHISampler.h"
class MySampler : public XCEngine::RHI::RHISampler {
public:
void Shutdown() override { }
void Bind(unsigned int unit) override { }
void Unbind(unsigned int unit) override { }
void* GetNativeHandle() override { return reinterpret_cast<void*>(m_nativeHandle); }
unsigned int GetID() override { return 0; }
private:
uint64_t m_nativeHandle = 0x12345678;
};
void Example() {
MySampler sampler;
void* handle = sampler.GetNativeHandle();
if (handle != nullptr) {
// 使用原生句柄进行调试或高级操作
}
}
相关文档
- RHISampler 总览 - 返回类总览
- RHISampler::GetID - 获取采样器 ID