Skip to main content

参数(Parameters)

Modular Avatar 的参数(Parameters)组件能够让您以小组件(Gimmick)内部或者公开的形式定义一个动画机参数(Animator Parameter)。它能够修改参数名避免冲突,也可以定义参数的同步选项和默认值。

parameters-546897e3d7a6fe63795e1f4f8740ea69.png

适用场景

参数(Parameters)组件在制作一个使用 VRChat 自带参数之外的动画机参数(Animator Parameter)的小组件(Gimmick)时使用。

如何使用?

参数列表的每个条目用于设置一个参数,或者 VRChat 动骨(PhysBone)参数的一个前缀。 在第一行设置参数名(或前缀)以及参数类型。

参数类型

右上角的参数类型有下列选择:

  • 布尔值(Bool)
  • 整型数(Int)
  • 浮点数(Float)
  • 仅动画机(Animator Only)
  • 动骨前缀(PB Prefix)

若您选择仅动画机,那么该参数将不会被添加到表情参数(Expressions Parameters)列表。但是该条目还是能够如下文所述重命名相应参数。

动骨前缀(PB Prefix)是在该前缀于一个动骨(PhysBone)组件中定义时使用的类型。和仅动画机(Animator Only)一样,该参数不会被添加到表情参数(Expressions Parameters)列表中。

重命名参数

如果您在 Change name to(将名称更改为) 一栏中输入了一个名称,那么在该组件所在对象和其子对象之外的地方,该参数都会被重命名为输入的名称。这个操作对于避免不同小组件(Gimmick)的冲突,或者反之故意通过同一参数同步两个小组件(Gimmick)都很有用。

您也可以勾选 Auto rename(自动重命名),让 Modular Avatar 自动为您选择一个未被使用的名称。

默认值

每个参数都可以指定一个默认值。默认值会在虚拟形象重置后被使用。如果您将默认值留空,那么将会使用表情参数(Expressions Parameters)资产中的值(如果有),或者使用 0 (或者布尔值假)。

若您勾选了 Override Animator Defaults(覆盖动画控制器的默认值) 选框,那么您的资产中的*动画控制器(Animator Controller)*所指定的默认值将会被替换为这里的默认值。这个选项偶尔对特别复杂的小组件(Gimmick)有用。如果您选中了 Animator Only(仅动画机) 模式并指定了一个默认值,那么该选框将被忽略,并且动画控制器中的默认值会被直接替换。

保存/同步

保存选项决定参数是否会在虚拟形象更改和重启 VRChat 时保存。

同步选项决定参数是否会通过网络进行同步。如果取消勾选该选框,该参数将不会占用参数限制。

新建参数

您可以通过两种方式新建参数。第一种,点击参数列表底部的 + 按钮;然后修改参数名称。

第二种,展开 Unregistered Parameters(未注册的参数);该部分列出在该组件所在对象和其子对象检测到的参数。您可以点击点击 Add(添加) 按钮添加该参数,或者点击放大镜查看该参数所处的位置。

新建参数后,您可以为其设置类型和其他字段。

嵌套

MA 参数(MA Parameters)组件可以嵌套使用。组件嵌套能让您使用多个子组件建立一个复杂系统。每个参数(MA Parameters)组件都能够将重命名应用到其所有子级中。意思是,如果存在一个内部的参数组件,该组件将参数 foo 重命名为了 bar,然后一个外部的参数组件勾选了参数 barAuto rename(自动重命名),那么您依然可以在这两个组件所在的对象中互相访问参数 bar

嵌套参数组件时需要注意的几处细节:

  • 参数会使用最外层的保存(Saved)选项。但是,如果有多个没有嵌套的参数组件的同一参数的保存选项不统一,那么只要其中有任何一个勾选了保存,该参数将启用保存。
  • 参数会使用最外层的 Default Value(默认值);但是如果外层的组件将其留空,则逐层往里找到首个非空默认值并使用。如果有多个没有嵌套的参数组件的同一参数都设置了非空默认值,由于无法确定应该使用哪个默认值,将会显示一个警告。