Improve UI scaling

This commit is contained in:
2024-01-15 11:48:24 +01:00
parent f7b235abe5
commit b2bf934c14
2 changed files with 13 additions and 3 deletions

View File

@@ -18,8 +18,11 @@ void drawGameUI(Game *game, f32 dt) {
BZ_UI_FLEX_ALIGN_CENTER BZ_UI_FLEX_ALIGN_CENTER
}); });
// top bar // top bar
f32 topBarHeight = 0.05f; BzUINode *topBar = bzUINodeMake(UI, bzUIGetUniqueKey(UI), &(BzUINodeDesc) {
BzUINode *topBar = uiPushDivParentPercentage(1.0f, topBarHeight); .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) { bzUISetParentLayout(UI, (BzUILayout) {
.type = BZ_UI_LAYOUT_FLEX_BOX, .type = BZ_UI_LAYOUT_FLEX_BOX,
.flags = BZ_UI_FLEX_DIR_ROW | .flags = BZ_UI_FLEX_DIR_ROW |
@@ -45,7 +48,12 @@ void drawGameUI(Game *game, f32 dt) {
uiGameResCount(1, 10, popRec, tileset->tiles); uiGameResCount(1, 10, popRec, tileset->tiles);
bzUIPopParent(UI); 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); InputState *input = ecs_singleton_get_mut(ECS, InputState);
const BuildingType buildingOrder[] = { const BuildingType buildingOrder[] = {

View File

@@ -247,6 +247,8 @@ void uiGameBuild(const char *label, Rectangle rec, Texture2D tex, bool *selected
BzUINode *btn = bzUINodeMake(UI, bzUIKeyFromString(label), &(BzUINodeDesc) { BzUINode *btn = bzUINodeMake(UI, bzUIKeyFromString(label), &(BzUINodeDesc) {
.flags = BZ_UI_CLICKABLE | BZ_UI_ALIGN_CENTER | BZ_UI_DRAW_BORDER, .flags = BZ_UI_CLICKABLE | BZ_UI_ALIGN_CENTER | BZ_UI_DRAW_BORDER,
.margin[BZ_UI_AXIS_X] = 10.0f * scl, .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_X] = {BZ_UI_SIZE_CHILD_MAX},
.semanticSize[BZ_UI_AXIS_Y] = {BZ_UI_SIZE_CHILD_SUM}, .semanticSize[BZ_UI_AXIS_Y] = {BZ_UI_SIZE_CHILD_SUM},
}); });