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

Minecraft:Atlas: 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 1: Line 1:
{{move|Atlas definition|reason=much like other technical pages like [[Minecraft:Enchantment definition]]. Contrary to what the beginning sentence insists, atlases are '''not''' configuration files, they are graphic files. This page discusses how the game handles them.}}
{{Exclusive|java}}
{{Exclusive|java}}


'''Atlases''' are configuration files in [[Minecraft:resource pack]]s, that control which textures are included in the atlases.
An '''atlas''' is effectively a collection of individual sprites that are combined into one large image when resource packs are loaded. In Minecraft, these are used by various objects such as terrain, items, most gui widgets, and certain block entity textures.


== JSON format ==
== Specification ==
Atlases are stored as [[Minecraft:JSON]] files in a resource pack in the <code>assets/''<namespace>''/atlases</code> folder.
The sprites that are included in an atlas are controlled by json files in a [[Minecraft:resource pack]]. These are stored in the <code>assets/<namespace>/atlases/<id>.json</code> directory of a resource pack with the following format.
 
When loading atlas files, the game combines all sprite sources from all currently active packs for each atlas. This means that multiple packs can add or remove sprites from an atlas without conflicting with one another.
 
It is not possible to define custom atlases simply by creating the JSON file for one as atlases must be registerred in the game code. Unknown atlas files are ignored by the game when loading resources.
 
=== JSON format ===


<div class="treeview">
<div class="treeview">
Line 39: Line 46:


== List of atlases ==
== List of atlases ==
* <code>armor_trims</code>
 
* <code>beds</code> {{until|je 26.2}}
All the atlases that are currently used by the game.
* <code>banner_patterns</code>
 
* <code>blocks</code>
For atlases which support {{Wikipedia|mipmap|mipmapping}}, all sprites should be a minimum of 16x16 pixels in size and a multiple of 2. If these guidelines aren't met the maximum mipmap level is limited and a message is printed in the log along the lines of '<code>Texture <sprite id> with size <width>x<height> limits mip level from <target mip level> to <limited mip level></code>'.
* <code>celestials</code>
 
* <code>chests</code>
{| class="wikitable"
* <code>decorated_pot</code>
! Identifier
* <code>gui</code>
! Contents
* <code>items</code>
! Used for
* <code>map_decorations</code>
! Supports mipmapping
* <code>paintings</code>
|-
* <code>particles</code>
| armor_trims
* <code>shield_patterns</code>
| Contains paletted pemutations of all armor trim equipment textures. This does not include the item overlays, those are defined in the <code>items</code> atlas.
* <code>shulker_boxes</code>
| Rendering of armor trim layers on equipment
* <code>signs</code> {{until|je 26.2}}
| {{tc|No}}
|-
| banner_patterns
| Contains all banner pattern textures and the base banner texture from the <code>entity/banner/</code> directory.
| Rendering of banners placed in the world
| {{tc|No}}
|-
| blocks
| Contains all block textures from the <code>block/</code>, textures in the <code>entity/conduit/</code> directory, the <code>entity/bell/bell_body.png</code> texture, and the <code>entity/enchantment/enchanting_table_book.png</code> texture.
| Rendering of terrain, conduits, bells, enchanting table books (in the gui and in the world), and item models.
| {{tc|Yes}}
|-
| celestials
| Contains the <code>environment/celestial/</code> directory. This includes the sun texture, moon phase textures, and the end flash texture.
| Rendering of celestial bodies like the sun, moon, and end flashes.
| {{tc|No}}
|-
| chests
| Contains all the chest textures from the <code>entity/chest/</code> directory.
| Rendering of chest block entities.
| {{tc|No}}
|-
| decorated_pot
| Contains all decorated pot patterns and the base decorated pot texture from the <code>entity/decorated_pot/</code> directory.
| Rendering of decorated pot block entities.
| {{tc|No}}
|-
| gui
| Contains most gui sprite textures from the <code>gui/sprites/</code> directory. Also contains the mob effect icons from the <code>mob_effect/</code> directory. Sprites in this atlas support additional mcmeta data for gui scaling, see [[Minecraft:Resource_pack#GUI]] for more information.
| Rendering of most gui widgets and icons.
| {{tc|No}}
|-
| items
| Contains all item textures from the <code>item/</code> directory. Also contains paletted permutations for the armor trim item overlay textures.
| Rendering of item models.
| {{tc|No}}
|-
| map_decorations
| Contains all map decoration icons from the <code>map/decoration/</code> directory.
| Rendering of map decoration icons.
| {{tc|No}}
|-
| paintings
| Contains all painting textures from the <code>painting/</code> directory.
| Rendering of paintings.
| {{tc|No}}
|-
| particles
| Contains all particle textures from the <code>particle/</code> directory.
| Rendering of most particles.
| {{tc|No}}
|-
| shield_patterns
| Contains all shield pattern textures and the base shield texture from the <code>entity/shield/</code> directory.
| Rendering of shields and shield patterns.
| {{tc|No}}
|-
| shulker_boxes
| Contains all shulker textures from the <code>entity/shulker/</code> directory.
| Rendering of shulker box block entities. This does not include shulker mobs.
| {{tc|No}}
|-
|}


== History ==
== History ==
Line 68: Line 137:
|{{HistoryLine||1.21.11|dev=25w41a|Added the <code>celestials</code> atlas which contains celestial bodies including the sun, moon phases, and end flash.}}
|{{HistoryLine||1.21.11|dev=25w41a|Added the <code>celestials</code> atlas which contains celestial bodies including the sun, moon phases, and end flash.}}
|{{HistoryLine|||dev=25w45a|Added the <code>items</code> atlas.
|{{HistoryLine|||dev=25w45a|Added the <code>items</code> atlas.
|Moved armour trim item overlay paletted permutations from the <code>blocks</code> atlas to <code>items</code>.}}
|Moved armor trim item overlay paletted permutations from the <code>blocks</code> atlas to <code>items</code>.}}
|{{HistoryLine|upcoming java}}
|{{HistoryLine||26.2|dev=snap4|Removed the <code>beds</code> atlas.}}
|{{HistoryLine||26.2|dev=snap4|Removed the <code>beds</code> atlas.}}
|{{HistoryLine|||dev=snap7|Removed the <code>signs</code> atlas.}}
|{{HistoryLine|||dev=snap7|Removed the <code>signs</code> atlas.}}
|{{HistoryLine|java upcoming}}
|{{HistoryLine||26.3|dev=snap1|Removed the <code>armor_trims</code> atlas.}}
}}
}}



Latest revision as of 11:06, 12 July 2026

Template:Move Template:Exclusive

An atlas is effectively a collection of individual sprites that are combined into one large image when resource packs are loaded. In Minecraft, these are used by various objects such as terrain, items, most gui widgets, and certain block entity textures.

Specification

The sprites that are included in an atlas are controlled by json files in a Minecraft:resource pack. These are stored in the assets/<namespace>/atlases/<id>.json directory of a resource pack with the following format.

When loading atlas files, the game combines all sprite sources from all currently active packs for each atlas. This means that multiple packs can add or remove sprites from an atlas without conflicting with one another.

It is not possible to define custom atlases simply by creating the JSON file for one as atlases must be registerred in the game code. Unknown atlas files are ignored by the game when loading resources.

JSON format

  • Template:Nbt The root tag.
    • Template:Nbt: Contains a list of sprite sources. Every entry runs in during load, in order of definition, adding or removing new textures to the atlas.
      • Template:Nbt Source element.
        • Template:Nbt: The type of the sprite source. Can be one of the following:
          • directory: Lists all files in a directory and its subdirectories, across all namespaces.
          • single: Adds a single file.
          • filter: Removes sprites matching the given pattern (only works for entries already in the list).
          • unstitch: Copies rectangular regions from other images.
          • paletted_permutations: Dynamically generate textures in-memory with color sets.
            • Template:Nbt: A list of namespaced Minecraft:resource locations of base textures. These textures are used to generate variants of them that have been modified by color palettes.
            • Template:Nbt: A value that is used when joining texture and permutation names to produce sprite name. Defaults to Template:Cd.
            • Template:Nbt: A namespaced resource location of a color palette key file. This is used to define the set of key pixel colors to swap out with the color palettes defined.
            • Template:Nbt: A map of permutations from suffix to a namespaced resource location of a color palette file. The suffix is appended to the resource location of the output variant textures, with the string specified in separator separating the suffix and the base texture name. The number of pixels in each color palette must be the same as that of the palette_key defined for this source. Pixels are compared by RGB value. The alpha channel is ignored for key matching, but in the resulting texture the alpha channel is multiplied with the color palette's alpha channel. Pixels that do not match the palette_key are copied over to the resulting texture as-is.

List of atlases

All the atlases that are currently used by the game.

For atlases which support Template:Wikipedia, all sprites should be a minimum of 16x16 pixels in size and a multiple of 2. If these guidelines aren't met the maximum mipmap level is limited and a message is printed in the log along the lines of 'Texture <sprite id> with size <width>x<height> limits mip level from <target mip level> to <limited mip level>'.

Identifier Contents Used for Supports mipmapping
armor_trims Contains paletted pemutations of all armor trim equipment textures. This does not include the item overlays, those are defined in the items atlas. Rendering of armor trim layers on equipment Template:Tc
banner_patterns Contains all banner pattern textures and the base banner texture from the entity/banner/ directory. Rendering of banners placed in the world Template:Tc
blocks Contains all block textures from the block/, textures in the entity/conduit/ directory, the entity/bell/bell_body.png texture, and the entity/enchantment/enchanting_table_book.png texture. Rendering of terrain, conduits, bells, enchanting table books (in the gui and in the world), and item models. Template:Tc
celestials Contains the environment/celestial/ directory. This includes the sun texture, moon phase textures, and the end flash texture. Rendering of celestial bodies like the sun, moon, and end flashes. Template:Tc
chests Contains all the chest textures from the entity/chest/ directory. Rendering of chest block entities. Template:Tc
decorated_pot Contains all decorated pot patterns and the base decorated pot texture from the entity/decorated_pot/ directory. Rendering of decorated pot block entities. Template:Tc
gui Contains most gui sprite textures from the gui/sprites/ directory. Also contains the mob effect icons from the mob_effect/ directory. Sprites in this atlas support additional mcmeta data for gui scaling, see Minecraft:Resource_pack#GUI for more information. Rendering of most gui widgets and icons. Template:Tc
items Contains all item textures from the item/ directory. Also contains paletted permutations for the armor trim item overlay textures. Rendering of item models. Template:Tc
map_decorations Contains all map decoration icons from the map/decoration/ directory. Rendering of map decoration icons. Template:Tc
paintings Contains all painting textures from the painting/ directory. Rendering of paintings. Template:Tc
particles Contains all particle textures from the particle/ directory. Rendering of most particles. Template:Tc
shield_patterns Contains all shield pattern textures and the base shield texture from the entity/shield/ directory. Rendering of shields and shield patterns. Template:Tc
shulker_boxes Contains all shulker textures from the entity/shulker/ directory. Rendering of shulker box block entities. This does not include shulker mobs. Template:Tc

History

Template:HistoryTable

Navigation

Template:Navbox resource packs Template:Navbox Java Edition technical

Minecraft:de:Atlasdaten Minecraft:ja:テクスチャ#テクスチャアトラス Minecraft:zh:纹理图集