将材质包从《我的世界》Java 版转换为《我的世界》基岩版

本文讨论将 Java 版资源包手动转换为基岩版材质包所需的一般任务。 实际创建自定义材质包的自定义材质和功能并不在本文讨论的范围内。 本文假设创建者对光栅图形编辑器(如 Adobe PhotoshopPaint 3DCorel PainterPaint.NET)有足够的知识和经验来创建和编辑必要的材质文件。 请注意,并非所有工具都支持所需的文件格式或 Alpha 通道。

在本教程中,您将学习以下内容:

  • 基岩版和 Java 版材质包之间的差异。
  • 将材质包从 Java 版转换为基岩版所需的更改。

要求

在开始本教程之前,建议完成以下内容:

Java 版和基岩版之间的材质包差异

总的来说,Java 版和基岩版的材质包区别如下:

  • 目录结构
  • 命名约定(文件名)
  • 文件格式(.png.tga
  • 文件类型(单面与 UV)
  • 定义动画材质等一些特征的方法
  • 元数据文件 (.json)。
内容 基岩版 注释
动画 flipbook_textures.json 控制的方块动画,可以自定义 外部站点:方块动画
刷怪蛋 单独的刷怪蛋材质
药水瓶 单独的药水瓶
彩色地图 .json .json 文件
透明或自发光 .tga 带有 alpha 通道的 .tga 文件,对于物品为 .png 一些具有透明或自发光像素的材质需要以 Targa (.tga) 文件格式保存,并为遮罩提供 Alpha 通道
粒子 完全数据驱动
几何形状 自定义生物几何体、UV 可以使用 BlockbenchBlender 等程序更新几何形状

最佳实践

首先准备一个有效的自定义 Java 版材质包的副本和基岩版原版材质包的副本。 转换过程将使用 Java 版材质包中的自定义材质文件替换基岩版原版材质文件。 某些必需的基岩版材质文件具有不同的文件格式和文件类型,还需要创建一些在 Java 版包中不存在的材质。 Java 版材质包中的高级自定义不一定会在基岩版材质包中复制,这些内容不在本文的讨论范围。

  • 获取最新版本的基岩版原版材质包以供参考。
  • 下载最新的基岩版资源包,其中包含材质。
  • 并排设置文件资源管理器窗口 -- 一个带有 Java 版材质包,一个带有基岩版原版材质包。 此基岩版原版包将在此过程结束时成为您自定义的基岩版材质包,因为原版材质文件将替换为您的自定义文件。
  • 获取并安装最新版本的《我的世界》基岩版游戏应用。
  • 按照全面的 Java 版与基岩版 (WIP) 材质数据库比较特定的材质文件。
  • 通常,将您的 Java 版材质文件复制到基岩版原版材质包的副本中。 确保复制的每个 Java 版文件都替换了现有的基岩版文件。 如果没有对应的基岩版文件,则不需要,也不应该出现在基岩版材质包中。
  • 相反,基岩版中的某些材质在 Java 版中不存在,或者具有不同的类型或格式。 参考 Java 版与基岩版 材质数据库了解细节和/或比较相应的 Java 版和基岩版材质文件以了解差异。

不存在: 不要复制任何在基岩版原版材质包中不存在的 Java 版文件。 这包括 .mcmeta 文件。

不替换: 不要复制任何 Java 版非材质文件,包括数据文件。

无变化: 许多材质不需要任何变化,可以直接放入基岩版材质包中。 开始用文件名完全相同的 Java 版材质文件替换基岩版原版材质包中的材质。 测试修改后的包并验证替换的文件是否在游戏中可见。 对所有材质重复该过程,无需更改文件名,直到完成。

仅更改名称: 对于基岩版,许多材质只需要更改文件名。 将您的 Java 版材质文件名更改为其对应的基岩版文件名,并替换基岩版原版材质包中的文件名。 在游戏中测试材质包以验证这些材质是否有效。

需要更改格式: 与 Java 版材质不同,基岩版使用 Alpha 通道来实现透明度。 对于基岩版,一些具有透明度的材质可能需要以 TGA 格式保存。 如果您的材质在 PNG 中渲染不正确,请转换为 TGA 并在 alpha 通道中使用遮罩指示透明像素(白色为纯色,黑色为透明)。 请注意,虽然 PNG 可以工作,但 TGA 是首选格式。

  • 对于支持自发光的方块,自发光像素表示为 alpha 通道蒙版。 请注意,透明度和自发光是互斥的。 (例如:幻眼、蜘蛛眼、末影人眼等)
  • 对于支持染料颜色的方块和物品以及实体,被染料着色的区域在带有灰色像素(不是黑色或白色)的 alpha 通道蒙版中定义。 (例如:皮革盔甲、焰火弹。)

需要新的材质文件: 基岩版中的一些材质需要创建额外的材质。 示例包括药水和刷怪蛋。 在 Java 版中,基础材质会被游戏自动重新着色,但在基岩版中,每个颜色材质都必须明确定义。 例如,每个生物刷怪蛋必须有自己的材质文件。

需要更改文件类型: 对于某些方块和实体,基岩版需要 UV 贴图而不是每个面的单独文件。 需要将各个 Java 版材质组合成一张 UV 贴图,并在需要时使用 alpha 通道。 例如,pig_saddle.png 包含完整的 pig 材质,而不仅仅是 saddle 材质。

翻页动画: 在 Java 版中,材质动画帧在单独的 .mcmeta 文本文件中定义,而基岩版将所有材质动画定义合并到一个 flipbook_textures.json 文件中。 通常,您可以在 flipbook_textures.json 中编辑相应的动画定义以反映 .mcmeta 文件中的自定义。

将更改打包

Java 版材质文件夹子目录 基岩版材质文件夹子目录
block blocks
colormap colormap
effect :---
entity entity
environment environment
font :---
gui gui
item items
map map
misc misc
models models
painting painting
particle particle
:--- persona_thumbnails
Java 版材质文件名示例 基岩版材质文件名示例
beehive_end.png beehive_top.png
honeycomb_block.png honeycomb.png
honey_block_bottom.png honey_bottom.png
honey_block_side.png honey_side.png
honey_block_top.png honey_top.png
wither_rose.png flower_wither_rose.png
block_iron.png iron_block.png

高级选项

以下高级技术和选项超出了本文的范围,包括:

  • 高清材质及相关问题
  • 自定义 animation_controllers.json
  • 自定义 UI
  • 自定义模型几何
  • 自定义动画材质
  • 自定义声音
  • 自定义行为包

下一步内容?

如需了解有关使用材质的资源包的更多信息,请参阅资源包教程。