Minecraft Forge 1.8 - 加载方块纹理

14

我刚开始学习Java,同时在修改Minecraft游戏。我看了一个使用Minecraft Forge API向游戏中添加方块的教程,但是出现了问题。没有“.setBlockTextureName()”这个方法了,所以我不知道该怎么做。我已经将一个简单的方块添加到了游戏中,但是它没有纹理,我想为它添加一个纹理。那么在Minecraft 1.8中,我应该怎么做呢?

P.S.: 如果这是一个重复的问题,我很抱歉,我只看到有关Minecraft生物的问题,没有关于1.8版本纹理的问题(请记住,1.8版本的Forge API与其他所有版本都不同),因此我决定自己问。

如果需要澄清任何事情,请告诉我!


2
我可以建议使用1.7吗?目前1.8似乎存在很多问题,而大多数玩模组的Minecraft玩家都在使用1.7。 - user253751
2
版本1.8相对较新,我建议在更稳定的Forge版本发布之前使用1.7版本。 - EDToaster
2
嗯,我想我可以。我的意思是,1.8主要是增加了方块。我想我会回到1.7,但知道如何修改1.8也不错。 - MrStank
2个回答

23

在1.8中,纹理贴图有很大的不同。以下是一些教程:

更新方块
更新物品

对于以上两者:

  • 从主mod类中删除任何GameRegistry.registerBlock。现在应该在块/物品的构造函数中。
  • 添加一个private final name字段并创建一个getter。

对于方块

在`src/main/resources/assets/{MODID}/models/block`中,您需要2个JSON文件。 第一个应该被称为`{BLOCKNAME}.json`并包含以下内容: { "parent": "block/cube_all", "textures": { "all": "{MODID}:blocks/{BLOCKNAME}" } }
第二个文件名相同,位于`src/main/resources/assets/{MODID}/models/item`中,并包含以下代码: { "parent": "{MODID}:block/{BLOCKNAME}", "display": { "thirdperson": { "rotation": [ 10, -45, 170 ], "translation": [ 0, 1.5, -2.75 ], "scale": [ 0.375, 0.375, 0.375 ] } } }
现在,在`src/main/resources/assets/{MODID}/blockstates`中,您需要另外一个JSON文件。与上述文件名称相同,它应包含以下代码: { "variants": { "normal": { "model": "{MODID}:{BLOCKNAME}" } } }

您应该将{MODID}{BLOCKNAME}分别替换为您的模组ID和方块名称。


0

我建议阅读Minecraft Modding

Minecraft在1.8中渲染方块的方式发生了重大变化。以前,方块的形状是在Java代码中定义的。这意味着(例如)BlockTorch始终具有相同的形状,只能更改纹理。Minecraft现在使用模型文件来定义形状和纹理。

特别是上述页面中的“一些关键点的澄清”。

另请参阅:Block models


1
我现在已经加入一个团队制作游戏了。:) 谢谢你的建议,不过我一直想做一个有趣的 Minecraft 模组。lol - MrStank

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接