76 lines
2.3 KiB
Markdown
76 lines
2.3 KiB
Markdown
---
|
||
front:
|
||
hard: 进阶
|
||
time: 20分钟
|
||
---
|
||
|
||
# 继承鸡的动画
|
||
|
||
|
||
|
||
#### 作者:境界
|
||
|
||
|
||
|
||
将green_head_duck.geo.json放入材质包中,models文件夹的entity文件夹内。
|
||
|
||
将green_head_duck.png放入材质包中,textures文件夹内的entity文件夹里。
|
||
|
||
在材质包中的entity文件夹里,新建一个green_head_duck.entity.json文件。
|
||
|
||
```
|
||
{
|
||
"format_version": "1.10.0",
|
||
"minecraft:client_entity": {
|
||
"description": {
|
||
"identifier": "design:green_head_duck",
|
||
"render_controllers": [
|
||
"controller.render.default"
|
||
],
|
||
"textures": {
|
||
"default": "textures/entity/green_head_duck"
|
||
},
|
||
"geometry": {
|
||
"default": "geometry.green_head_duck"
|
||
},
|
||
"materials": {
|
||
"default": "entity_alphatest"
|
||
},
|
||
"animations": {
|
||
"move": "animation.chicken.move",
|
||
"look_at_target": "animation.common.look_at_target"
|
||
},
|
||
"scripts": {
|
||
"animate": [
|
||
{ "move": "query.modified_move_speed" },
|
||
"look_at_target"
|
||
]
|
||
},
|
||
"spawn_egg": {
|
||
"base_color": "#256143",
|
||
"overlay_color": "#dd9238"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
|
||
|
||
1)首先我们将名称域定义为design:green_head_duck。
|
||
|
||
2)接着我们使用原版默认的基础渲染控制器,"controller.render.default",它会控制生物渲染成一份由一个模型、一张贴图、一份材质组合的生物形象。
|
||
|
||
3)接着在textures中,我们将贴图资源路径指向存放在textures/entity里的green_head_duck贴图,请注意在这里,你不需要写出贴图文件后缀名。
|
||
|
||
4)在geometry中,我们将模型资源指向前面做好的几何体模型上。在项目一开始时,我们导出的模型是由鸡模型魔改而成,因此,打开水鸭模型时,模型的名称域依旧是geometry.chicken,为了避免资源冲突,需要提前将这里改为geometry.green_head_duck。
|
||
|
||
5)在materials中,将材质设置为entity_alphatest,它将允许生物使用带有透明通道的贴图。
|
||
|
||
6)在animations下,加载鸡的移动动画和注视动画。
|
||
|
||
7)在scripts/animate下,将动画加载上去。
|
||
|
||
8)在spawn_egg里,我们新增两个属性键值,一个是"base_color",值为"#256143",这是代表着一种深绿色的颜色色量,而值代表蛋的基础颜色。新增一个“overlay_color“,值为"#dd9238",而值代表蛋的斑点颜色。
|
||
|