I'm trying to texture a diamond block, but it just shows up as a missing texture both in the world and my inventory, though I feel lucky to make it change at all. I've been messing around with it for awhile but with no luck, and the only advice out there is this guide.
Can anyone tell me what I'm doing wrong? Below are the .json files and their directories.
Based on the texture keys, I believe, you wanted to link to a column, slab or staircase, but for the later 2, you will be able to see through the wall, which is bad, to not let this happen, you need to use a block, that allows transparency, for example glass or carpet.
Thanks for the help. I believe the item model and blockstates .json files are correct now, but I'm not sure what I should link the parent to for the block model. I assumed "parent": "block/diamond_block" would link to the block, not the json itself. As for the texture keys, they refer to custom files, not another block, if that's what you're saying. So here's what it looks like now, which produces no new result:
assets/minecraft/models/item/diamond_block.json
(I have noticed the mappings are sometimes either down/up or bottom/top. Not sure which is correct.)
Thanks for the help. I believe the item model and blockstates .json files are correct now, but I'm not sure what I should link the parent to for the block model. I assumed "parent": "block/diamond_block" would link to the block, not the json itself. As for the texture keys, they refer to custom files, not another block, if that's what you're saying. So here's what it looks like now, which produces no new result:
assets/minecraft/models/item/diamond_block.json
(I have noticed the mappings are sometimes either down/up or bottom/top. Not sure which is correct.)
What, exactly are you trying to accomplish here? It looks like you're trying to add a top and bottom texture to the diamond block, however you haven't assigned a texture for the sides of the block (I'm assuming that first model should say it is in the blocks directory, not item) which I would imagine would be a problem. Your blockstate and item model files are identical to the default which means you could delete them out of your resource pack and it would do the same thing as including them. IF what you're looking for it to assign a separate top and bottom texture for the diamond block, that would be as simple as making your block model look like this:
And the default item model and blockstate will handle the rest without needing to add or alter those files. Now, if you wanted to change the way the block looks in your hand- that would require adding and altering an item model file and if you wanted to see one or more manifestations of the block when placed in the world you would add and alter a blockstate file to inform the game what other model of the block you want to display.
Your first post has display criteria listed in the blockstate file: what were you trying to do with that? The better you can describe what you are trying to accomplish, the more effectively we can help you.
The page you linked to in your initial post is absolute garbage, what you need to be reading and referencing is here: https://minecraft.gamepedia.com/Model which has pretty much everything you need to know for vanilla modeling, it's a bit of a read but I think you'll notice an enormous difference in the degree of information provided between your page and the official wiki on the subject.
Another beneficial tool of minecraft is the option to "Open output log when game starts" which you can find under your settings when you first start the launcher. If you enable this a debug window will appear that will throw warnings and errors associated with any texture pack texture, model or file that the game can't handle properly. It's an excellent tool for figuring out Why your current files aren't loading.
What, exactly are you trying to accomplish here? It looks like you're trying to add a top and bottom texture to the diamond block, however you haven't assigned a texture for the sides of the block (I'm assuming that first model should say it is in the blocks directory, not item) which I would imagine would be a problem. Your blockstate and item model files are identical to the default which means you could delete them out of your resource pack and it would do the same thing as including them.
...
And the default item model and blockstate will handle the rest without needing to add or alter those files. Now, if you wanted to change the way the block looks in your hand- that would require adding and altering an item model file and if you wanted to see one or more manifestations of the block when placed in the world you would add and alter a blockstate file to inform the game what other model of the block you want to display.
Your first post has display criteria listed in the blockstate file: what were you trying to do with that? The better you can describe what you are trying to accomplish, the more effectively we can help you.
The page you linked to in your initial post is absolute garbage, what you need to be reading and referencing is here: https://minecraft.gamepedia.com/Model which has pretty much everything you need to know for vanilla modeling, it's a bit of a read but I think you'll notice an enormous difference in the degree of information provided between your page and the official wiki on the subject.
Another beneficial tool of minecraft is the option to "Open output log when game starts" which you can find under your settings when you first start the launcher. If you enable this a debug window will appear that will throw warnings and errors associated with any texture pack texture, model or file that the game can't handle properly. It's an excellent tool for figuring out Why your current files aren't loading.
Hope this information helps, happy modeling.
Yes, it was my intention to add top and bottom textures to diamond blocks. I thought it would have been redundant to say it when I thought the code would speak for itself. But now I realize it wouldn't have made sense because it was that flawed? Yikes! Perhaps I should have clarified; sorry about that.
Anyway, I included the item and blockstate .json's because the article I was reading led me to believe they were necessary. Also, I assumed it would default to vanilla textures if I left out calls for for the particle and face textures. Some vanilla files didn't even call for all of these, so I followed this example. After that pair of tweaks, it was a success! I'll also be sure to read that article you linked and use the output log for when I try something like this again. Thank you so much! I attached a screenshot of the in-progress textures that I was trying to apply to the block.
As for what I was initially trying to do in blockstates, I'm not sure anymore.
I shortened the diamond_block.json using a vanilla model "cube_bottom_top" and only provide 3 texture keys, as the linked parent has particle set to "#side", convenient to shorten these files even more.
The Meaning of Life, the Universe, and Everything.
Join Date:
5/29/2013
Posts:
449
Member Details
It was a valiant attempt given the information you had to work with. Modelling blocks in MC can be confusing to start with but once you understand what you're dealing with it gets easier and easier. When a model is parented to something else it inherits its behavior and geometry which is why a lot of blocks in the game don't seem to have a very complex json. The reason not all faces are requested for all blocks is because their parent block determines where those textures will be applied. Diamond_block was parented to cube_all which uses 1 texture for all faces and therefor has 1 texture listed in the file. By changing the parent to cube you changed it to a parent that uses the full array to texture each face so when the game loaded it was looking for north, south, east, west and particle texture files that hadn't been assigned.
Ultimately no block NEEDS a parent as long as it has its own geometry, display criteria, and textures assigned in the json which is how custom 3D models are done. That's why I was asking about the display criteria, it just seemed like you were trying to do something more complex. For a simple thing like what you are doing making a whole model would be a waste of time and effort but I hope that makes at least a little sense in helping you understand the parent/child model relationship and why some files call for different arrays than others.
I'm trying to texture a diamond block, but it just shows up as a missing texture both in the world and my inventory, though I feel lucky to make it change at all. I've been messing around with it for awhile but with no luck, and the only advice out there is this guide.
Can anyone tell me what I'm doing wrong? Below are the .json files and their directories.
assets/minecraft/models/block/diamond_block.json
assets/minecraft/models/block/diamond_block.json
assets/minecraft/blockstates/diamond_block.json
edit: missing text
The blockstates file is completely wrong, it's {"variants":{"":{"model":"block/diamond_block"}}}
I believe, you meant item in the file path?
The model is also garbage.
The parent links to itself.
Based on the texture keys, I believe, you wanted to link to a column, slab or staircase, but for the later 2, you will be able to see through the wall, which is bad, to not let this happen, you need to use a block, that allows transparency, for example glass or carpet.
Meow~
#F5F8FB
KittenKatja ♥
Thanks for the help. I believe the item model and blockstates .json files are correct now, but I'm not sure what I should link the parent to for the block model. I assumed "parent": "block/diamond_block" would link to the block, not the json itself. As for the texture keys, they refer to custom files, not another block, if that's what you're saying. So here's what it looks like now, which produces no new result:
assets/minecraft/models/item/diamond_block.json
(I have noticed the mappings are sometimes either down/up or bottom/top. Not sure which is correct.)
assets/minecraft/models/item/diamond_block.json (Yes, I ment item here)
assets/minecraft/blockstates/diamond_block.json
Now I must sleep.
What, exactly are you trying to accomplish here? It looks like you're trying to add a top and bottom texture to the diamond block, however you haven't assigned a texture for the sides of the block (I'm assuming that first model should say it is in the blocks directory, not item) which I would imagine would be a problem. Your blockstate and item model files are identical to the default which means you could delete them out of your resource pack and it would do the same thing as including them. IF what you're looking for it to assign a separate top and bottom texture for the diamond block, that would be as simple as making your block model look like this:
{
"parent": "block/cube",
"textures": {
"particle": "block/diamond_block",
"down": "block/diamond_block_bottom",
"up": "block/diamond_block_top",
"north": "block/diamond_block",
"east": "block/diamond_block",
"south": "block/diamond_block",
"west": "block/diamond_block"
}
}
And the default item model and blockstate will handle the rest without needing to add or alter those files. Now, if you wanted to change the way the block looks in your hand- that would require adding and altering an item model file and if you wanted to see one or more manifestations of the block when placed in the world you would add and alter a blockstate file to inform the game what other model of the block you want to display.
Your first post has display criteria listed in the blockstate file: what were you trying to do with that? The better you can describe what you are trying to accomplish, the more effectively we can help you.
The page you linked to in your initial post is absolute garbage, what you need to be reading and referencing is here: https://minecraft.gamepedia.com/Model which has pretty much everything you need to know for vanilla modeling, it's a bit of a read but I think you'll notice an enormous difference in the degree of information provided between your page and the official wiki on the subject.
Another beneficial tool of minecraft is the option to "Open output log when game starts" which you can find under your settings when you first start the launcher. If you enable this a debug window will appear that will throw warnings and errors associated with any texture pack texture, model or file that the game can't handle properly. It's an excellent tool for figuring out Why your current files aren't loading.
Hope this information helps, happy modeling.
Yes, it was my intention to add top and bottom textures to diamond blocks. I thought it would have been redundant to say it when I thought the code would speak for itself. But now I realize it wouldn't have made sense because it was that flawed? Yikes! Perhaps I should have clarified; sorry about that.
Anyway, I included the item and blockstate .json's because the article I was reading led me to believe they were necessary. Also, I assumed it would default to vanilla textures if I left out calls for for the particle and face textures. Some vanilla files didn't even call for all of these, so I followed this example. After that pair of tweaks, it was a success! I'll also be sure to read that article you linked and use the output log for when I try something like this again. Thank you so much! I attached a screenshot of the in-progress textures that I was trying to apply to the block.
As for what I was initially trying to do in blockstates, I'm not sure anymore.
Now to the optimization process:
{
"parent":"block/cube_bottom_top",
"textures":{
"top":"block/diamond_top",
"bottom":"block/diamond_bottom",
"side":"block/diamond_block"
}
}
I shortened the diamond_block.json using a vanilla model "cube_bottom_top" and only provide 3 texture keys, as the linked parent has particle set to "#side", convenient to shorten these files even more.
Meow~
#F5F8FB
KittenKatja ♥
It was a valiant attempt given the information you had to work with. Modelling blocks in MC can be confusing to start with but once you understand what you're dealing with it gets easier and easier. When a model is parented to something else it inherits its behavior and geometry which is why a lot of blocks in the game don't seem to have a very complex json. The reason not all faces are requested for all blocks is because their parent block determines where those textures will be applied. Diamond_block was parented to cube_all which uses 1 texture for all faces and therefor has 1 texture listed in the file. By changing the parent to cube you changed it to a parent that uses the full array to texture each face so when the game loaded it was looking for north, south, east, west and particle texture files that hadn't been assigned.
Ultimately no block NEEDS a parent as long as it has its own geometry, display criteria, and textures assigned in the json which is how custom 3D models are done. That's why I was asking about the display criteria, it just seemed like you were trying to do something more complex. For a simple thing like what you are doing making a whole model would be a waste of time and effort but I hope that makes at least a little sense in helping you understand the parent/child model relationship and why some files call for different arrays than others.