Java Minecraft Forge 1.8-加载块纹理

Java Minecraft Forge 1.8-加载块纹理,java,minecraft,minecraft-forge,Java,Minecraft,Minecraft Forge,我刚开始在修改Minecraft时学习Java。我看过一个关于使用Minecraft Forge API在游戏中添加积木的教程,但我有一个问题。不再有“.setBlockTextureName()”方法,所以我不知道该怎么办。我有一个简单的块添加到我的游戏,但它没有纹理,我想添加一个纹理到它。对于Minecraft 1.8,我将如何执行此操作 注:如果这是重复的,我很抱歉,我只看到了关于Minecraft怪物的问题,没有看到1.8的纹理(记住,1.8的Forge API与其他版本不同),所以我决

我刚开始在修改Minecraft时学习Java。我看过一个关于使用Minecraft Forge API在游戏中添加积木的教程,但我有一个问题。不再有“.setBlockTextureName()”方法,所以我不知道该怎么办。我有一个简单的块添加到我的游戏,但它没有纹理,我想添加一个纹理到它。对于Minecraft 1.8,我将如何执行此操作

注:如果这是重复的,我很抱歉,我只看到了关于Minecraft怪物的问题,没有看到1.8的纹理(记住,1.8的Forge API与其他版本不同),所以我决定问自己


如果我需要澄清什么,请告诉我

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 ]
            }
        }
    }
    
    {
        "variants": {
            "normal": { "model": "{MODID}:{BLOCKNAME}" }
        }
    }
    
  • 现在在
    src/main/resources/assets/{MODID}/blockstates
    中,您还需要一个JSON文件。如果名称相同,则应包含以下代码:

    {
        "parent": "{MODID}:block/{BLOCKNAME}",
        "display": {
            "thirdperson": {
                "rotation": [ 10, -45, 170 ],
                "translation": [ 0, 1.5, -2.75 ],
                "scale": [ 0.375, 0.375, 0.375 ]
            }
        }
    }
    
    {
        "variants": {
            "normal": { "model": "{MODID}:{BLOCKNAME}" }
        }
    }
    
您应该分别用您的mod的ID和block的名称替换
{MODID}
{BLOCKNAME}

我建议阅读

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

特别是上页的“一些关键点的澄清”


另请参见:

我可以建议改用1.7吗?1.8目前似乎有很多问题,而且大多数玩修改版Minecraft的人都在玩1.7。1.8版本相对较新,我还建议使用1.7版本,直到更稳定的forge版本出现。嗯,我想我可以。我的意思是,1.8确实,主要是增加了块。我想我会再次使用1.7,但是知道如何修改1.8会很好。我现在已经开始和一个团队进行游戏了。:)谢谢你,不过,我一直在考虑做一个Minecraft mod的乐趣有一段时间了,哈哈。