name: vrchat-gogo-loco-integration category: gaming description: GoGo Loco (NSFW Locomotion) 整合到已有 VRChat Avatar 的完整流程 — 基于 Modular Avatar 方案,含浮空/飞行/姿势控制。Cazalis zigai 项目专用。 trigger: 用户要求加飞行功能、浮空调节、GoGo Loco、NSFW Locomotion、姿势菜单
GoGo Loco 整合到 VRChat Avatar
背景
GoGo Loco(现已更名为 NSFW Locomotion)是 VRChat 最流行的动作/姿势/飞行系统,功能包括: - 飞行(上升/下降/前后移动) - 浮空高度调节(微调 Y 轴位置) - 姿势(蹲/趴/躺/坐/T-Pose 等) - 骨盆调整(前后/左右移动) - 世界调整(大小缩放)
已下载文件
| 文件 | 路径 | 说明 |
|---|---|---|
| GoGo Loco MA v0.0.12 | /root/data/disk/VRChat-Assets/GoGoLoco/fr.spokeek.gogoloco-ma-0.0.12.unitypackage |
⭐ 推荐 — Modular Avatar 版本,自动合并 |
| NSFW Locomotion v1.8.3 Full | /root/data/disk/VRChat-Assets/GoGoLoco/NSFW.Locomotion-v1.8.3-NSFW-1.1.1-Full.unitypackage |
完整版(需手动合并) |
| NSFW Locomotion v1.8.3 Poses | /root/data/disk/VRChat-Assets/GoGoLoco/NSFW.Locomotion-v1.8.3-NSFW-1.1.1-Poses-Only.unitypackage |
仅姿势版 |
方案选择
⭐ 方案 A:Modular Avatar 版本(强烈推荐)
为什么推荐: - Cazalis 项目 FX Controller 已有 22 个 Layer(含 4 个 4S_ 溶解层) - 手动合并 FX Controller 风险极高 — 可能破坏现有溶解系统 - MA 版本自动合并 Layer、参数、菜单,零冲突 - 安装后 MA 自动在构建时合并,不污染原始 FX Controller
前提条件: - 项目已安装 Modular Avatar(nadena.dev/modular-avatar) - 如果没装,需要先通过 VCC (VRChat Creator Companion) 安装 **: - 项目已安装 Modular Avatar(nadena.dev/modular-avatar) - 如果没装,需要先通过 VCC (VRChat Creator Companion) 安装### 方案 B:手动合并(不推荐,仅备用)
手动合并需要: 1. 将 GoGo Loco 的 FX Layer 逐个复制到 Cazalis FX Controller 2. 合并 VRCExpressionParameters(注意 256 bit 参数预算) 3. 合并 VRCExpressionsMenu(添加子菜单入口) 4. 修改 Locomotion Layer 引用
风险: - 22 个已有 Layer + GoGo Loco 约 6-8 个 Layer = 可能超出 Layer 数量限制 - 参数预算可能超 256 bit - 手动操作容易漏步骤
方案 A 操作步骤(Modular Avatar)
Step 0: 前置检查
- 确认项目已安装 Modular Avatar
- 在 Unity Package Manager 或 VCC 中查看
- 如果没有:通过 VCC 添加
nadena.dev/modular-avatar包 - 确认当前 FX Controller Layer 数量(应 ≤ 22)
- 确认当前参数预算使用量(应 < 200 bit,为 GoGo Loco 留空间)
- 备份当前项目(或 Git commit)
Step 1: 导入 GoGo Loco MA unitypackage
- 在 Unity 中:Assets → Import Package → Custom Package...
- 选择
/root/data/disk/VRChat-Assets/GoGoLoco/fr.spokeek.gogoloco-ma-0.0.12.unitypackage - 全选导入(Import All)
Step 2: 将 GoGo Loco Prefab 拖入场景
- 在 Project 窗口搜索
GoGo Loco或NSFW Locomotion - 找到 MA 版本的 prefab(通常在
Assets/GoGo Loco/Prefabs/或类似路径) - 将其拖为 Cazalis zigai 根节点的子对象
- Hierarchy:
Cazalis zigai→ 右键或拖入 - prefab 名称类似
GoGoLoco_MA或NSFWLoco_MA
Step 3: 配置 Modular Avatar 组件
拖入后,MA 自动处理以下合并: - Merge Animator — GoGo Loco 的 FX Layer 自动合并到 Cazalis FX Controller - Merge Parameter — GoGo Loco 的参数自动合并到 Cazalis Parameters - Menu Installer — GoGo Loco 的菜单自动安装到 Cazalis Menu
检查项:
- [ ] GoGo Loco prefab 上有 Merge Animator 组件,且 Layer Type = FX
- [ ] GoGo Loco prefab 上有 Menu Installer 组件
- [ ] Menu Installer 的 Install Target 留空(安装到根菜单)或指向 Cazalis 菜单
oco prefab 上有 Menu Installer 组件
- [ ] Menu Installer 的 Install Target 留空(安装到根菜单)或指向 Cazalis 菜单### Step 4: 验证参数预算
GoGo Loco 约使用 ~80-100 bit 参数。Cazalis 已有参数需确认总量不超 256 bit。
检查方法:
1. 选中 Cazalis zigai 根节点
2. 查看 VRCAvatarDescriptor → Expressions
3. 或在构建时查看 SDK 的参数预算警告
- 参数预算 ≤ 256 bit(含 GoGo Loco 新增参数)
Step 5: Play Mode 测试
- 进入 Play Mode
- 通过 Radial Puppet / Toggle 测试以下功能:
- 飞行开关(Fly Toggle)
- 浮空高度调节(Height Offset 滑条)
- 姿势切换(蹲/趴/躺等)
- 溶解换衣功能不受影响(切换 taozhuang 参数后衣服正常溶解)
- 飞行状态和衣服切换不冲突
Step 6: 上传验证
- SDK Build Panel 无错误
- 参数预算不超限
- 上传后游戏内测试飞行和换衣
⚠️ 注意事项
1. 参数预算
Cazalis 项目已有参数(taozhuang Int=8bit + 其他),GoGo Loco 新增约 80-100 bit。总预算 256 bit,需确认不超。
2. Layer 数量
VRChat 对 FX Layer 数量没有硬性限制,但 Layer 过多会影响性能。Cazalis 已有 22 层 + GoGo Loco 约 6-8 层 = ~30 层,应在可接受范围。
3. 飞行与换衣的交互
飞行通过根骨骼位移实现,换衣通过材质溶解+m_IsActive 实现。两者控制不同属性,理论上不冲突。但需测试: - 飞行状态下换衣,溶解动画是否正常 - 换衣状态下起飞,衣服状态是否保持
4. Modular Avatar 构建时行为
MA 在 SDK Build 时执行合并:
- Editor 中看到的 FX Controller 不包含 GoGo Loco 的 Layer
- 构建后的临时 Controller 才包含合并结果
- 如果需要调试,可以在 Temp/ 目录找到构建产物
5. 如果不想用 MA(方案 B 简要步骤)
- 导入 NSFW Locomotion Full unitypackage
- 打开 GoGo Loco 的 FX Controller,记录所有 Layer
- 在 Cazalis FX Controller 末尾逐个添加这些 Layer
- 将 GoGo Loco 的参数添加到 Cazalis VRCExpressionParameters
- 在 Cazalis VRCExpressionsMenu 添加 GoGo Loco 子菜单入口
- 替换 Locomotion Layer 的 Animator 为 GoGo Loco 版本
方案 B 风险极高,不推荐用于已有复杂 FX Controller 的项目。 o 子菜单入口 6. 替换 Locomotion Layer 的 Animator 为 GoGo Loco 版本
方案 B 风险极高,不推荐用于已有复杂 FX Controller 的项目。## 浮空高度调节原理
GoGo Loco 的浮空/飞行功能核心原理:
- 高度调节:通常是一个 Radial Puppet(滑条),控制根骨骼 Y 位移 -1~+1 米
- 飞行:Bool 开关 + Float 上下速度参数,控制根骨骼 Y/Z 位移
- 这些都是 Avatar 3.0 本地位移,别人看你也是浮空的(参数同步)
相关技能
- [[vrchat-unity-mcp]] — Unity MCP 远程操作
- [[cazalis-dissolve-system-v3]] — Cazalis 溶解换衣系统