From b2bf934c1423d52fb503b754188c4f02961083f5 Mon Sep 17 00:00:00 2001 From: Klemen Plestenjak Date: Mon, 15 Jan 2024 11:48:24 +0100 Subject: [PATCH] Improve UI scaling --- game/systems/s_ui.c | 14 +++++++++++--- game/ui_widgets.c | 2 ++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/game/systems/s_ui.c b/game/systems/s_ui.c index c4890ad..5967fc1 100644 --- a/game/systems/s_ui.c +++ b/game/systems/s_ui.c @@ -18,8 +18,11 @@ void drawGameUI(Game *game, f32 dt) { BZ_UI_FLEX_ALIGN_CENTER }); // top bar - f32 topBarHeight = 0.05f; - BzUINode *topBar = uiPushDivParentPercentage(1.0f, topBarHeight); + BzUINode *topBar = bzUINodeMake(UI, bzUIGetUniqueKey(UI), &(BzUINodeDesc) { + .semanticSize[BZ_UI_AXIS_X] = {BZ_UI_SIZE_AS_PARENT}, + .semanticSize[BZ_UI_AXIS_Y] = {BZ_UI_SIZE_CHILD_MAX}, + }); + bzUIPushParent(UI, topBar); bzUISetParentLayout(UI, (BzUILayout) { .type = BZ_UI_LAYOUT_FLEX_BOX, .flags = BZ_UI_FLEX_DIR_ROW | @@ -45,7 +48,12 @@ void drawGameUI(Game *game, f32 dt) { uiGameResCount(1, 10, popRec, tileset->tiles); bzUIPopParent(UI); - uiPushDivParentPercentage(1.0f, 0.20f); + BzUINode *buildMenu = bzUINodeMake(UI, bzUIGetUniqueKey(UI), &(BzUINodeDesc) { + .semanticSize[BZ_UI_AXIS_X] = {BZ_UI_SIZE_AS_PARENT}, + .semanticSize[BZ_UI_AXIS_Y] = {BZ_UI_SIZE_CHILD_MAX}, + .margin[BZ_UI_AXIS_Y * 2] = 5.0f * uiGetScale(), + }); + bzUIPushParent(UI, buildMenu); InputState *input = ecs_singleton_get_mut(ECS, InputState); const BuildingType buildingOrder[] = { diff --git a/game/ui_widgets.c b/game/ui_widgets.c index 6770b72..fce0f13 100644 --- a/game/ui_widgets.c +++ b/game/ui_widgets.c @@ -247,6 +247,8 @@ void uiGameBuild(const char *label, Rectangle rec, Texture2D tex, bool *selected BzUINode *btn = bzUINodeMake(UI, bzUIKeyFromString(label), &(BzUINodeDesc) { .flags = BZ_UI_CLICKABLE | BZ_UI_ALIGN_CENTER | BZ_UI_DRAW_BORDER, .margin[BZ_UI_AXIS_X] = 10.0f * scl, + .margin[BZ_UI_AXIS_Y] = 10.0f * scl, + .margin[BZ_UI_AXIS_Y * 2] = 10.0f * scl, .semanticSize[BZ_UI_AXIS_X] = {BZ_UI_SIZE_CHILD_MAX}, .semanticSize[BZ_UI_AXIS_Y] = {BZ_UI_SIZE_CHILD_SUM}, });