箭矢动画
约 532 字大约 2 分钟
2025-02-04
从 1.2.0 版本开始,我们加入的箭矢的自定义,允许修改箭矢模型和模型动画。
在 2.2.1 版本之后,如果需要制作自定义箭矢,需要在 ysm.json
中声明相关文件,否则更改将不会生效。
使用 YSM 插件
在插件的模型信息页面中,点击侧边栏的 箭相关文件
:
在右侧点击如图所示按钮导入对应的文件:
填写完成且确认无误后,点击下方的确认按钮保存信息:
手动填写
首先,打开你模型的 ysm.json
,找到 files
字段,在里面新建名为 arrow
的字段,然后按照下面的格式填写:
"files": {
"player": {
// 玩家模型部分
},
// 在这之后添加箭矢模型和动画
"arrow": {
// 箭矢模型
"model": "models/arrow.json",
// 箭矢动画
"animation": "animations/arrow.animation.json",
// 箭矢材质
"texture": "textures/arrow.png"
}
}
如果你的箭矢贴图使用 PBR 材质,那么 texture
字段需要这么填写:
"arrow": {
"model": "models/arrow.json",
"animation": "animations/arrow.animation.json",
// 如果您要使用 PBR ,请按如下格式修改
"texture": {
// uv 字段必选,以下两种 PBR 材质为可选,都不填则按照正常贴图处理
"uv": "textures/arrow.png",
// Oculus 和 Iris PBR 支持
"normal": "textures/arrow_n.png",
"specular": "textures/arrow_s.png"
}
}
注意
如果你要制作自定义箭矢,请务必填写此处。如果你制作的自定义箭矢不起作用,那么先查看这一处是否声明了文件
动画清单
如下动画是可自定义的箭矢动画,默认模型的箭矢动画文件为 arrow.animation.json
:
名称 | 作用 |
---|---|
water | 箭矢在水中的动画,优先度高,可被并行动画覆盖 |
fire | 箭矢着火的动画,优先度高,可被并行动画覆盖 |
ground | 箭矢落地时的动画,优先度低,被其他动画覆盖 |
air | 箭矢在空中飞行时的动画,优先度低,被其他动画覆盖 |
parallel0 parallel1 parallel2 parallel3 parallel4 parallel5 parallel6 parallel7 | 并行动画,优先度高,不可覆盖 |