【问题标题】:How to add the new unity uxml(via ui builder) to game screen?如何将新的统一 uxml(通过 ui builder)添加到游戏屏幕?
【发布时间】:2019-12-17 20:56:59
【问题描述】:

我安装了新的 Unity UI Builder。一切正常...

但是如何将 uxml 添加到我的场景或如何将其附加到相机?

我尝试将uxml拖放到相机中,我搜索了一个组件,但是我找不到任何东西......有官方文档吗?

【问题讨论】:

  • 不能,目前 UI Builder 仅适用于编辑器:forum.unity.com/threads/…
  • @UnholySheep In Unity 2019.3 现已推出,正式版将于 2020 年 1 月发布。

标签: unity3d


【解决方案1】:

您必须使用附加了 PanelRenderer.cs 的游戏对象:

目前,我只知道你必须设置 UXML 文件和 USS 文件。在播放模式下,通过魔法(我还是不明白 unity 是怎么做到的),它会渲染。

在 Github 项目中,您可以看到目前的情况。 UIElementsUniteCPH2019RuntimeDemo

编辑: 上面链接的项目使用 UI Builder 0.8。

【讨论】:

  • 我找不到 PanelRenderer
  • 在上面链接的项目中,您可以在 Assets > UIERuntime > Runtime 中找到它。我进行了更多调查,我发现它还没有为运行时做好准备,即使他们说他会在 2019.3 中。但是,您可以通过上面的链接进行测试并提供反馈。
  • 此解决方案不再有效。我想存储背景颜色的参考,以便可以更改,但到目前为止文档很少,并且上述解决方案不再可用。有什么想法吗?谢谢
【解决方案2】:

使用数据包管理器仍然无法提供运行时支持。

您可以通过将以下行添加到您的manifest.json(它位于项目Packages-文件夹中)来将预览版本添加到您的项目中

"com.unity.ui.runtime": "0.0.4-preview"

您可能想check whether a newer version is available

请记住,预览版仅用于预览。 api 和工作流程可能会随着新版本而改变。

启用运行时支持后,您可以按照above 所述使用面板渲染器。

【讨论】:

  • 真是个无赖。在某些情况下,“预览”意味着继续并在生产中使用它。在其他情况下,这意味着它只是一个演示,它只能在编辑器中工作:(
【解决方案3】:
  1. 即使 UI Builder 在实际游戏场景中提供菜单预览,也无法在使用 Unity 功能或包的游戏中使用该菜单。为此,我们需要使用来自 Unite Copenhagen 2019 的 Damian Campeanu 演示附带的代码,您可以在此处找到:https://github.com/Unity-Technologies/UIElementsUniteCPH2019RuntimeDemo

演示具有以下结构。 Structure of the project

  1. 我们感兴趣的文件位于 Assets/UIRuntime 文件夹中。只需将此文件夹复制到项目的 Assets 文件夹中即可。

  2. 复制文件夹后,创建空游戏对象,并在检查器中添加两个组件。面板缩放器和面板渲染器。 Game menu object with panel scaler and panel renderer components

  3. Panel Scaller 负责为显示缩放您的菜单。为 Reference 和 Fallback DPI 选择“Constant Physical Size”和 96。这些是原始演示中的值,96 DPI 是大多数计算机屏幕的典型像素密度(在移动设备和高密度屏幕上有所不同)。

  4. 面板渲染器是您设置 UXML 和 USS(Unity 样式表)文件(Uxml 和 Unity 样式表字段。将最后两个字段留空,并勾选“启用实时更新”复选框。这将使您能够在制作更新时在游戏视口中显示更新。

我想在 Pablo 的现有答案下发表评论,但我是新手,所以我不能。

【讨论】:

    【解决方案4】:

    在 Unity 2021.2 中,当您将 UI 文档添加到层次结构时,会自动创建一个 PanelSettings 资产并将其分配给该 UI 文档。

    只需将您的 uxml 文件添加到 UI 文档——不再有 Panel Renderer 组件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-28
      • 1970-01-01
      相关资源
      最近更新 更多