1.2 KiB
1.2 KiB
BuiltinObjectIdOutlinePass::Shutdown
命名空间: XCEngine::Rendering::Passes
类型: method
头文件: XCEngine/Rendering/Passes/BuiltinObjectIdOutlinePass.h
签名
void Shutdown();
作用
释放这个 outline pass 已经创建的所有内部 GPU 资源和 shader handle。
当前实现行为
当前实现非常直接:
void BuiltinObjectIdOutlinePass::Shutdown() {
DestroyResources();
}
DestroyResources() 会按顺序销毁:
m_pipelineStatem_textureSetm_texturePoolm_constantSetm_constantPoolm_pipelineLayoutm_builtinObjectIdOutlineShader
每个 RHI 对象在释放前都会先调用自身的 Shutdown(),随后再 delete 并把成员清空。最后会通过 ResetState() 回到未初始化状态。
关键语义
- 对尚未初始化过的对象调用
Shutdown()是安全的。 - 资源释放后,后续仍可重新 Render 并按新的
RenderContext懒创建资源。 - 这个类当前不是完全 RAII 的:析构函数是默认析构,并不会自动代替
Shutdown()执行清理。