new WorkObject Construct function.

This commit is contained in:
hyzboy 2025-01-29 17:42:06 +08:00
parent 7c745df910
commit 052e2c673a
5 changed files with 12 additions and 9 deletions

View File

@ -73,10 +73,8 @@ private:
public:
TestApp(RenderFramework *rf):WorkObject()
TestApp(RenderFramework *rf):WorkObject(rf,rf->GetSwapchainRenderTarget())
{
Join(rf,rf->GetSwapchainRenderTarget());
if(!InitAutoMaterial())
return;

View File

@ -44,10 +44,10 @@ namespace hgl
public:
WorkObject()=default;
WorkObject(graph::RenderFramework *,graph::IRenderTarget *);
virtual ~WorkObject()=default;
virtual void Join(graph::RenderFramework *rf,graph::IRenderTarget *rt);
virtual void OnRenderTargetSwitch(graph::RenderFramework *rf,graph::IRenderTarget *rt);
virtual void Render(double delta_time,graph::RenderCmdBuffer *cmd)=0;

View File

@ -1,11 +1,11 @@
#include<hgl/graph/VKDebugUtils.h>
#include<hgl/graph/VKDebugUtils.h>
VK_NAMESPACE_BEGIN
DebugUtils *CreateDebugUtils(VkDevice device)
{
DebugUtilsFunction duf;
#define DUF_GETFUNC(n,N) duf.n=(PFN_vk##N##EXT)vkGetDeviceProcAddr(device,"vk"#N"EXT");if(!duf.##n)return(nullptr);
#define DUF_GETFUNC(n,N) duf.n=(PFN_vk##N##EXT)vkGetDeviceProcAddr(device,"vk"#N"EXT");if(!duf.n)return(nullptr);
DUF_GETFUNC(SetName, SetDebugUtilsObjectName );
DUF_GETFUNC(SetTag, SetDebugUtilsObjectTag );

View File

@ -45,7 +45,7 @@ namespace hgl
cur_work_object=wo;
wo->Join(render_framework,render_framework->GetSwapchainRenderTarget());
wo->OnRenderTargetSwitch(render_framework,render_framework->GetSwapchainRenderTarget());
Window *win=render_framework->GetWindow();
graph::GPUDevice *dev=render_framework->GetDevice();

View File

@ -12,7 +12,12 @@
namespace hgl
{
void WorkObject::Join(graph::RenderFramework *rf,graph::IRenderTarget *rt)
WorkObject::WorkObject(graph::RenderFramework *rf,graph::IRenderTarget *rt)
{
OnRenderTargetSwitch(rf,rt);
}
void WorkObject::OnRenderTargetSwitch(graph::RenderFramework *rf,graph::IRenderTarget *rt)
{
if(!rf)return;
if(render_framework==rf)return;