加载 UI 画布
使用 UI 编辑器 创作 UI 画布后,可以使用以下方法之一在运行时加载它。
使用 UI Canvas Asset Ref 组件. UI Canvas Asset Ref component 引用 UI Canvas 资产,并有一个选项,用于在组件的实体激活时自动加载 UI Canvas。
使用 Load Canvas Script Canvas 节点. 使用加载画布 Script Canvas 节点按路径名加载 UI 画布。将节点添加到分配给关卡中实体上的 Script Canvas 组件的 Script Canvas 图形中。
使用 UI Canvas Manager EBus. UI 画布管理器 EBus 包含按路径名加载画布和按实体 ID 卸载画布的方法。在分配给关卡中实体上的 Lua 脚本 组件的 Lua 脚本 中使用此事件总线。
以下示例显示了如何在 Lua 脚本中使用 UI Canvas Manager 总线。
-- Load UI canvas
local canvasEntityId = UiCanvasManagerBus.Broadcast.LoadCanvas("UI/Canvases/MyCanvas.uicanvas")
-- Unload UI canvas
UiCanvasManagerBus.Broadcast.UnloadCanvas(canvasEntityId)
以下示例显示了如何在 C++ 中使用 UI Canvas Manager 总线。
// Load UI canvas
AZ::EntityId canvasEntityId;
UiCanvasManagerBus::BroadcastResult(canvasEntityId, &UiCanvasManagerInterface::LoadCanvas, "UI/Canvases/MyCanvas.uicanvas");
// Unload UI canvas
UiCanvasManagerBus::Broadcast(&UiCanvasManagerInterface::UnloadCanvas, canvasEntityId);