关于头顶UI的问题

[复制链接]
1746 |7
问题描述及使用流程:
使用脚本动态生成头顶UI
然后设置头顶UI的界面
生成后就是这样
左边是直接拖到场景的,角色头顶是用脚本生成的,不知道为什么不一样!布局和字体大小全乱了

相关截图或视频:
微信图片_20230912225417.png

补充信息(版本、日志等):026
回复

使用道具 举报

吃到苦就是得到了甜楼主 发表于 2023-9-13 08:53:30 来自手机 | 显示全部楼层
回复

使用道具 举报

Lyndon 发表于 2023-9-13 09:47:58 | 显示全部楼层
可以上传这个项目看一下吗,是一整个UI文件一起动态生成的吗
回复

使用道具 举报

哭唧唧的细狗 发表于 2023-9-13 10:11:23 | 显示全部楼层
hello,是这样的,实际测试了一下,动态创建于拖上去的表现是一致的,猜测可能是动态创建时,有些参数设置不同,导致了你发的图中的二义性表现

世界UI的头顶类型目前需要把显示的主要内容放在UICanvas的左上角时,才能达到角色头顶的效果哈
回复

使用道具 举报

吃到苦就是得到了甜楼主 发表于 2023-9-13 10:58:24 来自手机 | 显示全部楼层
Lyndon 发表于 2023-9-13 09:47
可以上传这个项目看一下吗,是一整个UI文件一起动态生成的吗

等会回去我发一下
回复

使用道具 举报

吃到苦就是得到了甜楼主 发表于 2023-9-13 11:01:30 来自手机 | 显示全部楼层
Lyndon 发表于 2023-9-13 09:47
可以上传这个项目看一下吗,是一整个UI文件一起动态生成的吗

private async init() {
        this._hpBarUI = UI.UIManager.instance.create(UIHP_Generate);
        this._hpBarWidget = await Gameplay.GameObject.asyncSpawn<Gameplay.UIWidget>({ guid: "UIWidget", replicates: false });
        this._hpBarWidget.setTargetUIWidget(this._hpBarUI.uiWidgetBase);
        this._hpBarWidget.widgetSpace = Gameplay.WidgetSpaceMode.OverheadUI;
        let character = this.gameObject as Gameplay.CharacterBase;
        this._hpBarWidget.attachToGameObject(character.getHeadUIWidget())
        this._hpBarWidget.relativeLocation = Vector.up.multiply(-10);
        this._isInit = true;
        this.onHpChange();
    }

我的代码是根据他发的这个血条模板改的,我用的就这一块,然后这个位置不一样
let character = this.gameObject;
        this._hpBarWidget.attachToGameObject(character)

其他都一样了,因为我用的是推出来的模型,就没 as gameplay
回复

使用道具 举报

吃到苦就是得到了甜楼主 发表于 2023-9-13 11:03:54 来自手机 | 显示全部楼层
哭唧唧的细狗 发表于 2023-9-13 10:11
hello,是这样的,实际测试了一下,动态创建于拖上去的表现是一致的,猜测可能是动态创建时,有些参数设置 ...

我昨天还专门测试了一下,就是把世界ui创建好,然后直接拖入ui,调整世界ui的高度,改成头顶显示,和代码操作一样。
后来发现动态创建的缩放是0.5,改成了1没变化。。
回去我把所有的属性输出一遍试试
回复

使用道具 举报

哭唧唧的细狗 发表于 2023-9-13 11:05:54 | 显示全部楼层
吃到苦就是得到了甜 发表于 2023-9-13 11:03
我昨天还专门测试了一下,就是把世界ui创建好,然后直接拖入ui,调整世界ui的高度,改成头顶显示,和代码 ...

image.png 你尝试设置一下世界UI的drawSize呢
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表