Minecraft 材质包制作入门 保姆级教程 (一)

这可能是最为保姆的一个Minecraft材质制作入门教程…

既然保姆,也就不讲适配mod和什么optfine的内容了!

对了,各位有兴趣可以访问一下我的博客,里面会定期更新一些学习资料,喜欢的话可以访问!


网址:hzdy.github.io

前期准备

其实就仅仅是改变游戏的外观(找到这个文章的应该都不会问这个问题)
首先我们得找到对应版本的原版材质。我们需要找到游戏的安装路径,然后把对应版本的jar文件给解压,解压出来它大概长这样:

Minecraft 材质包制作入门 保姆级教程 (一)_第1张图片

然后我们要创建一个Minecraft可以识别的资源包文件夹,再把texture放进去,大概长这样:

Minecraft 材质包制作入门 保姆级教程 (一)_第2张图片

mcmeta

这个mcmeta文件是Minecraft识别材质包的关键,里面的内容用的是json格式,大概长这样:

{
   "pack": {

"pack_format": 4,

"description": "我们的测试材质包"

   }

}

packformat

pack_format指的是我们材质包的版本号,以便Minecraft识别我们的材质包适用于什么版本,具体见下方:

  • Java版1.6至Java版1.8为1
  • Java版1.9至Java版1.10为2
  • Java版1.11至Java版1.12为3
  • Java版1.13至Java版1.14为4
  • Java版1.15需要5

(在pack_format 3和更高版本(1.11和更高版本)中,资源包中的所有文件名都只能有小写字母)

(来自Minecraft Wiki)

description

这是Minecraft在资源包列表显示的你的材质包的描述。不要漏掉引号!

pack.png

包的图标。如果自己的不幸,尝试64*64的(问题不大)

至此,材质包的基本结构已经搭建好了,我们可以将其倒入Minecraft中测试是否识别。


绘制普通的材质

方块

这里以更改玻璃的材质为例:

  • 明确要修改的地方:物品栏的贴图在item里,放置下来方块的贴图在block里

  • 开始绘制:Minecraft可以读取透明度数据(废话)所以你可以想怎么画就怎么画()废话

  • 绘画一般使用像素笔,画布大小由你想要的清晰度决定;高端点用Photoshop,(画图3D其实也可以),导出png文件

  • 画好之后复制回去,一般我习惯给原来的文件备份一下,防止出问题……

  • 打开游戏就可以看到你画的内容了!下面给出我画的玻璃的实例

glass

⬆️是不是啥也看不见?因为我画的是透明的(滑稽)
但是我保证我真的放了!

放回去时记得重命名成原来的名字!

实体

一般来说可以在entity里找到。

然后你需要用自己的全部想象力想象出它的展开图(你能想象下图的hoglin吗?)

Minecraft 材质包制作入门 保姆级教程 (一)_第3张图片

(我觉得有点困难)

其他

其实还有很多很多东西可以被修改,都可以在对应的文件夹里找到相应的内容。

绘制进阶的材质

3D材质

这个其实只需要多修改(如果没有,则需要新建)几个文件即可。

assets/minecraft/blockstates/你想修改的物品.json

assets/minecraft/models/block/你想修改的物品.json

assets/minecraft/models/item/你想修改的物品.json

assets/minecraft/textures/block/你想修改的物品.png

这样就可以开始编辑了(你可能需要一个3D编辑器)

动态材质

这个其实也简单,跟着一下步骤做。这里以更改末影珍珠的材质为动态举例

1、将想要的材质的每一帧画出来,并且从上到下拼接成一个长图

ender_pearl

注意这是一张长图!从上到下的帧的编号为0~15。

2、编写 你想修改的物品名.mcmeta 文件(依然是json)

{
  "animation": {
    "frames": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15
    ]
  }
}

这里frames从上到下便是它的播放顺序。

在animation里还可以添加其他的内容更好的控制动画的播放

width和height:控制每一帧的长与宽,如果没有默认1:1

frametime:设置每一帧的时间增量,不加默认为1

总结

其实画材质包,就是改一改贴图,没啥技术含量,最重要的是耐心和灵感。

如果没有灵感,可以先看看别的材质包修改了一些什么。

本教程可能有诸多不完美的地方,各位可以指出。

适配optfine和mod之类的……其实也不用多麻烦,可以直接在curseforge上下载一个材质包,然后寄生在里面

祝大家好运!

对了,各位有兴趣可以访问一下我的博客,里面会定期更新一些学习资料,喜欢的话可以访问!

我的博客网址:hzdy.github.io

你可能感兴趣的:(材质包,Minecraft,游戏,json,minecraft)