title: Cazalis FX Controller 原版备份 description: Cazalis zigai 原版 FX.controller 完整参数列表、Layer 结构和改造规则 created: 2026-05-09 updated: 2026-05-09 type: reference tags: [vrchat, cazalis, animator, fx-controller, backup]
Cazalis_FX.controller 原版完整备份
创建日期:2026-05-09 模型:Cazalis zigai 路径:
Assets/Cazalis/Animation/Animator/Cazalis_FX.controller用途:此文件为原版备份,不要直接修改!需要改模时先复制一份到新文件
参数列表(40个)
FX Controller 中的参数类型可能与 VRCExpressionParameters 不同(Bool ↔ Float 自动转换) 一份到新文件**
参数列表(40个)
FX Controller 中的参数类型可能与 VRCExpressionParameters 不同(Bool ↔ Float 自动转换)### FX Controller 参数
FX Controller 参数```
IsLocal | Bool | default=0 Viseme | Int | default=0 Voice | Float | default=0 GestureLeft | Int | default=0 GestureRight | Int | default=0 GestureLeftWeight | Float | default=0 GestureRightWeight| Float | default=0 Seated | Bool | default=0 AFK | Bool | default=0 InStation | Bool | default=0 VRCEmote | Int | default=0 MMD | Bool | default=0 DisableHandsInput | Bool | default=0 GestureExpression_OFF | Bool | default=0 Weight | Float | default=1 Hand_Animation_ON | Bool | default=0 Breasts_Size | Float | default=0 Futomomo_Phys_ON | Float | default=0 Futomomo_Size | Float | default=0 Face_Pattern | Int | default=0 Butterfly_ON | Bool | default=0 Bra_ON | Float | default=0 Brooch_ON | Float | default=0 Dress_ON | Bool | default=0 DressSkirt_ON | Float | default=1 Pumps_ON | Float | default=1 Socks_ON | Float | default=1 HairAccessories_ON| Float | default=0 Ahoge_OFF | Float | default=0 BackHair_Long_ON | Float | default=0 Bangs_Alternate_ON| Float | default=0 Bangs_Long_ON | Float | default=0 Bangs_Left_ON | Float | default=0 HalfUp_OFF | Float | default=0 SideHair_Long_ON | Float | default=0 Face_Loli_ON | Bool | default=0 Face_Adult_ON | Bool | default=0 Face_Deformer_ON | Bool | default=0 Facial_Another_ON | Bool | default=0 BackLight_O | default=0 Face_Deformer_ON | Bool | default=0 Facial_Another_ON | Bool | default=0 BackLight_O | default=0 Face_Deformer_ON | Bool | default=0 Facial_Another_ON | Bool | default=0 BackLight_ON | Float | default=0 Shorts_ON | Float | default=1
| Bool | default=0
BackLight_ON | Float | default=0
Shorts_ON | Float | default=1
```### AnimatorCondition Mode 对照
| 值 | 含义 |
|----|------|
| 1 | If(参数 == threshold) |
| 2 | IfNot(参数 != threshold) |
| 3 | Greater |
| 4 | Less |
| 6 | Equals(Int) |
| 7 | NotEqual(Int) |
---
## Layer 结构详解
### Layer 0 | Right Hand
- weight=1, blend=Override, defaultState=Idle
- 19个 AnyState 过渡 + 15个姿态状态
- 全部 wd=True, speed=1
- 子状态:Peace_1/2, Point_1/2, Gun_1/2, Open_1/2, Idle, Fist_1/2, Thumbs up_1/2, RockNRoll_1/2
- 对应 Clip: Wink1, Jitome1, Surprise, Dummy, Smile3, Doya, Donbiki, Wink2, Jitome2, Pero, Dummy, Smile1, Kirakira, Utsuro
### Layer 1 | Left Hand
- 结构同 Layer 0,GestureLeft 代替 GestureRight
### Layer 2 | Blink_Control
- defaultState=Blink_ON,状态:Blink_ON(Cazalis_Blink),Blink_OFF(Dummy)
### Layer 3 | Hand_Animation_ON
- 3个状态:Hand_Animation_ON, Hand_Animation_OFF, Dummy(全部 Dummy clip)
### Layer 4 | Face_Pattern
- 9个状态(0-8号表情),AnyState 切换
### Layer 5 | LipSync_Control
- LipSync_OFF(Dummy)↔ LipSync_ON(Cazalis_Lipsync_ON)
### Layer 6 | Morph_Override
- Live → AFK / Emote Die 切换
### Layer 7 | Butterfly_ON
- 4状态循环:OFF → Appearance → ON → Disappearance → OFF
### Layer 8-12 | Butterfly 动画层
- Layer 8: Move, Layer 9: Flapping, Layer 10: Rotation
- Layer 11: **Additive**(唯一非Override层), Layer 12: AFK
---
ve, Layer 9: Flapping, Layer 10: Rotation
- Layer 11: **Additive**(唯一非Override层), Layer 12: AFK
---### Layer 13 | Dress_ON ⚠️ 核心改造目标
- weight=1, blend=Override
- **结构**:两个状态(Dress_ON + Dress_OFF)+ Transition 条件
- **默认状态**:Dress_OFF
- **Dress_ON → Dress_OFF**:`Dress_ON If(1) 0`(Toggle OFF时脱衣)
- **Dress_OFF → Dress_ON**:`Dress_ON IfNot(2) 0`(Toggle ON时穿衣)
- **Dress_ON.anim**:Cloth_Dress.m_IsActive=1, Cloth_DressRibbon.m_IsActive=1
- **Dress_OFF.anim**:Cloth_Dress.m_IsActive=0, Cloth_DressRibbon.m_IsActive=0
- ⚠️ **不要改成 BlendTree 方式**,必须用**状态+Transition**
### Layer 14 | Cloth_Option ⚠️ 核心改造目标
- weight=1, blend=Override, defaultState=Cloth_Option
- **BlendTree**:Direct,主参数=Voice,7个子项全部 dp=Weight
| # | 名称 | threshold | Inner param | 说明 |
|---|------|-----------|-------------|------|
| 0 | Bra_ON | 0.0000000 | Bra_ON | Bra_OFF(Bra_OFF.anim) ↔ Bra_ON(Bra_ON.anim) |
| 1 | Brooch_ON | 0.1666667 | Brooch_ON | |
| 2 | DressSkirt_ON | 0.3333333 | DressSkirt_ON | |
| 3 | Pumps_ON | 0.5000000 | Pumps_ON | |
| 4 | Shorts_ON | 0.6666667 | Shorts_ON | Shorts_OFF(Shorts_OFF.anim) ↔ Shorts_ON(Shorts_ON.anim) |
| 5 | Socks_ON | 0.8333333 | Socks_ON | |
| 6 | HairAccessories_ON | 1.0000000 | HairAccessories_ON | |
每个 Inner BlendTree 是 Simple1D, useAutomaticThresholds=true
Inner children 的 directBlendParameter = "Voice"
### Layer 15 | Face_Option
- 5个状态:Idle, Face_Deformer_ON, Face_Adult_ON, Face_Loli_ON, OFF
### Layer 16 | Hair_Face_Options
- Direct BlendTree, param=Voice, 7 children(Ahoge, BackHair, Bangs×3, HalfUp, SideHair)
Face_Options
- Direct BlendTree, param=Voice, 7 children(Ahoge, BackHair, Bangs×3, HalfUp, SideHair)### Layer 17 | Option
- Direct BlendTree, param=Weight, 4 children(Futomomo_Size, Futomomo_Phys, Breasts_Size, BackLight)
---
rect BlendTree, param=Weight, 4 children(Futomomo_Size, Futomomo_Phys, Breasts_Size, BackLight)
---## VRCExpressionParameters(28个参数)
路径:`Assets/Cazalis/Animation/EXMenu/Cazalis_Parameter.asset`
## VRCExpressionParameters(28个参数)
路径:`Assets/Cazalis/Animation/EXMenu/Cazalis_Parameter.asset````
VRCEmote | Int | saved=true | default=0
VRCFaceBlendH | Float | saved=true | default=0
VRCFaceBlendV | Float | saved=true | default=0
Breasts_Size | Float | saved=true | default=0
Face_Pattern | Int | saved=false | default=0
Butterfly_ON | Bool | saved=true | default=0
Bra_ON | Bool | saved=true | default=0
Brooch_ON | Bool | saved=true | default=1
Dress_ON | Bool | saved=true | default=1
DressSkirt_ON | Bool | saved=true | default=1
Pumps_ON | Bool | saved=true | default=1
Socks_ON | Bool | saved=true | default=1
HairAccessories_ON| Bool | saved=true | default=1
Hand_Animation_ON | Bool | saved=true | default=0
Futomomo_Size | Float | saved=true | default=0
Futomomo_Phys_ON | Bool | saved=true | default=0
Ahoge_OFF | Bool | saved=true | default=0
BackHair_Long_ON | Bool | saved=true | default=0
Bangs_Alternate_ON| Bool | saved=true | default=0
Bangs_Long_ON | Bool | saved=true | default=0
Bangs_Left_ON | Bool | saved=true | default=0
HalfUp_OFF | Bool | saved=true | default=0
SideHair_Long_ON | Bool | saved=true | default=0
Face_Deformer_ON | Bool | saved=true | default=0
Face_Loli_ON | Bool | saved=true | default=0
Face_Adult_ON | Bool | saved=true | default=0
Facial_Another_ON | Bool | saved=true | default=0
BackLight_ON | Bool | saved=true | default=0
er_ON | Bool | saved=true | default=0 BackLight_ON | Bool | saved=true | default=0
---## 所有 AnimationClip 的完整绑定路径
路径:`Assets/Cazalis/Animation/FX/`
### 服装类(m_IsActive 控制)
| Clip | 目标对象 | 属性 | 值 |
|------|---------|------|-----|
| Bra_ON.anim | Cloth_Under_Bra | m_IsActive | 1 |
| Bra_OFF.anim | Cloth_Under_Bra | m_IsActive | 0 |
| Shorts_ON.anim | Cloth_Under_Shorts | m_IsActive | 1 |
| Shorts_OFF.anim | Cloth_Under_Shorts | m_IsActive | 0 |
| Dress_ON.anim | Cloth_Dress, Cloth_DressRibbon | m_IsActive | 1 |
| Dress_OFF.anim | Cloth_Dress, Cloth_DressRibbon | m_IsActive | 0 |
| DressSkirt_ON.anim | Cloth_DressSkirt | m_IsActive | 1 |
| DressSkirt_OFF.anim | Cloth_DressSkirt | m_IsActive | 0 |
| Pumps_ON.anim | Cloth_Pumps | m_IsActive | 1 |
| Pumps_OFF.anim | Cloth_Pumps | m_IsActive | 0 |
| Socks_ON.anim | Cloth_Socks | m_IsActive | 1 |
| Socks_OFF.anim | Cloth_Socks | m_IsActive | 0 |
| Brooch_ON.anim | Cloth_Dress | blendShape.Brooch_x | 0 |
| Brooch_OFF.anim | Cloth_Dress | blendShape.Brooch_x | 100 |
### 内衣联动
| Clip | 控制对象 |
|------|---------|
| BraShorts_Hide.anim | Cloth_Under_Bra.m_IsActive=0, Cloth_Under_Shorts.m_IsActive=0 |
| BraShorts_Restore.anim | Cloth_Under_Bra.m_IsActive=1, Cloth_Under_Shorts.m_IsActive=1 |
ctive=0 |
| BraShorts_Restore.anim | Cloth_Under_Bra.m_IsActive=1, Cloth_Under_Shorts.m_IsActive=1 |### VRCAvatarDescriptor 配置
specialAnimationLayers[0] Sitting | null specialAnimationLayers[1] TPose | null specialAnimationLayers[2] IKPose | null
customExpressions = True expressionsMenu = Assets/Cazalis/Animation/EXMenu/Cazalis_Menu.asset expressionParameters = Assets/Cazalis/Animation/EXMenu/Cazalis_Parameter.asset customizeAnimationLayers = True ```
改造规则(必读)
- 绝不在原版
Cazalis_FX.controller上直接修改 - 每次改造前:先复制 →
Cazalis_FX_Modified.controller,在副本上操作 - 修改前先读此备份对照,确认原版结构
- 新建 Inner BlendTree 时必须用
AssetDatabase.AddObjectToAsset(bt, controller)序列化 - Inner children 的
directBlendParameter = "Voice" - 所有不确认的 C# API 先写小测试验证
- 改完后全面验证所有 Layer,不要只验证改的那一层