Files
2025-08-25 18:36:29 +08:00

65 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
front: https://nie.res.netease.com/r/pic/20211104/69055361-2e7a-452f-8b1a-f23e1262a03a.jpg
hard: 高级
time: 20分钟
---
# 挑战制作一个3D盔甲
接下来,我们为我们上一节中添加的盔甲挂接一个模型。所使用的模型可在[3D盔甲资源包](https://g79.gdl.netease.com/addonguide-9.zip)下载。
## 准备3D盔甲模型
3D盔甲模型本质上就是一个实体模型所以我们可以用Blockbench来制作这样的模型。在玩法地图教程中我们一起制作了很多模型这些模型都可以在玩法地图教程的示例包中下载找到。我们拿出一个T恤衫模型`.bbmodel`文件在Blockbench中打开。
![](./images/9.5_export.png)
我们通过Blockbench的导出功能将模型的**几何****Geometry**导出为JSON文件。然后将这个文件和纹理文件一起准备好将其导入到编辑器中。
![](./images/9.5_import_geo.png)
将几何文件放置在资源包的`models/entity`下。
![](./images/9.5_import_texture.png)
将纹理文件放在`textures/models/armor`下。事实上,纹理文件不像几何文件那么严格,因此放在其他文件夹中也是可以的。但是,为了和原包保持一致,且避免和其他附加包冲突,我们还是作此安排。
## 编辑附着物
我们打开我们的附着物JSON定义文件。我们需要将附着物的几何和纹理修改为我们自己的资源。
```json
{
"format_version": "1.8.0",
"minecraft:attachable": {
"description": {
"identifier": "tutorial_demo:armor",
"geometry": {
"default": "geometry.mc_t-shirt" // 修改此处
},
"materials": {
"default": "armor",
"enchanted": "armor_enchanted"
},
"textures": {
"default": "textures/models/armor/mc_t-shirt", // 修改此处
"enchanted": "textures/misc/enchanted_item_glint"
},
"render_controllers": [
"controller.render.armor"
],
"scripts": {
"parent_setup": "variable.chest_layer_visible = 0.0;"
}
}
}
}
```
我们按照上述写法进行修改,这样,我们的几何和默认纹理就修改成功了。
![](./images/9.5_t-shirt_in-game.png)
![](./images/9.5_t-shirt_preview.png)
打开游戏自测观察效果,我们可以看到,盔甲穿着到身上之后确实显示出了应有的模型和纹理!