Missing textures and models

Minecraft makes use of missing textures and missing models to handle potential errors present in the game's resources as well as resource packs.

Missing texture
The missing texture is a placeholder texture used by Minecraft for handling cases where a suitable texture cannot be found. Outside of its use in missing models, this is almost always due to a texture being referenced which simply does not exist under that name.

The texture uses a prominent black and magenta  checkerboard $$ or a black  and magenta  checkerboard $$, in order to stand out as much as possible in most cases. Using bright colors is industry standard, and black and magenta is employed by other game development studios, notably Valve.

The texture is not intended to appear in vanilla gameplay, and cases where it does are due to misconfigured resource packs.

As of Java Edition 21w42a, there are six ways in which the missing texture can appear without using a resource pack, all of which require commands:
 * By creating minecraft:block_marker particles associated with either air, cave air or void air:
 * /particle minecraft:block_marker minecraft:air
 * /particle minecraft:block_marker minecraft:cave_air
 * /particle minecraft:block_marker minecraft:void_air
 * By creating minecraft:item particles associated with either air or a spyglass:
 * /particle minecraft:item minecraft:air
 * /particle minecraft:item minecraft:spyglass
 * By summoning a panda eating a spyglass.
 * /summon minecraft:panda ~ ~ ~ {HandItems:[{id:"minecraft:spyglass", Count:1b},{}]}

When the game has to use the missing texture, such uses are generally announced in the game's output log:
 * References to nonexistent textures results in Using missing texture, unable to load [NAMESPACE]:textures/[TEXTURE].png : java.io.FileNotFoundException: [NAMESPACE]:textures/[TEXTURE].png
 * Absent texture references for model elements results in Unable to resolve texture reference: #texture in [NAMESPACE]:block/[MODEL]
 * Cases where no particle texture is specified does not output anything to the log at all. This is why the air and spyglass items' use of the missing texture for particles goes unreported in the game logs.

History of the texture itself

 * b1.4-13w17a platform differences

The missing texture used in these versions would be generated differently depending on the operating system and Java version.

Missing model
In an analogous fashion to the missing texture being used for instances where no texture is defined, the missing model is use in cases where no model is defined, or the model is invalid.

By default, the missing model is a full 16x16 cube which uses the missing texture on all six faces. These faces are culled accordingly where possible. Only two faces will have the same color at each vertex, rather than the three one may expect; Mojang have decided to not fix this.

The missing model is obviously also never intended to appear in standard gameplay, and uses the missing texture again to appear prominent and highlight errors to fix.

Contrary to popular belief, no central "missing texture block" has ever existed in the game; all cases of blocks which use this model are due to another block simply having no assigned texture or model.

Item

 * Inventory


 * Dropped


 * Fixed


 * Held, first person


 * Held, third person/other entity

Examples of cases where the missing model is not used
By definition, any block which does not use a model does not use the cubic missing model. If a model is still not defined for the block, however, this will likely still reflect in the block's particles.

The vast majority of entity models are also completely hardcoded. There are two notable exceptions in the item frame and glow item frame, which do in fact have customizable models. Therefore, the item frame and glow item frame are the only two entities which are capable of using the missing model; all other entities may lose their texture, but retain the same model shape.

Horses are a particularly interesting example of an entity which are discussed further in a later section. In multiple version ranges, certain invalid horses can either appear completely invisible or have a solid white texture, neither of which are the missing model.

Translucency ordering
From 14w25a up to 19w38b, there existed a remarkable visual bug where missing models associated with blocks that used translucent rendering (such as ice, stained glass, stained glass panes and slime blocks) would interact anomalously with the rendering of transparent blocks in the world, as well as of entities, including the holder. Unlike normal missing models, translucent blocks and other entities would render in front of such a model when held, even if they were physically farther away from the camera. However, this only applies if the distant entity or transparent block in question is not first occluded by the player model. As a result, the held translucent block can form a player-shaped silhouette around the player model in front of a background made of entities (such as paintings) or translucent blocks.

This effect can be seen without the use of resource packs up to 17w46a simply by holding ice, stained glass, stained glass panes or slime blocks of an invalid data value. For versions 17w47a up to 19w38b a resource pack is required to break the model of an existing translucent item, and from 19w39a the bug is no longer present at all.

This effect also happened to particles and certain other objects in-game from 13w41a onwards.

Unloading the default resources
If a sufficiently broken resource pack is loaded, the game will catch such resource packs and unload them automatically if errors were detected. From 17w43a up to the full release of 1.13, this also included the default resources, meaning that applying a flawed resource pack would result in all assets being unloaded, and as such the missing error assets appearing everywhere.

Interestingly, the rendering of the enchantment glint on items to which it applies appears different when all assets are unloaded, compared to cases where the enchantment glint image file and its associated mcmeta are deleted instead. For the unloaded case, the texture is renderedmuch smaller and moved much slower. The exact underlying reason for this currently remains unknown.
 * Enchantment glint

Trivia

 * 14w04b is the last Java Edition version in which the missing texture cannot be encountered in the vanilla game without resource packs:
 * From 14w05a through 14w21b inclusive, the end portal item uses the missing texture.
 * In 14w25a, the version directly following 14w21b, the end portal item is removed, but all invalid data value items use the missing item model.
 * In addition, this is the first version that allows the use of the command to generate block particles, which includes particles for invalid blocks such as air. This functionality is temporarily removed in later snapshots and the full release of 1.8, but returns soon after, and the missing texture can still be seen via invalid data value items.
 * In 17w47a, invalid data value items are effectively removed, however it is still possible to generate missing texture particles if the air item is specified. This continues to the latest version.
 * The missing texture can be seen in the official version banners for 14w10a and 17w47a: