diff --git a/CMCore b/CMCore index 1f1d1b80..74d603fd 160000 --- a/CMCore +++ b/CMCore @@ -1 +1 @@ -Subproject commit 1f1d1b80350a40bfeaf50ab6cf8c6be8a613c374 +Subproject commit 74d603fd234daca29114b7b23245604a1bb5170c diff --git a/example/Vulkan/OffscreenRender.cpp b/example/Vulkan/OffscreenRender.cpp index 7a5a3a70..f1b56e41 100644 --- a/example/Vulkan/OffscreenRender.cpp +++ b/example/Vulkan/OffscreenRender.cpp @@ -140,7 +140,7 @@ public: rect.material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/Texture2D")); if(!rect.material_instance)return(false); - rect.pipeline=CreatePipeline(rect.material_instance,vulkan::InlinePipeline::Solid2D); + rect.pipeline=CreatePipeline(rect.material_instance,vulkan::InlinePipeline::Alpha2D); if(!rect.pipeline)return(false); rect.sampler=db->CreateSampler(); @@ -159,7 +159,7 @@ public: rect.renderable_instance=db->CreateRenderableInstance(render_obj,rect.material_instance,rect.pipeline); } - + BuildCommandBuffer(rect.renderable_instance); return(true); @@ -170,6 +170,8 @@ public: if(!VulkanApplicationFramework::Init(SCREEN_WIDTH,SCREEN_HEIGHT)) return(false); + SetClearColor(COLOR::MozillaCharcoal); + if(!InitOffscreen()) return(false); diff --git a/example/common/VulkanAppFramework.h b/example/common/VulkanAppFramework.h index 719178d5..caf50016 100644 --- a/example/common/VulkanAppFramework.h +++ b/example/common/VulkanAppFramework.h @@ -55,6 +55,8 @@ protected: vulkan::CommandBuffer ** cmd_buf =nullptr; + Color4f clear_color; + protected: vulkan::Database * db =nullptr; @@ -77,6 +79,8 @@ public: { hgl_zero(key_status); + clear_color.Zero(); + #ifdef _DEBUG if(!vulkan::CheckStrideBytesByFormat()) return(false); @@ -187,6 +191,11 @@ public: cb->End(); } + void SetClearColor(COLOR cc) + { + clear_color.Use(cc,1.0); + } + void BuildCommandBuffer(uint32_t index,vulkan::RenderableInstance *ri) { if(!ri) @@ -196,6 +205,8 @@ public: vulkan::CommandBuffer *cb=cmd_buf[index]; + cb->SetClearColor(0,clear_color.r,clear_color.g,clear_color.b); + cb->Begin(); cb->BindFramebuffer(sc_render_target->GetRenderPass(),sc_render_target->GetFramebuffer(index)); cb->BindPipeline(ri->GetPipeline());