VulkanAppFramework增加SetClearColor函数,并产生对应功能。
This commit is contained in:
2
CMCore
2
CMCore
Submodule CMCore updated: 1f1d1b8035...74d603fd23
@@ -140,7 +140,7 @@ public:
|
|||||||
rect.material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/Texture2D"));
|
rect.material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/Texture2D"));
|
||||||
if(!rect.material_instance)return(false);
|
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);
|
if(!rect.pipeline)return(false);
|
||||||
|
|
||||||
rect.sampler=db->CreateSampler();
|
rect.sampler=db->CreateSampler();
|
||||||
@@ -170,6 +170,8 @@ public:
|
|||||||
if(!VulkanApplicationFramework::Init(SCREEN_WIDTH,SCREEN_HEIGHT))
|
if(!VulkanApplicationFramework::Init(SCREEN_WIDTH,SCREEN_HEIGHT))
|
||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
|
SetClearColor(COLOR::MozillaCharcoal);
|
||||||
|
|
||||||
if(!InitOffscreen())
|
if(!InitOffscreen())
|
||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
|
@@ -55,6 +55,8 @@ protected:
|
|||||||
|
|
||||||
vulkan::CommandBuffer ** cmd_buf =nullptr;
|
vulkan::CommandBuffer ** cmd_buf =nullptr;
|
||||||
|
|
||||||
|
Color4f clear_color;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
vulkan::Database * db =nullptr;
|
vulkan::Database * db =nullptr;
|
||||||
@@ -77,6 +79,8 @@ public:
|
|||||||
{
|
{
|
||||||
hgl_zero(key_status);
|
hgl_zero(key_status);
|
||||||
|
|
||||||
|
clear_color.Zero();
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
if(!vulkan::CheckStrideBytesByFormat())
|
if(!vulkan::CheckStrideBytesByFormat())
|
||||||
return(false);
|
return(false);
|
||||||
@@ -187,6 +191,11 @@ public:
|
|||||||
cb->End();
|
cb->End();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SetClearColor(COLOR cc)
|
||||||
|
{
|
||||||
|
clear_color.Use(cc,1.0);
|
||||||
|
}
|
||||||
|
|
||||||
void BuildCommandBuffer(uint32_t index,vulkan::RenderableInstance *ri)
|
void BuildCommandBuffer(uint32_t index,vulkan::RenderableInstance *ri)
|
||||||
{
|
{
|
||||||
if(!ri)
|
if(!ri)
|
||||||
@@ -196,6 +205,8 @@ public:
|
|||||||
|
|
||||||
vulkan::CommandBuffer *cb=cmd_buf[index];
|
vulkan::CommandBuffer *cb=cmd_buf[index];
|
||||||
|
|
||||||
|
cb->SetClearColor(0,clear_color.r,clear_color.g,clear_color.b);
|
||||||
|
|
||||||
cb->Begin();
|
cb->Begin();
|
||||||
cb->BindFramebuffer(sc_render_target->GetRenderPass(),sc_render_target->GetFramebuffer(index));
|
cb->BindFramebuffer(sc_render_target->GetRenderPass(),sc_render_target->GetFramebuffer(index));
|
||||||
cb->BindPipeline(ri->GetPipeline());
|
cb->BindPipeline(ri->GetPipeline());
|
||||||
|
Reference in New Issue
Block a user