Fixed crash when canvas parser fails + added resolution settings for worldspace UI

This commit is contained in:
antopilo
2024-09-16 21:32:17 -04:00
parent f58e09cfc3
commit 7ed37d0bbb
3 changed files with 33 additions and 3 deletions

View File

@@ -27,8 +27,12 @@ UIResource::UIResource(const std::string& path) :
canvas = Canvas::New();
canvas->uuid = this->ID;
canvas = CanvasParser::Get().Parse(canvas, FileSystem::RelativeToAbsolute(path));
canvas->SetInputManager(inputManager);
canvas->ComputeLayout(defaultSize);
if (!canvas)
{
canvas->SetInputManager(inputManager);
canvas->ComputeLayout(defaultSize);
}
}
void UIResource::Tick()
@@ -57,7 +61,10 @@ void UIResource::Draw()
void UIResource::Resize(const Vector2& size)
{
framebuffer->QueueResize(size);
canvas->ComputeLayout(size);
if (canvas)
{
canvas->ComputeLayout(size);
}
}
void UIResource::Reload()