new WorkObject Construct function.
This commit is contained in:
parent
7c745df910
commit
052e2c673a
@ -73,10 +73,8 @@ private:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
TestApp(RenderFramework *rf):WorkObject()
|
TestApp(RenderFramework *rf):WorkObject(rf,rf->GetSwapchainRenderTarget())
|
||||||
{
|
{
|
||||||
Join(rf,rf->GetSwapchainRenderTarget());
|
|
||||||
|
|
||||||
if(!InitAutoMaterial())
|
if(!InitAutoMaterial())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -44,10 +44,10 @@ namespace hgl
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
WorkObject()=default;
|
WorkObject(graph::RenderFramework *,graph::IRenderTarget *);
|
||||||
virtual ~WorkObject()=default;
|
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;
|
virtual void Render(double delta_time,graph::RenderCmdBuffer *cmd)=0;
|
||||||
|
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
#include<hgl/graph/VKDebugUtils.h>
|
#include<hgl/graph/VKDebugUtils.h>
|
||||||
|
|
||||||
VK_NAMESPACE_BEGIN
|
VK_NAMESPACE_BEGIN
|
||||||
DebugUtils *CreateDebugUtils(VkDevice device)
|
DebugUtils *CreateDebugUtils(VkDevice device)
|
||||||
{
|
{
|
||||||
DebugUtilsFunction duf;
|
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(SetName, SetDebugUtilsObjectName );
|
||||||
DUF_GETFUNC(SetTag, SetDebugUtilsObjectTag );
|
DUF_GETFUNC(SetTag, SetDebugUtilsObjectTag );
|
||||||
|
@ -45,7 +45,7 @@ namespace hgl
|
|||||||
|
|
||||||
cur_work_object=wo;
|
cur_work_object=wo;
|
||||||
|
|
||||||
wo->Join(render_framework,render_framework->GetSwapchainRenderTarget());
|
wo->OnRenderTargetSwitch(render_framework,render_framework->GetSwapchainRenderTarget());
|
||||||
|
|
||||||
Window *win=render_framework->GetWindow();
|
Window *win=render_framework->GetWindow();
|
||||||
graph::GPUDevice *dev=render_framework->GetDevice();
|
graph::GPUDevice *dev=render_framework->GetDevice();
|
||||||
|
@ -12,7 +12,12 @@
|
|||||||
|
|
||||||
namespace hgl
|
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(!rf)return;
|
||||||
if(render_framework==rf)return;
|
if(render_framework==rf)return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user