diff --git a/inc/hgl/WorkObject.h b/inc/hgl/WorkObject.h index 741bccf7..0c404c62 100644 --- a/inc/hgl/WorkObject.h +++ b/inc/hgl/WorkObject.h @@ -83,10 +83,20 @@ namespace hgl WO_FUNC_FROM_RENDER_FRAMEWORK(CreatePipeline,graph::Pipeline *) WO_FUNC_FROM_RENDER_FRAMEWORK(CreateMaterialInstance,graph::MaterialInstance *) WO_FUNC_FROM_RENDER_FRAMEWORK(GetPrimitiveCreater,SharedPtr) - WO_FUNC_FROM_RENDER_FRAMEWORK(CreatePrimitive,graph::Primitive *) + //WO_FUNC_FROM_RENDER_FRAMEWORK(CreatePrimitive,graph::Primitive *) WO_FUNC_FROM_RENDER_FRAMEWORK(CreateMesh,graph::Mesh *) #undef WO_FUNC_FROM_RENDER_FRAMEWORK + + + graph::Primitive *CreatePrimitive(const AnsiString &name, + const uint32_t vertices_count, + const graph::VIL *vil, + const std::initializer_list &vad_list) + { + return render_framework?render_framework->CreatePrimitive(name,vertices_count,vil,vad_list):nullptr; + } + public: //Component 相关 template diff --git a/src/SceneGraph/RenderFramework.cpp b/src/SceneGraph/RenderFramework.cpp index 06c1e2ee..d090763a 100644 --- a/src/SceneGraph/RenderFramework.cpp +++ b/src/SceneGraph/RenderFramework.cpp @@ -196,10 +196,10 @@ void RenderFramework::Tick() } } -graph::Primitive *RenderFramework::CreatePrimitive(const AnsiString &name, - const uint32_t vertices_count, - const graph::VIL *vil, - const std::initializer_list &vad_list) +graph::Primitive *RenderFramework::CreatePrimitive( const AnsiString &name, + const uint32_t vertices_count, + const graph::VIL *vil, + const std::initializer_list &vad_list) { auto *pc=new graph::PrimitiveCreater(GetDevice(),vil);