You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

我的世界1.8.9模组开发:方块物品栏纹理丢失问题求助

我的世界1.8.9 Forge模组物品栏方块纹理丢失问题

我正在开发我的世界1.8.9版本(Forge 11.15.1.2318)的模组。运行游戏时,模组方块对应的物品在物品栏中丢失纹理,但放置后的方块显示正常。

截图:物品栏纹理丢失截图


相关代码

ClientProxy.java

public class ClientProxy extends CommonProxy {

    @Override
    public void registerRenders() {
        ModItems.registerRenders();
        ModBlocks.registerRenders();
    }

}

ModBlocks.java

public class ModBlocks {

    public static Block vibranium_ore;
    public static Block vibranium_block;

    public static void init() {
        vibranium_ore = new BlockVibraniumOre("vibranium_ore");
        vibranium_block = new BlockVibraniumBlock("vibranium_block");
    }

    public static void register() {
        registerBlock(vibranium_ore);
        registerBlock(vibranium_block);
    }

    public static void registerRenders() {
        registerRender(vibranium_ore);
        registerRender(vibranium_block);
    }

    public static void registerBlock(Block block) {
        GameRegistry.registerBlock(block, block.getUnlocalizedName().substring(5));
        Logging.log("Registered Block: " + block.getUnlocalizedName().substring(5));
    }

    public static void registerRender(Block block) {
        Item item = Item.getItemFromBlock(block);
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0,
                new ModelResourceLocation(Reference.MODID + ":" + item.getUnlocalizedName().substring(5), "inventory"));
    }

}

模型配置

方块模型(vibranium_block.json)

{
    "parent": "block/cube_all",
    "textures": {
        "all": "legtech:blocks/res/pure/ingot/vb"
    }
}

物品模型(vibranium_block.json)

{
    "parent": "block/vibranium_block",
    "textures": {
        "layer0": "legtech:blocks/res/pure/ingot/vb"
    },
    "display": {
        "thirdperson": {
            "rotation": [ 10, -45, 170 ],
            "translation": [ 0, 1.5, -2.75 ],
            "scale": [ 0.375, 0.375, 0.375 ]
        }
    }
}

问题解决方法

1. 修正物品模型的父级引用

1.8.9 Forge中,物品模型继承方块模型时,必须使用带MODID的完整路径。修改物品模型的parent字段:

"parent": "legtech:block/vibranium_block"

2. 移除冗余的纹理定义

因为已经继承了方块模型的纹理配置,无需重复声明textures字段,简化后的物品模型如下:

{
    "parent": "legtech:block/vibranium_block",
    "display": {
        "thirdperson": {
            "rotation": [ 10, -45, 170 ],
            "translation": [ 0, 1.5, -2.75 ],
            "scale": [ 0.375, 0.375, 0.375 ]
        }
    }
}

3. 校验资源文件路径与命名

  • 方块模型文件需放在resources/assets/legtech/models/block/目录下,对应命名为vibranium_block.json、vibranium_ore.json
  • 物品模型文件需放在resources/assets/legtech/models/item/目录下,对应命名为vibranium_block.json、vibranium_ore.json
  • 纹理文件需存在于resources/assets/legtech/textures/blocks/res/pure/ingot/目录下,命名为vb.png

4. 确认MODID一致性

检查Reference.MODID的值是否为legtech,确保和模型、纹理中的命名空间完全匹配,否则会导致资源加载失败。

内容的提问来源于stack exchange,提问作者hye0ngit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 17:15:08