Kaynağa Gözat

Fix a bug in the UI stage

Panagiotis Christopoulos Charitos 6 yıl önce
ebeveyn
işleme
8de64f958c

+ 1 - 1
src/anki/renderer/FinalComposite.cpp

@@ -128,7 +128,7 @@ void FinalComposite::run(RenderingContext& ctx, RenderPassWorkContext& rgraphCtx
 	drawQuad(cmdb);
 
 	// Draw UI
-	m_r->getUiStage().draw(ctx, cmdb);
+	m_r->getUiStage().draw(ctx.m_outRenderTargetWidth, ctx.m_outRenderTargetHeight, ctx, cmdb);
 }
 
 void FinalComposite::populateRenderGraph(RenderingContext& ctx)

+ 2 - 1
src/anki/renderer/UiStage.cpp

@@ -31,7 +31,7 @@ Error UiStage::init(const ConfigSet&)
 	return Error::NONE;
 }
 
-void UiStage::draw(RenderingContext& ctx, CommandBufferPtr& cmdb)
+void UiStage::draw(U32 width, U32 height, RenderingContext& ctx, CommandBufferPtr& cmdb)
 {
 	// Early exit
 	if(ctx.m_renderQueue->m_uis.getSize() == 0)
@@ -43,6 +43,7 @@ void UiStage::draw(RenderingContext& ctx, CommandBufferPtr& cmdb)
 
 	m_canvas->handleInput();
 	m_canvas->beginBuilding();
+	m_canvas->resize(width, height);
 
 	for(UiQueueElement& el : ctx.m_renderQueue->m_uis)
 	{

+ 1 - 1
src/anki/renderer/UiStage.h

@@ -23,7 +23,7 @@ anki_internal:
 
 	ANKI_USE_RESULT Error init(const ConfigSet& cfg);
 
-	void draw(RenderingContext& ctx, CommandBufferPtr& cmdb);
+	void draw(U32 width, U32 height, RenderingContext& ctx, CommandBufferPtr& cmdb);
 
 private:
 	FontPtr m_font;