# Ep.16 — 控制器节点名称参考 (`Ctrl_*`)

本文档分享了 BipedPlus 默认生成的 `Ctrl_*` 控制器节点命名规范。
这是 OtakuSolutions 在 3dsMax 绑定工作中所采用的控制器命名约定。

如果您的团队没有内部绑定命名规范，可以参考本文档作为标准。
在进行自定义时，保持这些节点名称，可确保与 BipedPlus 的完全兼容性。


| | |
|---|---|
| Pattern | `Ctrl_*` |
| Left + Center nodes | **82** |
| Right nodes (mirror) | 72 |
| Total nodes | **154** |


### 字段说明

| 字段 | 说明 |
|------|------|
| `direction` | left / center |
| `part` | 骨架模块部件ID |


### Node List (82 — Left + Center)

| node | part | direction |
| --- | --- | --- |
| Ctrl_Move | sys | center |
| Ctrl_World | sys | center |
| Ctrl_Pelvis | spine | center |
| Ctrl_Spine | spine | center |
| Ctrl_Spine1 | spine | center |
| Ctrl_Spine2 | spine | center |
| Ctrl_Spine3 | spine | center |
| Ctrl_Spine4 | spine | center |
| Ctrl_Head | neck-head | center |
| Ctrl_Neck | neck-head | center |
| Ctrl_L_Clavicle_Main | arm | left |
| Ctrl_L_ForeArm_Arc | arm | left |
| Ctrl_L_ForeArm_Main | arm | left |
| Ctrl_L_Hand_Main | arm | left |
| Ctrl_L_UpperArm_Arc | arm | left |
| Ctrl_L_UpperArm_Main | arm | left |
| Ctrl_L_ForeArm_Seg1 | arm | left |
| Ctrl_L_ForeArm_Seg2 | arm | left |
| Ctrl_L_ForeArm_Seg3 | arm | left |
| Ctrl_L_ForeArm_Seg4 | arm | left |
| Ctrl_L_ForeArm_Seg5 | arm | left |
| Ctrl_L_UpperArm_Seg1 | arm | left |
| Ctrl_L_UpperArm_Seg2 | arm | left |
| Ctrl_L_UpperArm_Seg3 | arm | left |
| Ctrl_L_UpperArm_Seg4 | arm | left |
| Ctrl_L_UpperArm_Seg5 | arm | left |
| Ctrl_L_Finger0 | finger0 | left |
| Ctrl_L_Finger01 | finger0 | left |
| Ctrl_L_Finger02 | finger0 | left |
| Ctrl_L_Finger1 | finger1 | left |
| Ctrl_L_Finger11 | finger1 | left |
| Ctrl_L_Finger12 | finger1 | left |
| Ctrl_L_Finger2 | finger2 | left |
| Ctrl_L_Finger21 | finger2 | left |
| Ctrl_L_Finger22 | finger2 | left |
| Ctrl_L_Finger3 | finger3 | left |
| Ctrl_L_Finger31 | finger3 | left |
| Ctrl_L_Finger32 | finger3 | left |
| Ctrl_L_Finger4 | finger4 | left |
| Ctrl_L_Finger41 | finger4 | left |
| Ctrl_L_Finger42 | finger4 | left |
| Ctrl_L_Calf_Arc | leg | left |
| Ctrl_L_Calf_Main | leg | left |
| Ctrl_L_Foot_Main | leg | left |
| Ctrl_L_HorseLink_Arc | leg | left |
| Ctrl_L_HorseLink_Main | leg | left |
| Ctrl_L_Thigh_Arc | leg | left |
| Ctrl_L_Thigh_Main | leg | left |
| Ctrl_L_Toe0 | leg | left |
| Ctrl_L_Calf_Seg1 | leg | left |
| Ctrl_L_Calf_Seg2 | leg | left |
| Ctrl_L_Calf_Seg3 | leg | left |
| Ctrl_L_Calf_Seg4 | leg | left |
| Ctrl_L_Calf_Seg5 | leg | left |
| Ctrl_L_HorseLink_Seg1 | leg | left |
| Ctrl_L_HorseLink_Seg2 | leg | left |
| Ctrl_L_HorseLink_Seg3 | leg | left |
| Ctrl_L_HorseLink_Seg4 | leg | left |
| Ctrl_L_HorseLink_Seg5 | leg | left |
| Ctrl_L_Thigh_Seg1 | leg | left |
| Ctrl_L_Thigh_Seg2 | leg | left |
| Ctrl_L_Thigh_Seg3 | leg | left |
| Ctrl_L_Thigh_Seg4 | leg | left |
| Ctrl_L_Thigh_Seg5 | leg | left |
| Ctrl_L_BackA_Skirt1 | extra_skirt | left |
| Ctrl_L_BackA_Skirt2 | extra_skirt | left |
| Ctrl_L_BackA_Skirt3 | extra_skirt | left |
| Ctrl_L_BackA_Skirt4 | extra_skirt | left |
| Ctrl_L_FrontA_Skirt1 | extra_skirt | left |
| Ctrl_L_FrontA_Skirt2 | extra_skirt | left |
| Ctrl_L_FrontA_Skirt3 | extra_skirt | left |
| Ctrl_L_FrontA_Skirt4 | extra_skirt | left |
| Ctrl_L_Side_Skirt1 | extra_skirt | left |
| Ctrl_L_Side_Skirt2 | extra_skirt | left |
| Ctrl_L_Side_Skirt3 | extra_skirt | left |
| Ctrl_L_Side_Skirt4 | extra_skirt | left |
| Ctrl_L_Skirt_DP_Set | extra_skirt | left |
| Ctrl_L_Back_Hip | extra_hip | left |
| Ctrl_L_Front_Hip | extra_hip | left |
| Ctrl_L_Side_Hip | extra_hip | left |
| Ctrl_L_ForeArm_Cor | extra_forearm | left |
| Ctrl_L_Calf_Cor | extra_calf | left |

> **Right Side** — Replace `_L_` with `_R_` to get the mirrored node.
> e.g. `Ctrl_L_UpperArm_Main` → `Ctrl_R_UpperArm_Main`