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

From SAS Gaming Wiki
(Redirected from Minecraft:Block models)

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:模型