Skip to main content

编辑菜单

Modular Avatar 包含了一个基于对象的菜单编辑系统,使用该系统能够轻松地在 Unity 的检查器(Inspector)中编辑菜单,甚至创建简单的开关。

本教程将展示如何使用该系统编辑您的虚拟形象中已存在的菜单,以及如何将其包含进您的资产中。

转换已存在的虚拟形象菜单

要开始使用菜单编辑器,最简单的方式是先转换您的虚拟形象的菜单。右键您的虚拟形象,选择 [Modular Avatar] Extract menu(提取菜单)

extract-menu-0e25c2ffac66c7073be52a196cc10271.png

点击后将会在您的虚拟形象中添加一个新的 Avatar Menu(虚拟形象菜单) 对象,其中包含您的虚拟形象中的顶级菜单。

menu-toplevel-bebd3de56f70cfcbd3ac0b46df395e44.png

能看到,您的菜单项已经被转换成一个个的对象。您可以单独检查每一个菜单项。

menuitem-single-50b284196019f451b902be892eb7cb85.png

您还可以点击其中 Extract to object(提取成对象) 按钮对子菜单进行转换。操作之后在层级(Hierarchy)窗口中可以看到您的菜单的多层结构。

second-level-extract-725df96c9a28663ce1ed1cb7fc348836.png

将菜单提取成对象后,您可以通过拖拽对象随意地移动菜单项。

添加新的菜单项

在提取菜单后,您可以通过点击列表底下的 Add menu item(添加菜单项) 按钮添加新的菜单项。

add-menu-item-button-edb748b35e65d9f78c0c1e85021c5b7f.png

这个操作将会在列表的末尾添加一个新的菜单项。您可以编辑其名称、类型、参数等等。

如需创建子菜单,将 Type(类型) 修改为 Sub Menu(子菜单),然后将 Submenu Source(子菜单来源) 设置为 Children(子项)。完成后,您可以通过点击 Add menu item 在这个子菜单中添加菜单子项。

new-submenu-item-537b5ef0c472328c5c20d61b868bc6fb.png

参数

您可以点击 Parameter(参数) 一栏参数名旁边的箭头,通过名称搜索参数。父对象中任何其他 MA Parameters 组件也会出现在结果中。

param-search-afd7902c7f3899bcee468b670e774305.png

在可重复利用的资产中使用

您还可以在可复用的资产中使用菜单项控制。可以将资产目录中 Fingerpen 或者 SimpleToggle 的资产作为例子。

高级用法,当您只想添加单独的一个菜单项或子菜单,在同一个游戏对象(GameObject)上添加一个 MA Menu Installer 组件和一个 MA Menu Item 组件。菜单安装器(Menu Installer)将自动把菜单项安装到目标的虚拟形象上。 如果您想要在不使用子菜单的情况下添加多个菜单项,您可以添加一个 MA Menu Installer 组件和一个 MA Menu Group 组件。菜单组(Menu Group)能够让菜单安装器(Menu Installer)在不将菜单项合入一个子菜单的情况下添加多个菜单项。这也是提取菜单系统(Extract menu system)将虚拟形象的顶级菜单重建成 Unity 对象的做法。