LogoArcartX Doc
模型篇

物品附加模型

通过 NBT 为物品模型挂载附加模型

物品附加模型

物品模型支持在定位器上额外渲染附加模型。通过在物品的 NBT 中写入附加模型数据,即可在物品模型的指定位置叠加渲染其他模型。

典型应用场景:武器配件系统、装饰挂件、可组合的模块化装备。

普通物品模型和第一人称动画模型均支持此功能。

工作原理

  • 附加模型渲染在物品模型的指定定位器位置上
  • 每个定位器可以绑定一个附加模型

定位器依附于骨骼

将定位器创建在某个骨骼的下级,附加模型会继承该骨骼的旋转角度,跟随骨骼运动。

NBT 数据结构

附加模型数据存储在物品 NBT 的 extra_model 复合标签中,每个键值对表示一个定位器与模型的绑定关系:

{
  "extra_model": {
    "scope_extra": "scope_red_dot",
    "muzzle_extra": "suppressor"
  }
}
字段说明
键(Key)物品模型中的定位器名称
值(Value)要挂载的附加模型 ID

使用示例

模型准备

  1. 在物品模型中创建用于挂载配件的定位器(如 scope_extramuzzle_extra),注意,所有额外附加模型定位器需要以_extra 结尾。
  2. 准备配件模型

设置附加模型

  • 通过插件 API 或 NBT 编辑工具为物品写入 extra_model 数据。
  • 也可以直接通过 /a item setExtraModel <key> <value> 进行设置

写入后物品的 NBT 中会包含:

{
  "extra_model": {
    "scope_extra": "scope_red_dot",
    "muzzle_extra": "suppressor"
  }
}

效果预览

物品额外渲染效果

每个定位器只能绑定一个附加模型。重复写入同一定位器会覆盖之前的模型。移除某个配件只需删除对应的 NBT 键即可。

On this page