Jump to content

[1.8] all items and blocks rendering as missing model texture.


Cleverpanda

Recommended Posts

All of my items and blocks are rendering as blocks with the "missing texture" texture. I read that when Items do this, it's a model issue but I cant see anything.

I'm going to focus on one item and see if you guys can see anything I've missed.

 

My item model is in src/main/resources/assets.minefantasy2.models.item/bluesteel_pick.json

It contains:

 

{

    "parent": "items/iron_pickaxe",

    "textures": {

        "layer0": "minefantasy2:items/Tool/bluesteel_pick"

    }

}

 

The texture is in src/main/resources/assets.minefantasy2.textures.items.Tool/bluesteel_pick.png

 

Both of these packages and files show up in my package window in eclipse.

 

Inside the class that registers tools in Init(): http://pastebin.com/w576pEC2

 

Item class: http://pastebin.com/ntyGpFct

 

My log doesn't have any "Model definition for location X not found" errors or "domain" Texture errors for this.

 

What It looks like in-game:

E4VN2Fk.png

I've been trying to figure this out for days now, please help guys!

Link to comment
Share on other sites

change your model file to this:

{
    "parent": "builtin/generated",
    "textures": {
        "layer0": "minefantasy2:items/Tool/bluesteel_pick"
    },
    "display": {
        "thirdperson": {
            "rotation": [ 0, 90, -35 ],
            "translation": [ 0, 1.25, -3.5 ],
            "scale": [ 0.85, 0.85, 0.85 ]
        },
        "firstperson": {
            "rotation": [ 0, -135, 25 ],
            "translation": [ 0, 4, 2 ],
            "scale": [ 1.7, 1.7, 1.7 ]
        }
    }
}

Link to comment
Share on other sites

hand write out this instead to rule out an issue in your text manipulation

 

    renderItem.getItemModelMesher().register(item, 0, new ModelResourceLocation(MODID + ":" +      item.getMaterial().name()+"_pick", "inventory"));

 

 

I notice in your path to the texture you have a capital.  From your code, thinking your modid does as well.  Change to all lower caps as well.

 

Those are always things I do first.

 

Lastlly, in eclipse, you have clicked on the project and chosen 'refresh' right?  If you don't eclipse won't always recognize any file changes.  Do that anytime you add a texture, json, edit, ect.

Long time Bukkit & Forge Programmer

Happy to try and help

Link to comment
Share on other sites

@delpi Okay results: (I totally forgot to refresh...) Still not working however, I'm now getting a "Model definition for location minefantasy2:bluesteel_pick#inventory not found" error in the log and I /did/ change the location in the json file to lowercase and refreshed the project. Aditionally, I noticed that when I drop the Item, I get a "Item entity ##### has no item?!" error.

 

Manually specifying as much as possible: I changed the line to

ItemPickMF bpick = new ItemPickMF("bluesteel_pick", BaseMaterialMF.bluesteel.getToolConversion(), 0);
    		 renderItem.getItemModelMesher().register(bpick, 0, new ModelResourceLocation(MODID + ":" + "bluesteel_pick", "inventory"));

"Model definition for location minefantasy2:bluesteel_pick#inventory not found"

"Item entity ##### has no item?!"

Link to comment
Share on other sites

Hi

 

Unfortunately I don't see the problem, but something you could try:

A useful breakpoint to solve registration problems is to set a breakpoint at

ItemModelMesher::

public IBakedModel getItemModel(ItemStack stack)

{

    Item item = stack.getItem();

    IBakedModel ibakedmodel = this.getItemModel(item, this.getMetadata(stack));

}

 

You can then trace in, to compare 1) the model that your item is looking for, against 2) the contents of the registry.  Where they don't match, you can usually see why immediately.

 

-TGG

Link to comment
Share on other sites

Based upon your json, I think it should be

 

renderItem.getItemModelMesher().register(bpick, 0, new ModelResourceLocation(MODID + ":" + "items/Tool/bluesteel_pick", "inventory"));

 

or

 

renderItem.getItemModelMesher().register(bpick, 0, new ModelResourceLocation(MODID + ":" + "items/tool/bluesteel_pick", "inventory"));

 

if you changed it to all lower case.

Long time Bukkit & Forge Programmer

Happy to try and help

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.