Skip to main content

教程

没有图片这回事真的很私密马赛!本文最初是一个视频教程的文案,但我一直抽不出时间去录制这个教程!你可以点进我的油管频道以观看其他教程。

开始使用

首先,您需要从 Gumroad 下载此工具。在付款框中输入“0”,然后下载并导入 unitypackage。如果出于某种原因,VRChat SDK 的更新导致此工具损坏,我将在描述中提供一个链接,向您展示如何以正常且繁琐的方式创建切换。

我还想提及另一个扩展,因为它本质上做了同样的事情,但选项更少,只是对我不起作用(它可以关闭物体,但无法再次打开)。您仍然可以尝试自己尝试。

之后,这些其他内容是可选的,但我仍然建议您安装它们。您需要 Avatar 3.0 模拟器,以便在上传化身之前测试确保您的切换在 Unity 中正常工作。您可以从 Github 或 Booth 获取它。之后,我建议您获取这个简单的插件,它为您的 VRC 表达式参数和 VRC 表达式菜单资产提供自定义图标。这里还有一个免费图标包。最后,有一个编辑器脚本,当您按下播放按钮时,它会自动切换到场景视图;只需将其放置在项目中的任何位置,它就会起作用。您可以通过转到“工具>播放时切换到场景视图”来切换该功能的开启和关闭。

简单切换

我的场景中已经有一个化身,因为我不希望在出现问题时干扰原始化身,所以我要为其创建一个副本。要执行此操作,请选择您的化身游戏对象,按住控制并单击箭头将其移回,按 Control + D 复制它,然后将其移回前方。我还将“toggles”附加到其名称末尾。

我还想确保我复制了效果层、表达式菜单和表达式参数。选择化身后,滚动到 FX 层,单击它,按 Ctrl D,然后按 F2 重命名它,然后将其拖回 FX 插槽。对表达式菜单和表达式参数执行相同的操作。

如果您还没有表达式菜单或表达式参数,可以通过在项目选项卡中右键单击并转到“创建>VRChat>Avatars”来创建它们。请注意,使用自定义表达式菜单将删除默认的表情菜单,要恢复它,您需要创建一个看起来像这个表情菜单的新子菜单。

切换的工作方式是,当您在径向菜单中按下按钮时,它们会播放动画。如果对象已经打开,它会播放一个关闭对象的动画,反之亦然。此工具将自动为我们生成动画,但我们需要创建一个文件夹来存储它们。因此,请在项目中的适当位置(例如,如果您的模型带有“动画”文件夹),右键单击>创建>文件夹,然后将其重命名为“切换”。

在这个项目中,我有两个不同的化身,所以我在“切换”文件夹中有两个子文件夹,每个化身一个。

现在,单击您希望能够切换开启和关闭的对象,或确保它在层次结构中被选中。要启用此工具,请转到“工具”菜单并单击“切换创建器”。因为我们已经在层次结构中选中了对象,所以它已经为我们填写了化身和附件对象。

或者,您还可以在层次结构中右键单击要切换的游戏对象,然后单击“高级切换”或“切换”。

请注意,您可以在此新窗口中悬停在每个标签上,文本会弹出来告诉您每个选项的功能。

在“表达式”菜单下,我希望生成的切换按钮出现在一个新的子菜单中。所以,点击下拉菜单旁边的加号图标,以创建一个新的表达式菜单槽。我将称之为“衣服”,并将此子菜单放在切换按钮文件夹下。如果你回到主菜单,你可以更改子菜单的图标。

要创建切换按钮:

  1. 在“参数”部分,在“表达式”菜单下拉菜单中,选择我们为切换按钮创建的子菜单。
  2. 在“菜单名称”中输入名称,这将同时填充参数名称。
  3. 通过单击输入框右侧的圆圈来选择菜单中的图标,以弹出纹理搜索,或者从项目选项卡中拖动图像到框中。对于此切换按钮,我将选择前者并搜索消音器,因为此头像带有消音器图标。
  4. 对于此对象(消音器),如果我关闭它,我希望它在更改到新世界或更改回头像时保持关闭状态,所以我会保留“安全状态”开启。
  5. 我还希望它成为头像的默认部分,如果它重新加载,所以我会保留“默认状态”启用。
  6. 我希望新动画的文件夹位于我创建的文件夹中,所以我会导航到下拉菜单中的那个文件夹。
  7. 然后单击“创建简单切换按钮”,完成!

要在Unity中预览此切换按钮:

  1. 转到“工具”菜单,
  2. 单击“手势菜单模拟器”,
  3. 然后单击“播放”。
  4. 选择“手势管理器预制件”,
  5. 确保控制头像已设置为您放置切换按钮的头像。
  6. 然后按照与游戏中相同的方式导航“表达式”菜单。 如果在这里工作,那么它应该在VRChat中工作! 如果您在创建切换按钮时弄乱了,您应该使用“切换按钮移除器”,转到“工具”>“切换按钮移除器”。这会自动执行删除过程。

高级切换按钮

但是,如果您想要做的不仅仅是打开或关闭对象呢?这就是高级切换按钮的用武之地。

这个头像有一件夹克,但里面还有一件衬衫。衬衫有一个混合形状,用于在夹克打开时挤压袖子,而在夹克关闭时张开。我想为夹克创建一个切换按钮,还可以控制衬衫的混合形状。

为此,

  1. 我将右键单击“jacketOpen”对象,
  2. 创建高级切换按钮,
  3. 然后在弹出的新窗口中,在“动画”下,我将单击加号按钮,
  4. 并搜索我想要更改的混合形状的名称,在这种情况下,混合形状名为“Shirt.sleeveSqueeze”,所以我可以简单地搜索“squeeze”,它将弹出。
  5. 然后我将启用“生成关闭动画”;
  6. 当混合形状设置为100时,袖子挤压,当它设置为0时,它张开,所以在动画中,当夹克打开时,我将它保持在100,当夹克关闭时,我将更改混合形状值到0。

这只是一个高级切换按钮的例子;您可以使用此工具创建许多其他内容,例如使用一个切换按钮在表达式菜单中控制多个对象的完全不同套装!