33 lines
653 B
Markdown
33 lines
653 B
Markdown
|
|
# RHIFence::GetNativeHandle
|
|||
|
|
|
|||
|
|
```cpp
|
|||
|
|
virtual void* GetNativeHandle() = 0;
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
获取围栏的原生句柄,用于平台特定的图形 API 操作。返回的句柄类型取决于具体的 RHI 实现:
|
|||
|
|
- DirectX 12:`ID3D12Fence*`
|
|||
|
|
- Vulkan:`VkFence`
|
|||
|
|
|
|||
|
|
**参数:** 无
|
|||
|
|
|
|||
|
|
**返回:** 原生句柄指针(`void*`)
|
|||
|
|
|
|||
|
|
**线程安全**:❌
|
|||
|
|
|
|||
|
|
**复杂度**:O(1)
|
|||
|
|
|
|||
|
|
**示例**:
|
|||
|
|
|
|||
|
|
```cpp
|
|||
|
|
RHIFence* fence = device->CreateFence();
|
|||
|
|
|
|||
|
|
void* nativeHandle = fence->GetNativeHandle();
|
|||
|
|
|
|||
|
|
// 平台特定用法示例(DirectX 12)
|
|||
|
|
// ID3D12Fence* dxFence = static_cast<ID3D12Fence*>(nativeHandle);
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 相关文档
|
|||
|
|
|
|||
|
|
- [RHIFence](fence.md) - 返回类总览
|