具有特殊功能的组名
具有特殊功能的组名
在枪械模型中,一些特殊的组名与预定义的特殊功能绑定并具有相应的硬性要求。
本章节将作为索引介绍这些组名的要求和功能,以便您在制作枪械模型时能够正确地分组,请务必仔细阅读。
对于一些具有复杂功能的组,你可以查看对应条目下的链接前往对应的独立页面。
提示
为了方便制作动画,你应该在制作模型时就考虑到如何分组才能更好地制作动画。
关于动画制作的分组推荐,参见 章节:动画模型分组
注意
只有完全一样的组名才能被程序正确识别,大小写敏感
如果你不想使用某些功能,请避开使用这些名称作为你的组名
具有硬性要求的组
重要
一般来说,一把普通的枪应该至少放置这些组
root
根组,除摄像机动画分组、各个定位组以外所有内容都应当在根组下。如果没有 root 组,默认动画将无法使用。
手臂定位组
手臂定位组是一对用于在第一人称渲染中定位手部模型的组,模型中这些组下的内容实际上会被程序忽略并替换为实际的玩家手部模型。
关于这部分内容,我们将在一个独立的章节 章节:手臂定位组 内进行讲解
视觉定位组
视觉定位组是一系列特殊的组,用于定位摄像机和调整不同视角下的模型变换,比如第一人称腰射/机瞄的摄像机位置或是第三人称的模型角度。
这些组下的实际内容也不会被渲染,仅作为定位组存在。
关于这部分内容,请参见 章节:视觉定位组
magazine
弹匣组,这包括默认弹匣和1-3级扩容弹匣,程序在渲染时会自动识别 magazine
组下的内容并根据情况调用对应模型。
如果你的枪械不允许扩容,那么扩容弹匣分组可以不放。
注意
如果枪械允许扩容,无论3个级别的扩容弹匣模型是否相同,都需放置全部3个扩容弹匣的分组
即使不同级别的扩容弹匣模型完全相同,你需要也拷贝三份相同的模型
以下是各级弹匣对应的组名
- 默认弹匣:
mag_standard
- 1级扩容弹匣:
mag_extended_1
- 2级扩容弹匣:
mag_extended_2
- 3级扩容弹匣:
mag_extended_3
constraint
约束组,制作约束动画时所使用的分组,参见 章节:动画约束ICA。
camera
摄像机动画分组,若要创建摄像机动画,则需在该分组下使用摄像机插件添加一个摄像机,当您k帧的时候请对摄像机分组 camera
进行。
其他具有特殊功能的组
additional_magazine
额外弹匣组,用于制作使用旧弹匣替换新弹匣(即画面同时出现两个弹匣)的动画。
包含该分组时,程序会在渲染此处额外渲染一份 magazine
组的内容。
警告
此分组的 枢纽点 应与弹匣组 magazine
完全相同
当您 导出动画 时请务必 确保此分组内容为空
此外,您 绝对不应该 把 additional_magazine
分组放在 magazine
分组下,否则会导致程序循环调用而使得游戏崩溃!
发光组
发光组并不是一个固定的组名,而是需要通过在模型中常规的组名后添加后缀_illuminated
来定义。
发光组下的块会在渲染时以满亮度渲染,一般用于在枪械模型中添加荧光效果,例如机瞄的荧光效果。
注意
请不要在其他固定组名后添加_illuminated
后缀,否则可能会导致程序无法正确识别固定组名而导致其功能失效。
文本组
文本组可以在枪械模型中显示一些文本信息,例如玩家名称、弹药数量等。
文本组同样不具有固定的组名,而是需要在枪械的 Display 文件中自行定义,而且可以定义复数个。
你首先需要在 Display 文件中添加text_show
以定义文本组:
{
// ...
"text_show": {
// 定位组名,与模型中的组名对应。
"ammo_count_text_pos": {
// 文本缩放,默认大小对于 BlockBench 里的 1
"scale": 0.35,
// 对齐方式:right,center,left
"align": "right",
// 阴影
"shadow": false,
// 文本颜色
"color": "#53f9af",
// 亮度:1-15
"light": 15,
// 支持在语言文件中定义,且支持PlaceholderAPI 风格的占位符
// 目前仅支持两个:%player_name% %ammo_count%
"text": "%player_name%"
},
"custom_text_show_2": {
// ...
}
// 更多的组...
}
}
然后你就可以在枪械模型中使用这些组名(ammo_count_text_pos
、custom_text_show_2
)了,渲染这些组时,程序会自动在模型上显示对应的文本。