Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Model: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Sync: updated from Minecraft
SyncBot (talk | contribs)
Sync: updated from Minecraft
 
(4 intermediate revisions by the same user not shown)
Line 20: Line 20:
**** {{nbt|list|scale}}: Specifies the scale of the model according to the scheme <code>[x, y, z]</code>. If the value is greater than 4, it is displayed as 4.
**** {{nbt|list|scale}}: Specifies the scale of the model according to the scheme <code>[x, y, z]</code>. If the value is greater than 4, it is displayed as 4.
** {{nbt|compound|textures}}: Holds the textures of the model, in form of a [[Minecraft:Tutorial:Models#File_path|resource location]] or can be another texture variable.
** {{nbt|compound|textures}}: Holds the textures of the model, in form of a [[Minecraft:Tutorial:Models#File_path|resource location]] or can be another texture variable.
*** {{nbt|string|''Texture variable''}}: Defines a texture variable and assigns a texture. The texture can either be a reference to another texture variable, or the resource location of a texture in the <code>textures</code> folder. The variable can be referenced by prefixing it with a <code>#</code> in the model, e.g. the variable <code>"texture"</code> is referenced as <code>"#texture"</code>. The texture variable named <code>"particle"</code> defines what texture the breaking particles are loaded from, but can also be referenced by the model as <code>"#particle"</code>. The particle texture is also used as an overlay if you are in a [[Minecraft:nether portal]], for [[Minecraft:water]] and [[Minecraft:lava]]'s still textures,<ref name=":0" /> and for the particle textures of non-model blocks (such as for [[Minecraft:barrier]]s).
*** {{nbt|string|''Texture variable''}}: Defines a texture variable and assigns a texture. The texture can either be a reference to another texture variable, or the resource location of a texture in the <code>textures</code> folder. The variable can be referenced by prefixing it with a <code>#</code> in the model, e.g. the variable <code>"texture"</code> is referenced as <code>"#texture"</code>. The texture variable named <code>"particle"</code> defines what texture the breaking particles are loaded from, but can also be referenced by the model as <code>"#particle"</code>. The particle texture is also used as an overlay if you are in a [[Minecraft:nether portal]], for [[Minecraft:water]] and [[Minecraft:lava]]'s still textures,<ref>{{bug|MC-240042||Water and lava textures are defined through the model particle parameter.}}</ref> and for the particle textures of non-model blocks (such as for [[Minecraft:barrier]]s).
*** {{nbt|compound|''Texture variable''}}: Defines a texture variable and assigns it a texture. This is an alternative format that allows specifying some extra properties of the texture. This format works for all texture variables, including <code>"particle"</code>.
*** {{nbt|compound|''Texture variable''}}: Defines a texture variable and assigns it a texture. This is an alternative format that allows specifying some extra properties of the texture. This format works for all texture variables, including <code>"particle"</code>.
**** {{nbt|string|sprite}}: The resource location of a texture. Note that texture variables cannot be used here.
**** {{nbt|string|sprite}}: The resource location of a texture. Note that texture variables cannot be used here.
Line 94: Line 94:
* mooshroom mushrooms
* mooshroom mushrooms
* iron golem flowers
* iron golem flowers
* spyglasses in use
* shelves
* copper golems
* copper golems
* campfires
* sulfur cubes
* snow golem helmets? those aren't normal helmets as you'd expect from a slot, to my knowledge}}
* vault items
* items held by villagers and wandering traders (honestly i should split these tables and the other tables on the Item page off to some new page)}}
Non-hardcoded models are used in-game in the following contexts:
Non-hardcoded models are used in-game in the following contexts:
{|class="wikitable"
{| class="wikitable"
!Use case
! Use case
!Uses
! Uses
!Image
! Image
!Respects {{code|shade{{=}}false}}?
! Respects {{code|shade{{=}}false}}?
|-
|-
!colspan="4"|Blocks
! colspan="4"| Blocks
|-
|-
!Placed blocks
! Placed blocks
|All blocks excluding those listed [[#Blocks and fluids|here]]
| All blocks excluding those listed [[#Blocks and fluids|here]]
|
|
|{{tc|Yes}}
| {{tc|Yes}}
|-
|-
![[Minecraft:Falling block]]s
! [[Minecraft:Falling block]]s
|All blocks excluding those listed [[#Blocks and fluids|here]]
| All blocks excluding those listed [[#Blocks and fluids|here]]
|
|
|{{tc|Yes}}
| {{tc|Yes}}
|-
|-
![[Minecraft:Moving Piston|Piston-moved blocks]]
! [[Minecraft:Moving Piston|Piston-moved blocks]]
|All blocks excluding those listed [[#Blocks and fluids|here]]
| All blocks excluding those listed [[#Blocks and fluids|here]]
|
|
|{{tc|Yes}}
| {{tc|Yes}}
|-
|-
!Lit [[Minecraft:TNT]]
! Lit [[Minecraft:TNT]]
|TNT
| TNT{{verify|can't you change what is displayed now?}}
|
|
|{{tc|No}}
| {{tc|No}}
|-
|-
!colspan="4"|Items
! [[Minecraft:Snow Golem]] headpiece<ref>{{bug|MC-308352}}</ref>
| Carved Pumpkin
|
| {{verify}}
|-
|-
!Items in the inventory
! colspan="4"| Items
|All items excluding air
|-
! Items in the inventory
| All items excluding air
|
|
|{{tc|No}}
| {{tc|No}}
|-
|-
!Items in the player's hand (first person)
! Items in the player's hand (first person)
|All items excluding air{{verify|Is it true for tridents?}}
| All items excluding air{{verify|Is it true for tridents?}}
|
|
|{{tc|No}}
| {{tc|No}}
|-
|-
!Items in the player's hand (third person)<br>Items held by other players<br>Items held by mobs
! Items in the player's hand (third person)<br>Items held by other players<br>Items held by mobs
|All items excluding air{{verify|Is it true for tridents?}}
| All items excluding air{{verify|Is it true for tridents?}}
|
|
|{{tc|No}}
| {{tc|No}}
|-
|-
!Items on the ground
! Items on the ground
|All items excluding air
| All items excluding air
|
|
|{{tc|No}}
| {{tc|No}}
|-
|-
!Items in item frames
! Items in item frames
|All items excluding air
| All items excluding air
|
|
|{{tc|No}}
| {{tc|No}}
|-
|-
![[Minecraft:Totem of undying]] animation
! Items on shelves
|Any item with the "death protection" component
| All items excluding air
|
|
|{{tc|No}}{{verify}}
| {{verify}}
|-
! [[Minecraft:Totem of undying]] animation
| Any item with the "death protection" component
|
| {{tc|No}}{{verify}}
|}
|}


Each of the item display types are used in the following situations:
Each of the item display types are used in the following situations:
{|class="wikitable"
{| class="wikitable"
!Use case
! Use case
!Display type
! Display type
|-
| Inventory items<br>Crafting station icon on recipe unlock toasts
| {{code|gui}}
|-
|-
|Inventory items
| Items equipped on the heads of certain mobs{{info needed|players and other humanoids, but what mobs exactly?}}<br>Spyglasses when in use
|{{code|gui}}
| {{code|head}}
|-
|-
|Items equipped on the heads of certain mobs{{info needed|players and other humanoids, but what mobs exactly?}}
| [[Minecraft:Item (entity)|Dropped items]]<br>Items held by [[Minecraft:dolphin]]s<ref>{{bug|MC-276803||Items held by dolphins use the "ground" display type|Invalid}}</ref><br>Items held by [[Minecraft:panda]]s<ref>{{bug|MC-276802||Items held by pandas unexpectedly use the "ground" display type|Invalid}}</ref><br>Items held by [[Minecraft:fox]]es<ref>{{bug|MC-276763||Item models held by foxes cannot be customized independently of dropped item models|Invalid}}</ref><br>Thrown projectiles<ref>{{bug|MC-276801||Projectiles which use item models use the "ground" display type and cannot be independently customized from it|Invalid}}</ref>{{info needed|snowballs, eggs, ender pearls, eye of enders and fire charges confirmed. are splash potions, lingering potions, experience bottles, firework rockets and ghast fireballs also subject to this, and are there any others?}}<br>Items held by villagers and wandering traders<br>Potions held by witches<br>Ominous item spawner
|{{code|head}}
| {{code|ground}}
|-
|-
|[[Minecraft:Item (entity)|Dropped items]]<br>Items held by [[Minecraft:dolphin]]s<ref>{{bug|MC-276803||Items held by dolphins use the "ground" display type|Invalid}}</ref><br>Items held by [[Minecraft:panda]]s<ref>{{bug|MC-276802||Items held by pandas unexpectedly use the "ground" display type|Invalid}}</ref><br>Items held by [[Minecraft:fox]]es<ref>{{bug|MC-276763||Item models held by foxes cannot be customized independently of dropped item models|Invalid}}</ref><br>Thrown projectiles<ref>{{bug|MC-276801||Projectiles which use item models use the "ground" display type and cannot be independently customized from it|Invalid}}</ref>{{info needed|snowballs, eggs, ender pearls, eye of enders and fire charges confirmed. are splash potions, lingering potions, experience bottles, firework rockets and ghast fireballs also subject to this, and are there any others?}}<br>Items held by villagers and wandering traders<br>Potions held by witches<br>Ominous item spawner
| Items in item frames<br>Totem of undying animation<br>Items placed on campfires<br>Items being brushed out of suspicious sand and gravel
|{{code|ground}}
| {{code|fixed}}
|-
|-
|Items in item frames<br>Totem of undying animation<br>Items being brushed out of suspicious sand and gravel
| Items on shelves
|{{code|fixed}}
| {{code|on_shelf}}
|-
|-
|Items held in a humanoid's left hand
| Items held in a humanoid's left hand
|{{code|thirdperson_lefthand}}
| {{code|thirdperson_lefthand}}
|-
|-
|Items held in a humanoid's right hand<br>Items held in a humanoid's left hand, if {{code|thirdperson_lefthand}} is left unspecified
| Items held in a humanoid's right hand<br>Items held in a humanoid's left hand, if {{code|thirdperson_lefthand}} is left unspecified
|{{code|thirdperson_righthand}}
| {{code|thirdperson_righthand}}
|-
|-
|Items held in the left hand in first person
| Items held in the left hand in first person
|{{code|firstperson_lefthand}}
| {{code|firstperson_lefthand}}
|-
|-
|Items held in the right hand in first person<br>Items held in the left hand in first person, if {{code|firstperson_lefthand}} is left unspecified
| Items held in the right hand in first person<br>Items held in the left hand in first person, if {{code|firstperson_lefthand}} is left unspecified
|{{code|firstperson_righthand}}
| {{code|firstperson_righthand}}
|-
|-
|Item display entities
| Item display entities
|Depends on what is specified
| Depends on what is specified
|}
|}



Latest revision as of 11:09, 26 May 2026

Template:See also Template:Exclusive Template:Split

Models are three-dimensional shapes used in Minecraft that are used to display objects encountered in the game.

The models pertaining to the vast majority of Minecraft:blocks and Minecraft:items can be configured, as well as those of a small selection of Minecraft:entities. Models are stored as Minecraft:JSON files in a Minecraft:resource pack in the assets/<namespace>/models folder.

Block models

  • Template:Nbt The root tag
    • Template:Nbt: Loads a different model from the given path, in form of a resource location. If both "parent" and "elements" are set, the "elements" tag overrides the "elements" tag from the previous model.
      • Can be set to "builtin/generated" to use a model that is created out of the specified icon. Only the first layer is supported, and rotation can be achieved only by using block states files.
    • Template:Nbt: Whether to use Template:Wikipedia (true - default), or not (false).
    • Template:Nbt: Holds the different places where item models are displayed.
      • Template:Nbt: Named thirdperson_righthand, thirdperson_lefthand, firstperson_righthand, firstperson_lefthand, gui, head, ground, fixed, or on_shelf. Place where an item model is displayed. Holds its rotation, translation and scale for the specified situation. fixed refers to item frames, while the rest are as their name states. Translations are applied to the model before rotations.
        • Template:Nbt: Specifies the rotation of the model according to the scheme [x, y, z].
        • Template:Nbt: Specifies the position of the model according to the scheme [x, y, z]. The values are clamped between -80 and 80.
        • Template:Nbt: Specifies the scale of the model according to the scheme [x, y, z]. If the value is greater than 4, it is displayed as 4.
    • Template:Nbt: Holds the textures of the model, in form of a resource location or can be another texture variable.
      • Template:Nbt: Defines a texture variable and assigns a texture. The texture can either be a reference to another texture variable, or the resource location of a texture in the textures folder. The variable can be referenced by prefixing it with a # in the model, e.g. the variable "texture" is referenced as "#texture". The texture variable named "particle" defines what texture the breaking particles are loaded from, but can also be referenced by the model as "#particle". The particle texture is also used as an overlay if you are in a Minecraft:nether portal, for Minecraft:water and Minecraft:lava's still textures,<ref>Template:Bug</ref> and for the particle textures of non-model blocks (such as for Minecraft:barriers).
      • Template:Nbt: Defines a texture variable and assigns it a texture. This is an alternative format that allows specifying some extra properties of the texture. This format works for all texture variables, including "particle".
        • Template:Nbt: The resource location of a texture. Note that texture variables cannot be used here.
        • Template:Nbt: Optional. Defines whether the texture should be considered translucent even when it is not. Normally, Minecraft determines whether a block is translucent by checking if any of its textures has any translucent pixels. Setting this to true overrides that behavior for this texture. This is useful for textures that don't have any translucent pixels, but use the mean mipmap strategy. Defaults to false.
    • Template:Nbt: Contains all the elements of the model. They can have only cubic forms. If both "parent" and "elements" are set, the "elements" tag overrides the "elements" tag from the previous model.
      • Template:Nbt An element.
        • Template:Nbt: Start point of a cuboid according to the scheme [x, y, z]. Values must be between -16 and 32.
        • Template:Nbt: Stop point of a cuboid according to the scheme [x, y, z]. Values must be between -16 and 32.
        • Template:Nbt: Defines the rotation of an element.
          • Template:Nbt: Sets the center of the rotation according to the scheme [x, y, z].
          • Template:Nbt: Specifies the angle of rotation around the x axis. This value will be ignored if an axis and angle are specified.
          • Template:Nbt: Specifies the angle of rotation around the y axis. This value will be ignored if an axis and angle are specified.
          • Template:Nbt: Specifies the angle of rotation around the z axis. This value will be ignored if an axis and angle are specified.
          • Template:Nbt: Specifies the direction of rotation, can be "x", "y" or "z".
          • Template:Nbt: Specifies the angle of rotation.
          • Template:Nbt: Specifies whether or not to scale the faces across the whole block by scaling the non-rotated faces by 1 / cos(angle). Can be true or false. Defaults to false.
        • Template:Nbt: Defines if the faces of the element should be shaded according to their orientation (true - default) or not (false). This does not affect ambient occlusion or shading based on light level.
        • Template:Nbt: Defines the minimum light level that the element can receive. Can be 0-15, defaults to 0.
        • Template:Nbt: Holds all the faces of the cuboid. If a face is left out, it does not render.
          • Template:Nbt: Named down, up, north, south, west or east. Contains the properties of the specified face.
            • Template:Nbt: Defines the area of the texture to use according to the scheme [x1, y1, x2, y2]. The texture behavior is inconsistent if UV extends below 0 or above 16. If the numbers of x1 and x2 are swapped (e.g. from 0, 0, 16, 16 to 16, 0, 0, 16), the texture flips. UV is optional, and if not supplied it automatically generates based on the element's position.
            • Template:Nbt: Specifies the texture in form of the texture variable prepended with a #.
            • Template:Nbt: Specifies whether a face does not need to be rendered when there is a block touching it in the specified position. The position can be: down, up, north, south, west, or east. It also determines the side of the block to use the light level from for lighting the face, and if unset, defaults to the side.
            • Template:Nbt: Rotates the texture clockwise by the specified number of degrees (counterclockwise for the 'down' face). Can be 0, 90, 180, or 270. Defaults to 0. Rotation does not affect which part of the texture is used. Instead, it amounts to permutation of the selected texture vertexes (selected implicitly, or explicitly though uv).
            • Template:Nbt: Determines whether to tint the texture using a hardcoded tint index. The default value, -1, indicates not to use the tint. Any other number is provided to BlockColors to get the tint value corresponding to that index. However, most blocks do not have a tint value defined (in which case white is used). Furthermore, no vanilla block currently uses multiple tint values, and thus the tint index value is ignored (as long as it is set to something other than -1); it could be used for modded blocks that need multiple distinct tint values in the same block though.

Item models

  • Template:Nbt: The root tag
    • Template:Nbt: Loads a different model from the given path, in form of a resource location. If both "parent" and "elements" are set, the "elements" tag overrides the "elements" tag from the previous model.
    • Template:Nbt: Holds the different places where item models are displayed.
      • Template:Nbt: Named thirdperson_righthand, thirdperson_lefthand, firstperson_righthand, firstperson_lefthand, gui, head, ground, fixed, or on_shelf. Place where an item model is displayed. Holds its rotation, translation and scale for the specified situation. fixed refers to item frames, while the rest are as their name states. Translations are applied to the model before rotations. If this is specified but not all of translation, rotation and scale are in it, the others aren't inherited from the parent.
        • Template:Nbt: Specifies the rotation of the model according to the scheme [x, y, z].
        • Template:Nbt: Specifies the position of the model according to the scheme [x, y, z]. If the value is greater than 80, it is displayed as 80. If the value is less than -80, it is displayed as -80.
        • Template:Nbt: Specifies the scale of the model according to the scheme [x, y, z]. If the value is greater than 4, it is displayed as 4.
    • Template:Nbt: Holds the textures of the model, in form of a resource location or can be another texture variable.
      • Template:Nbt: Used only to specify the icon of the item used in the inventory. There can be more than just one layer (e.g. for Minecraft:leather armor and trimmed armor), but the amount of possible layers is hardcoded for each item.Template:Verify Works only in combination with "item/generated".
      • Template:Nbt: What texture to load particles from. Used to determine the "crumb" particles generated by food items, as well as to determine the Minecraft:barrier particle (but it always uses items/barrier.png as blockbreaking particle), which otherwise uses "layer0".
      • Template:Nbt: Defines a texture variable and assigns a texture.
    • Template:Nbt: Can be "front" or "side". If set to "side", the model is rendered like a block. If set to "front", model is shaded like a flat item. Defaults to "side".
    • Template:Nbt: Contains all the elements of the model. They can have only cubic forms. If both "parent" and "elements" are set, the "elements" list overrides the "elements" list from the parent model.
      • Template:Nbt An element.
        • Template:Nbt: Start point of a cuboid according to the scheme [x, y, z]. Values must be between -16 and 32.
        • Template:Nbt: Stop point of a cuboid according to the scheme [x, y, z]. Values must be between -16 and 32.
        • Template:Nbt: Defines the rotation of an element.
          • Template:Nbt: Sets the center of the rotation according to the scheme [x, y, z].
          • Template:Nbt: Specifies the direction of rotation, can be "x", "y" or "z".
          • Template:Nbt: Specifies the angle of rotation. Can be 45 through -45 degrees.
          • Template:Nbt: Specifies whether or not to scale the faces across the whole block. Can be true or false. Defaults to false.
        • Template:Nbt: Defines if the faces of the element should be shaded according to their orientation (true - default) or not (false). This does not affect ambient occlusion or shading based on light level.
        • Template:Nbt: Defines the minimum light level that the element can receive. Can be 0-15, defaults to 0.
        • Template:Nbt: Holds all the faces of the cuboid. If a face is left out, it does not render.
          • Template:Nbt: Named down, up, north, south, west or east. Contains the properties of the specified face.
            • Template:Nbt Defines the area of the texture to use according to the scheme [x1, y1, x2, y2]. If unset, it defaults to values equal to xyz position of the element. The texture behavior is inconsistent if UV extends below 0 or above 16. If the numbers of x1 and x2 are swapped (e.g. from 0, 0, 16, 16 to 16, 0, 0, 16), the texture flips. UV is optional, and if not supplied it automatically generates based on the element's position.
            • Template:Nbt Specifies the texture in form of the texture variable prepended with a #.
            • Template:Nbt Specifies whether a face does not need to be rendered when there is a block touching it in the specified position. The position can be: down, up, north, south, west, or east. It also determines the side of the block to use the light level from for lighting the face, and if unset, defaults to the side.
            • Template:Nbt: Rotates the texture by the specified number of degrees. Can be 0, 90, 180, or 270. Defaults to 0. Rotation does not affect which part of the texture is used. Instead, it amounts to permutation of the selected texture vertexes (selected implicitly, or explicitly though uv).
            • Template:Nbt: Tints the texture on that face using a tint value referenced from the Items model definition. If no tint color (or the color white) is provided, the texture isn't tinted.
    • Template:Nbt: As of 24w45a/ 1.21.4+, overrides have been removed & replaced with a new system. Documentation for it can be found here.

Fields used by Blockbench

Some models contain fields used by Blockbench due to Mojang utilizing the software, these fields are only used by Blockbench and aren't used by Minecraft.

  • Template:Nbt: Name of an element (found in element objects).
  • Template:Nbt: 2D Integer array defining the width and height of the texture(s) being used (found at the root object).

Uses of models

Template:Info needed section Non-hardcoded models are used in-game in the following contexts:

Use case Uses Image Respects Template:Code?
Blocks
Placed blocks All blocks excluding those listed here Template:Tc
Minecraft:Falling blocks All blocks excluding those listed here Template:Tc
Piston-moved blocks All blocks excluding those listed here Template:Tc
Lit Minecraft:TNT TNTTemplate:Verify Template:Tc
Minecraft:Snow Golem headpiece<ref>Template:Bug</ref> Carved Pumpkin Template:Verify
Items
Items in the inventory All items excluding air Template:Tc
Items in the player's hand (first person) All items excluding airTemplate:Verify Template:Tc
Items in the player's hand (third person)
Items held by other players
Items held by mobs
All items excluding airTemplate:Verify Template:Tc
Items on the ground All items excluding air Template:Tc
Items in item frames All items excluding air Template:Tc
Items on shelves All items excluding air Template:Verify
Minecraft:Totem of undying animation Any item with the "death protection" component Template:TcTemplate:Verify

Each of the item display types are used in the following situations:

Use case Display type
Inventory items
Crafting station icon on recipe unlock toasts
Template:Code
Items equipped on the heads of certain mobsTemplate:Info needed
Spyglasses when in use
Template:Code
Dropped items
Items held by Minecraft:dolphins<ref>Template:Bug</ref>
Items held by Minecraft:pandas<ref>Template:Bug</ref>
Items held by Minecraft:foxes<ref>Template:Bug</ref>
Thrown projectiles<ref>Template:Bug</ref>Template:Info needed
Items held by villagers and wandering traders
Potions held by witches
Ominous item spawner
Template:Code
Items in item frames
Totem of undying animation
Items placed on campfires
Items being brushed out of suspicious sand and gravel
Template:Code
Items on shelves Template:Code
Items held in a humanoid's left hand Template:Code
Items held in a humanoid's right hand
Items held in a humanoid's left hand, if Template:Code is left unspecified
Template:Code
Items held in the left hand in first person Template:Code
Items held in the right hand in first person
Items held in the left hand in first person, if Template:Code is left unspecified
Template:Code
Item display entities Depends on what is specified

Limitations

Objects that cannot be remodelled

Template:Info needed section While most blocks and items can have their model changed, there are a multitude of things that cannot.

For example, no entities (with the exception of Minecraft:item frames and Minecraft:glow item frames) can have their model changed Template:In with resource packs alone. Minecraft:Bells can have their attachment model changed but not the bell model itself.

Blocks and fluids

Template:Non-remodellable blocks

Even these blocks have particle textures defined in dedicated model files, however it still stands that actual visual models cannot be changed.

Sub-elements of blocks, such as passively emitted particles and the book on top of the Minecraft:enchanting table, cannot be modified, even though the base block can.

History

Template:Needs updating Template:HistoryTable

Issues

Template:Issue list

References

Template:Reflist

Navigation

Template:Navbox resource packs Template:Navbox Java Edition technical

Minecraft:de:Modelldaten Minecraft:es:Modelo Minecraft:fr:Modèle Minecraft:ja:モデル Minecraft:pl:Modele bloków Minecraft:pt:Modelo Minecraft:zh:模型