added lot of debug output based VkDebugUtils
This commit is contained in:
parent
8ba171efda
commit
4ee6962d04
@ -1 +1 @@
|
|||||||
Subproject commit a2f5b2d3c65bf8136e3bd53b05164c4f72de23ac
|
Subproject commit dd6ffdebeceea0dfc03ee58314bedfae2fc17899
|
@ -202,7 +202,7 @@ public:
|
|||||||
cmd_buf=hgl_zero_new<RenderCmdBuffer *>(swap_chain_count);
|
cmd_buf=hgl_zero_new<RenderCmdBuffer *>(swap_chain_count);
|
||||||
|
|
||||||
for(int32_t i=0;i<swap_chain_count;i++)
|
for(int32_t i=0;i<swap_chain_count;i++)
|
||||||
cmd_buf[i]=device->CreateRenderCommandBuffer();
|
cmd_buf[i]=device->CreateRenderCommandBuffer(device->GetPhysicalDevice()->GetDeviceName()+AnsiString(":RenderCmdBuffer_")+AnsiString::numberOf(i));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,6 +36,7 @@ public:
|
|||||||
|
|
||||||
VkBuffer GetBuffer ()const{return buf.buffer;}
|
VkBuffer GetBuffer ()const{return buf.buffer;}
|
||||||
DeviceMemory * GetMemory ()const{return buf.memory;}
|
DeviceMemory * GetMemory ()const{return buf.memory;}
|
||||||
|
VkDeviceMemory GetVkMemory ()const{return buf.memory->operator VkDeviceMemory();}
|
||||||
const VkDescriptorBufferInfo * GetBufferInfo ()const{return &buf.info;}
|
const VkDescriptorBufferInfo * GetBufferInfo ()const{return &buf.info;}
|
||||||
|
|
||||||
void * Map () {return buf.memory->Map();}
|
void * Map () {return buf.memory->Map();}
|
||||||
|
@ -47,7 +47,7 @@ private:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
VkCommandBuffer CreateCommandBuffer();
|
VkCommandBuffer CreateCommandBuffer(const AnsiString &);
|
||||||
|
|
||||||
bool CreateSwapchainFBO(Swapchain *);
|
bool CreateSwapchainFBO(Swapchain *);
|
||||||
|
|
||||||
@ -212,8 +212,8 @@ public: //shader & material
|
|||||||
|
|
||||||
public: //Command Buffer 相关
|
public: //Command Buffer 相关
|
||||||
|
|
||||||
RenderCmdBuffer * CreateRenderCommandBuffer();
|
RenderCmdBuffer * CreateRenderCommandBuffer(const AnsiString &);
|
||||||
TextureCmdBuffer *CreateTextureCommandBuffer();
|
TextureCmdBuffer *CreateTextureCommandBuffer(const AnsiString &);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ public:
|
|||||||
|
|
||||||
TextureData * GetData () {return data;}
|
TextureData * GetData () {return data;}
|
||||||
|
|
||||||
VkDeviceMemory GetDeviceMemory () {return data?data->memory->operator VkDeviceMemory():VK_NULL_HANDLE;}
|
VkDeviceMemory GetDeviceMemory () {return data?(data->memory?data->memory->operator VkDeviceMemory():VK_NULL_HANDLE):VK_NULL_HANDLE;}
|
||||||
VkImage GetImage () {return data?data->image:VK_NULL_HANDLE;}
|
VkImage GetImage () {return data?data->image:VK_NULL_HANDLE;}
|
||||||
VkImageLayout GetImageLayout () {return data?data->image_layout:VK_IMAGE_LAYOUT_UNDEFINED;}
|
VkImageLayout GetImageLayout () {return data?data->image_layout:VK_IMAGE_LAYOUT_UNDEFINED;}
|
||||||
VkImageView GetVulkanImageView () {return data?data->image_view->GetImageView():VK_NULL_HANDLE;}
|
VkImageView GetVulkanImageView () {return data?data->image_view->GetImageView():VK_NULL_HANDLE;}
|
||||||
|
@ -70,22 +70,32 @@ void RenderAssignBuffer::Alloc(const uint nc,const uint mc)
|
|||||||
|
|
||||||
if(da->debug_maker)
|
if(da->debug_maker)
|
||||||
{
|
{
|
||||||
da->debug_maker->SetBuffer(ubo_l2w->GetBuffer(),"[debug maker] UBO:LocalToWorld");
|
da->debug_maker->SetBuffer(ubo_l2w->GetBuffer(),"[debug maker] UBO:Buffer:LocalToWorld");
|
||||||
|
da->debug_maker->SetDeviceMemory(ubo_l2w->GetVkMemory(),"[debug maker] UBO:Memory:LocalToWorld");
|
||||||
|
|
||||||
if(ubo_mi)
|
if(ubo_mi)
|
||||||
da->debug_maker->SetBuffer(ubo_mi->GetBuffer(),"[debug maker] UBO:MaterialInstance");
|
{
|
||||||
|
da->debug_maker->SetBuffer(ubo_mi->GetBuffer(),"[debug maker] UBO:Buffer:MaterialInstance");
|
||||||
|
da->debug_maker->SetDeviceMemory(ubo_mi->GetVkMemory(),"[debug maker] UBO:Memory:MaterialInstance");
|
||||||
|
}
|
||||||
|
|
||||||
da->debug_maker->SetBuffer(vbo_assigns->GetBuffer(),"[debug maker] VBO:Assign");
|
da->debug_maker->SetBuffer(vbo_assigns->GetBuffer(),"[debug maker] VBO:Buffer:Assign");
|
||||||
|
da->debug_maker->SetDeviceMemory(vbo_assigns->GetVkMemory(),"[debug maker] VBO:Memory:Assign");
|
||||||
}
|
}
|
||||||
|
|
||||||
if(da->debug_utils)
|
if(da->debug_utils)
|
||||||
{
|
{
|
||||||
da->debug_utils->SetBuffer(ubo_l2w->GetBuffer(),"[debug utils] UBO:LocalToWorld");
|
da->debug_utils->SetBuffer(ubo_l2w->GetBuffer(),"[debug utils] UBO:Buffer:LocalToWorld");
|
||||||
|
da->debug_utils->SetDeviceMemory(ubo_l2w->GetVkMemory(),"[debug utils] UBO:Memory:LocalToWorld");
|
||||||
|
|
||||||
if(ubo_mi)
|
if(ubo_mi)
|
||||||
da->debug_utils->SetBuffer(ubo_mi->GetBuffer(),"[debug utils] UBO:MaterialInstance");
|
{
|
||||||
|
da->debug_utils->SetBuffer(ubo_mi->GetBuffer(),"[debug utils] UBO:Buffer:MaterialInstance");
|
||||||
|
da->debug_utils->SetDeviceMemory(ubo_mi->GetVkMemory(),"[debug utils] UBO:Memory:MaterialInstance");
|
||||||
|
}
|
||||||
|
|
||||||
da->debug_utils->SetBuffer(vbo_assigns->GetBuffer(),"[debug utils] VBO:Assign");
|
da->debug_utils->SetBuffer(vbo_assigns->GetBuffer(),"[debug utils] VBO:Buffer:Assign");
|
||||||
|
da->debug_utils->SetDeviceMemory(vbo_assigns->GetVkMemory(),"[debug utils] VBO:Memory:Assign");
|
||||||
}
|
}
|
||||||
#endif//_DEBUG
|
#endif//_DEBUG
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ GPUDevice::GPUDevice(GPUDeviceAttribute *da)
|
|||||||
sc_rt=nullptr;
|
sc_rt=nullptr;
|
||||||
Resize(attr->surface_caps.currentExtent);
|
Resize(attr->surface_caps.currentExtent);
|
||||||
|
|
||||||
texture_cmd_buf=CreateTextureCommandBuffer();
|
texture_cmd_buf=CreateTextureCommandBuffer(attr->physical_device->GetDeviceName()+AnsiString(":TexCmdBuffer"));
|
||||||
texture_queue=CreateQueue();
|
texture_queue=CreateQueue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -50,7 +50,7 @@ bool GPUDevice::Resize(const VkExtent2D &extent)
|
|||||||
return(sc_rt);
|
return(sc_rt);
|
||||||
}
|
}
|
||||||
|
|
||||||
VkCommandBuffer GPUDevice::CreateCommandBuffer()
|
VkCommandBuffer GPUDevice::CreateCommandBuffer(const AnsiString &name)
|
||||||
{
|
{
|
||||||
if(!attr->cmd_pool)
|
if(!attr->cmd_pool)
|
||||||
return(VK_NULL_HANDLE);
|
return(VK_NULL_HANDLE);
|
||||||
@ -68,21 +68,31 @@ VkCommandBuffer GPUDevice::CreateCommandBuffer()
|
|||||||
if(res!=VK_SUCCESS)
|
if(res!=VK_SUCCESS)
|
||||||
return(VK_NULL_HANDLE);
|
return(VK_NULL_HANDLE);
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
|
||||||
|
if(attr->debug_maker)
|
||||||
|
attr->debug_maker->SetCommandBuffer(cmd_buf,"[debug maker] "+name);
|
||||||
|
|
||||||
|
if(attr->debug_utils)
|
||||||
|
attr->debug_utils->SetCommandBuffer(cmd_buf,"[debug utils] "+name);
|
||||||
|
|
||||||
|
#endif//_DEBUG
|
||||||
|
|
||||||
return cmd_buf;
|
return cmd_buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
RenderCmdBuffer *GPUDevice::CreateRenderCommandBuffer()
|
RenderCmdBuffer *GPUDevice::CreateRenderCommandBuffer(const AnsiString &name)
|
||||||
{
|
{
|
||||||
VkCommandBuffer cb=CreateCommandBuffer();
|
VkCommandBuffer cb=CreateCommandBuffer(name);
|
||||||
|
|
||||||
if(cb==VK_NULL_HANDLE)return(nullptr);
|
if(cb==VK_NULL_HANDLE)return(nullptr);
|
||||||
|
|
||||||
return(new RenderCmdBuffer(attr,cb));
|
return(new RenderCmdBuffer(attr,cb));
|
||||||
}
|
}
|
||||||
|
|
||||||
TextureCmdBuffer *GPUDevice::CreateTextureCommandBuffer()
|
TextureCmdBuffer *GPUDevice::CreateTextureCommandBuffer(const AnsiString &name)
|
||||||
{
|
{
|
||||||
VkCommandBuffer cb=CreateCommandBuffer();
|
VkCommandBuffer cb=CreateCommandBuffer(name);
|
||||||
|
|
||||||
if(cb==VK_NULL_HANDLE)return(nullptr);
|
if(cb==VK_NULL_HANDLE)return(nullptr);
|
||||||
|
|
||||||
|
@ -321,6 +321,28 @@ GPUDevice *VulkanDeviceCreater::CreateRenderDevice()
|
|||||||
|
|
||||||
auto_delete.Discard(); //discard autodelete
|
auto_delete.Discard(); //discard autodelete
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
if(device_attr->debug_maker)
|
||||||
|
{
|
||||||
|
device_attr->debug_maker->SetPhysicalDevice(*physical_device,"[debug maker] Physical Device:"+AnsiString(physical_device->GetDeviceName()));
|
||||||
|
device_attr->debug_maker->SetDevice(device_attr->device,"[debug maker] Device:"+AnsiString(physical_device->GetDeviceName()));
|
||||||
|
device_attr->debug_maker->SetSurfaceKHR(surface,"[debug maker] Surface");
|
||||||
|
device_attr->debug_maker->SetCommandPool(device_attr->cmd_pool,"[debug maker] Main Command Pool");
|
||||||
|
device_attr->debug_maker->SetDescriptorPool(device_attr->desc_pool,"[debug maker] Main Descriptor Pool");
|
||||||
|
device_attr->debug_maker->SetPipelineCache(device_attr->pipeline_cache,"[debug maker] Main Pipeline Cache");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(device_attr->debug_utils)
|
||||||
|
{
|
||||||
|
device_attr->debug_utils->SetPhysicalDevice(*physical_device,"[debug utils] Physical Device:"+AnsiString(physical_device->GetDeviceName()));
|
||||||
|
device_attr->debug_utils->SetDevice(device_attr->device,"[debug utils] Device:"+AnsiString(physical_device->GetDeviceName()));
|
||||||
|
device_attr->debug_utils->SetSurfaceKHR(surface,"[debug utils] Surface");
|
||||||
|
device_attr->debug_utils->SetCommandPool(device_attr->cmd_pool,"[debug utils] Main Command Pool");
|
||||||
|
device_attr->debug_utils->SetDescriptorPool(device_attr->desc_pool,"[debug utils] Main Descriptor Pool");
|
||||||
|
device_attr->debug_utils->SetPipelineCache(device_attr->pipeline_cache,"[debug utils] Main Pipeline Cache");
|
||||||
|
}
|
||||||
|
#endif//_DEBUG
|
||||||
|
|
||||||
return(new GPUDevice(device_attr));
|
return(new GPUDevice(device_attr));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,6 +11,13 @@ void GPUDevice::InitRenderPassManage()
|
|||||||
SwapchainRenderbufferInfo rbi(attr->surface_format.format,attr->physical_device->GetDepthFormat());
|
SwapchainRenderbufferInfo rbi(attr->surface_format.format,attr->physical_device->GetDepthFormat());
|
||||||
|
|
||||||
device_render_pass=render_pass_manage->AcquireRenderPass(&rbi);
|
device_render_pass=render_pass_manage->AcquireRenderPass(&rbi);
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
if(attr->debug_maker)
|
||||||
|
attr->debug_maker->SetRenderPass(device_render_pass->GetVkRenderPass(),"[debug maker] MainDeviceRenderPass");
|
||||||
|
if(attr->debug_utils)
|
||||||
|
attr->debug_utils->SetRenderPass(device_render_pass->GetVkRenderPass(),"[debug utils] MainDeviceRenderPass");
|
||||||
|
#endif//_DEBUG
|
||||||
}
|
}
|
||||||
|
|
||||||
void GPUDevice::ClearRenderPassManage()
|
void GPUDevice::ClearRenderPassManage()
|
||||||
|
@ -65,14 +65,24 @@ namespace
|
|||||||
|
|
||||||
result=vkCreateSwapchainKHR(dev_attr->device,&swapchain_ci,nullptr,&swap_chain);
|
result=vkCreateSwapchainKHR(dev_attr->device,&swapchain_ci,nullptr,&swap_chain);
|
||||||
|
|
||||||
if(result==VK_SUCCESS)
|
if(result!=VK_SUCCESS)
|
||||||
return(swap_chain);
|
{
|
||||||
|
|
||||||
//LOG_ERROR(OS_TEXT("vkCreateSwapchainKHR failed, result = ")+OSString(result));
|
//LOG_ERROR(OS_TEXT("vkCreateSwapchainKHR failed, result = ")+OSString(result));
|
||||||
os_err<<"vkCreateSwapchainKHR failed, result="<<result<<std::endl;
|
os_err<<"vkCreateSwapchainKHR failed, result="<<result<<std::endl;
|
||||||
|
|
||||||
return(VK_NULL_HANDLE);
|
return(VK_NULL_HANDLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
if(dev_attr->debug_maker)
|
||||||
|
dev_attr->debug_maker->SetSwapchainKHR(swap_chain,"[debug maker] SwapChain");
|
||||||
|
|
||||||
|
if(dev_attr->debug_utils)
|
||||||
|
dev_attr->debug_utils->SetSwapchainKHR(swap_chain,"[debug utils] SwapChain");
|
||||||
|
#endif//_DEBUG
|
||||||
|
|
||||||
|
return(swap_chain);
|
||||||
|
}
|
||||||
}//namespace
|
}//namespace
|
||||||
|
|
||||||
bool GPUDevice::CreateSwapchainFBO(Swapchain *swapchain)
|
bool GPUDevice::CreateSwapchainFBO(Swapchain *swapchain)
|
||||||
@ -90,6 +100,21 @@ bool GPUDevice::CreateSwapchainFBO(Swapchain *swapchain)
|
|||||||
if(!swapchain->sc_depth)
|
if(!swapchain->sc_depth)
|
||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
if(attr->debug_maker)
|
||||||
|
{
|
||||||
|
attr->debug_maker->SetImage(swapchain->sc_depth->GetImage(),"[debug maker] SwapchainDepthImage");
|
||||||
|
attr->debug_maker->SetDeviceMemory(swapchain->sc_depth->GetDeviceMemory(),"[debug maker] SwapchainDepthMemory");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(attr->debug_utils)
|
||||||
|
{
|
||||||
|
attr->debug_utils->SetImage(swapchain->sc_depth->GetImage(),"[debug utils] SwapchainDepthImage");
|
||||||
|
attr->debug_utils->SetImageView(swapchain->sc_depth->GetVulkanImageView(),"[debug utils] SwapchainDepthImageView");
|
||||||
|
attr->debug_utils->SetDeviceMemory(swapchain->sc_depth->GetDeviceMemory(),"[debug utils] SwapchainDepthMemory");
|
||||||
|
}
|
||||||
|
#endif//_DEBUG
|
||||||
|
|
||||||
swapchain->sc_color =hgl_zero_new<Texture2D *>(swapchain->color_count);
|
swapchain->sc_color =hgl_zero_new<Texture2D *>(swapchain->color_count);
|
||||||
swapchain->sc_fbo =hgl_zero_new<Framebuffer *>(swapchain->color_count);
|
swapchain->sc_fbo =hgl_zero_new<Framebuffer *>(swapchain->color_count);
|
||||||
|
|
||||||
@ -103,6 +128,25 @@ bool GPUDevice::CreateSwapchainFBO(Swapchain *swapchain)
|
|||||||
swapchain->sc_fbo[i]=CreateFBO( device_render_pass,
|
swapchain->sc_fbo[i]=CreateFBO( device_render_pass,
|
||||||
swapchain->sc_color[i]->GetImageView(),
|
swapchain->sc_color[i]->GetImageView(),
|
||||||
swapchain->sc_depth->GetImageView());
|
swapchain->sc_depth->GetImageView());
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
if(attr->debug_maker)
|
||||||
|
{
|
||||||
|
attr->debug_maker->SetImage(swapchain->sc_color[i]->GetImage(),"[debug maker] SwapchainColorImage_"+AnsiString::numberOf(i));
|
||||||
|
attr->debug_maker->SetDeviceMemory(swapchain->sc_color[i]->GetDeviceMemory(),"[debug maker] SwapchainColorMemory_"+AnsiString::numberOf(i));
|
||||||
|
|
||||||
|
attr->debug_maker->SetFramebuffer(swapchain->sc_fbo[i]->GetFramebuffer(),"[debug maker] SwapchainFBO_"+AnsiString::numberOf(i));
|
||||||
|
}
|
||||||
|
|
||||||
|
if(attr->debug_utils)
|
||||||
|
{
|
||||||
|
attr->debug_utils->SetImage(swapchain->sc_color[i]->GetImage(),"[debug utils] SwapchainColorImage_"+AnsiString::numberOf(i));
|
||||||
|
attr->debug_utils->SetImageView(swapchain->sc_color[i]->GetVulkanImageView(),"[debug utils] SwapchainColorImageView_"+AnsiString::numberOf(i));
|
||||||
|
attr->debug_utils->SetDeviceMemory(swapchain->sc_color[i]->GetDeviceMemory(),"[debug utils] SwapchainColorMemory_"+AnsiString::numberOf(i));
|
||||||
|
|
||||||
|
attr->debug_utils->SetFramebuffer(swapchain->sc_fbo[i]->GetFramebuffer(),"[debug utils] SwapchainFBO_"+AnsiString::numberOf(i));
|
||||||
|
}
|
||||||
|
#endif//_DEBUG
|
||||||
}
|
}
|
||||||
|
|
||||||
return(true);
|
return(true);
|
||||||
|
@ -43,9 +43,16 @@ bool Primitive::Set(const AnsiString &name,VBO *vbo,VkDeviceSize offset)
|
|||||||
auto *da=device->GetDeviceAttribute();
|
auto *da=device->GetDeviceAttribute();
|
||||||
|
|
||||||
if(da->debug_maker)
|
if(da->debug_maker)
|
||||||
da->debug_maker->SetBuffer(vbo->GetBuffer(),"[debug maker] "+prim_name+":VBO:"+name);
|
{
|
||||||
|
da->debug_maker->SetBuffer(vbo->GetBuffer(),"[debug maker] "+prim_name+":VBO:Buffer:"+name);
|
||||||
|
da->debug_maker->SetDeviceMemory(vbo->GetVkMemory(),"[debug maker] "+prim_name+":VBO:Memory:"+name);
|
||||||
|
}
|
||||||
|
|
||||||
if(da->debug_utils)
|
if(da->debug_utils)
|
||||||
da->debug_utils->SetBuffer(vbo->GetBuffer(),"[debug utils] "+prim_name+":VBO:"+name);
|
{
|
||||||
|
da->debug_utils->SetBuffer(vbo->GetBuffer(),"[debug utils] "+prim_name+":VBO:Buffer:"+name);
|
||||||
|
da->debug_utils->SetDeviceMemory(vbo->GetVkMemory(),"[debug utils] "+prim_name+":VBO:Memory:"+name);
|
||||||
|
}
|
||||||
#endif//_DEBUG
|
#endif//_DEBUG
|
||||||
|
|
||||||
return(true);
|
return(true);
|
||||||
@ -87,9 +94,16 @@ bool Primitive::Set(IndexBuffer *ib,VkDeviceSize offset)
|
|||||||
auto *da=device->GetDeviceAttribute();
|
auto *da=device->GetDeviceAttribute();
|
||||||
|
|
||||||
if(da->debug_maker)
|
if(da->debug_maker)
|
||||||
da->debug_maker->SetBuffer(ib->GetBuffer(),"[debug maker] "+prim_name+":IBO");
|
{
|
||||||
|
da->debug_maker->SetBuffer(ib->GetBuffer(),"[debug maker] "+prim_name+":IBO:Buffer");
|
||||||
|
da->debug_maker->SetDeviceMemory(ib->GetVkMemory(),"[debug maker] "+prim_name+":IBO:Memory");
|
||||||
|
}
|
||||||
|
|
||||||
if(da->debug_utils)
|
if(da->debug_utils)
|
||||||
da->debug_utils->SetBuffer(ib->GetBuffer(),"[debug utils] "+prim_name+":IBO");
|
{
|
||||||
|
da->debug_utils->SetBuffer(ib->GetBuffer(),"[debug utils] "+prim_name+":IBO:Buffer");
|
||||||
|
da->debug_utils->SetDeviceMemory(ib->GetVkMemory(),"[debug utils] "+prim_name+":IBO:Memory");
|
||||||
|
}
|
||||||
#endif//_DEBUG
|
#endif//_DEBUG
|
||||||
return(true);
|
return(true);
|
||||||
}
|
}
|
||||||
|
@ -174,9 +174,17 @@ Texture2DArray *RenderResource::CreateTexture2DArray(const AnsiString &name,cons
|
|||||||
GPUDeviceAttribute *da=device->GetDeviceAttribute();
|
GPUDeviceAttribute *da=device->GetDeviceAttribute();
|
||||||
|
|
||||||
if(da->debug_maker)
|
if(da->debug_maker)
|
||||||
da->debug_maker->SetImage(ta->GetImage(),"[debug maker] Tex2DArray:"+name);
|
{
|
||||||
|
da->debug_maker->SetImage(ta->GetImage(),"[debug maker] Tex2DArrayImage:"+name);
|
||||||
|
da->debug_maker->SetDeviceMemory(ta->GetDeviceMemory(),"[debug maker] Tex2DArrayMemory:"+name);
|
||||||
|
}
|
||||||
|
|
||||||
if(da->debug_utils)
|
if(da->debug_utils)
|
||||||
da->debug_utils->SetImage(ta->GetImage(),"[debug utils] Tex2DArray:"+name);
|
{
|
||||||
|
da->debug_utils->SetImage(ta->GetImage(),"[debug utils] Tex2DArrayImage:"+name);
|
||||||
|
da->debug_utils->SetImageView(ta->GetVulkanImageView(),"[debug utils] Tex2DArrayImageView:"+name);
|
||||||
|
da->debug_utils->SetDeviceMemory(ta->GetDeviceMemory(),"[debug utils] Tex2DArrayMemory:"+name);
|
||||||
|
}
|
||||||
#endif//_DEBUG
|
#endif//_DEBUG
|
||||||
|
|
||||||
return ta;
|
return ta;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user