定位锚点
为了确保游戏中的装备(武器、护甲、背包等)能够正确绑定到自定义模型上,模型 Prefab 需要包含相应的定位锚点(Locator)GameObject。
必需的定位锚点
模型 Prefab 的子对象中需要包含以下名称的 Transform 作为定位锚点,缺少锚点会导致无法显示指定位置的物品或装备,设置锚点的Transform缩放为0来隐藏物品或装备:
| 定位锚点 | 用途 |
|---|---|
LeftHandLocator | 左手定位锚点,用于绑定左手装备,比如弓 |
RightHandLocator | 右手定位锚点,用于绑定右手装备,比如枪 |
ArmorLocator | 护甲定位锚点,用于绑定护甲装备 |
HelmetLocator | 头盔定位锚点,用于绑定头盔装备,还有血条 |
FaceLocator | 面部定位锚点,用于绑定面部装备 |
BackpackLocator | 背包定位锚点,用于绑定背包装备 |
MeleeWeaponLocator | 近战武器定位锚点,用于绑定近战武器装备 |
PopTextLocator | 弹出文本定位锚点,用于显示弹出文本 |
可选的定位锚点
除了必需的定位锚点外,模型还可以包含以下可选的定位锚点:
PaperBoxLocator
纸箱定位锚点,用于绑定纸箱
- 当自定义模型包含此定位锚点时,游戏中生成的纸箱会自动附加到此定位点
- 纸箱会跟随自定义模型的位置和旋转
- 如果模型不包含此定位锚点,纸箱将使用原始模型的定位点
CarriableLocator
可搬运物品定位锚点,用于绑定可搬运物品
- 当自定义模型包含此定位锚点时,角色搬运物品时会自动附加到此定位点
- 可搬运物品会跟随自定义模型的位置和旋转
- 搬运物品时会保存原始的位置、旋转和缩放信息,放下物品时会恢复
- 如果模型不包含此定位锚点,可搬运物品将使用原始模型的定位点
定位锚点的作用
- 模组会自动在自定义模型中搜索这些定位锚点
- 找到的定位锚点会被设置为游戏装备系统的绑定点
- 装备会按照定位锚点的位置和旋转进行绑定
- 如果某个定位锚点不存在,对应的装备将无法正确显示在自定义模型上
设置指南
创建定位锚点
- 在 Unity 中打开模型 Prefab
- 在模型的子对象中创建新的空 GameObject
- 将其重命名为相应的定位锚点名称
- 调整位置和旋转以匹配装备位置
位置参考
TIP
建议根据原始模型的装备位置来设置定位锚点的位置。参考游戏中的原始模型来确定正确的位置。
重要事项
WARNING
- 定位锚点的名称必须完全匹配(区分大小写)
- 定位锚点可以是空的 GameObject,只需要设置正确的位置和旋转
- 缺少必需的定位锚点会导致装备无法正确显示
小技巧
- 在游戏中测试模型,观察装备是否正确绑定
- 使用相同的装备类型与原始模型进行对比
- 如果装备位置不对,检查定位锚点的位置和旋转
- 如果想要隐藏某个部位的装备,可以在Unity把锚点大小缩放为0/0/0