EliteFantasy ResourcePack Guide
  • ResourcePack Guide
    • Introduction
    • Beginning
      • lang
      • sounds
      • texts
      • particles
      • atlases
      • fonts
      • blockstates
      • textures
        • Equipment
        • Entity Textures
      • models
        • Blockbench Models
        • ItemsModels & CustomModelData
          • custommodeldata (old)
          • custommodeldata extras (old)
        • Understanding the system the new item system
      • shaders
  • Components Guide
    • Introduction
      • Components
  • Discord
    • Discord
Powered by GitBook
On this page
  • MCMeta & Animated Textures
  • Scaling Options in MCMeta & Custom Tooltip Example
  • GUI Routes
  1. ResourcePack Guide
  2. Beginning

textures

Textures are an important section in Minecraft and can be both overwritten and new textures can be added from Fonts or Models, the main path is

πŸ“¦resource_pack.zip
  └── πŸ“assets
       └── πŸ“minecraft
           └── πŸ“textures
               β”œβ”€β”€ πŸ“block
               β”‚    └── 🎨amethyst_cluster.png
               β”œβ”€β”€ πŸ“colormap
               β”œβ”€β”€ πŸ“effect
               β”œβ”€β”€ πŸ“entity
               β”œβ”€β”€ πŸ“environment
               β”œβ”€β”€ πŸ“font
               β”œβ”€β”€ πŸ“gui
               β”œβ”€β”€ πŸ“item
               β”‚    └── 🎨axolotl_bucket.png
               β”œβ”€β”€ πŸ“map
               β”œβ”€β”€ πŸ“misc
               β”œβ”€β”€ πŸ“mob_effect
               β”œβ”€β”€ πŸ“painting
               β”œβ”€β”€ πŸ“particle
               └── πŸ“trims

Try to use textures in multiples of 16x, otherwise the texture may be distorted.

MCMeta & Animated Textures

To make animated textures you need to multiply the size of the texture vertically, for example to add only one frame instead of 16x16 it is now 16x32 and has no limit, and so on with each frame you want to add.

Parameter
Description

interpolate

The font type, in this case, is bit-map for image-based chars. If true, Minecraft generates additional frames between frames with a frame time greater than 1 between them

height

The height of the sprite, in pixels. This is also unused in vanilla, but can be used by resource packs to have frames that are not perfect squares. Defaults to the image's height if "width" is defined, and the smaller of the image's dimensions if it's not

frametime

Sets the default time for each frame in increments of one game tick. Defaults to

frames

Contains a list of frames. Defaults to displaying all the frames from top to bottom.

Command Block Animated Example

command_block_back.png.mcmeta

{
  "animation": {
    "interpolate": true,
    "frametime": 10
  }
}

Fire Animated Example

fire_0.png.mcmeta

{
  "animation": {
    "frames": [
      16,
      17,
      18,
      19,
      20,
      21,
      22,
      23,
      24,
      25,
      26,
      27,
      28,
      29,
      30,
      31,
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15
    ]
  }
}

An example of a flash animation

reflection_animated_texture.png.pmcmeta

{
    "animation": {
        "frametime": 2.5,
        "width": 100,
        "height": 100,
        "interpolate": true,
        "frames": [
            {
                "index": 0,"time": 70
            },
            0,
            {
                "index": 1,"time": 1
            },
            1,
            {
                "index": 2,"time": 1
            },
            2,
            {
                "index": 3,"time": 1
            },
            3,
            {
                "index": 4,"time": 1
            },
            4,
            {
                "index": 5,"time": 1
            },
            5,
            {
                "index": 6,"time": 1
            },
            6,
            {
                "index": 7,"time": 1
            }
        ]
    }
}

Scaling Options in MCMeta & Custom Tooltip Example

Minecraft allows to add new tooltips through the tooltip_style component, for example you need to create two textures with a prefix similar to <name>_background and <name>_frame

πŸ“¦resource_pack.zip
  └── πŸ“assets
       └── πŸ“minecraft
           └── πŸ“textures
               └── πŸ“gui
                    └── πŸ“sprites
                         └── πŸ“tooltip
                              β”œβ”€β”€ 🎨awesome_background.png
                              β”œβ”€β”€ πŸ“awesome_background.png.mcmeta
                              β”œβ”€β”€ 🎨awesome_frame.png
                              └── πŸ“awesome_frame.png.mcmeta
                         

Existing types of scaling

Parameter
Description

stretch

default method

tile

the sprite is repeated across the desired space, starting from the top-left.

nine_slice

the sprite is sliced into 4 corners, 4 edges, and 1 center slice, which is tiled across the desired space.

More scaling options

Parameter
Description

width

The width of the sprite, in pixels.

height

The height of the sprite, in pixels.

border

An array of chThe size in pixels that the border slices should cover on-screen

stretch_inner

the stretch_inner option means whether the texture will be stretched or not, to avoid mixels or something like that deactivate it

awesome_background.png.mcmeta

{
    "gui": {
        "scaling": {
            "type": "nine_slice",
            "width": 100,
            "height": 100,
            "border": 9
        }
    }
}

awesome_frame.png.mcmeta

{
    "gui": {
        "scaling": {
            "type": "nine_slice",
            "width": 100,
            "height": 100,
            "border": 10,
            "stretch_inner": true
        }
    }
}

Give Custom Tooltip Command

/give @p diamond[tooltip_style='minecraft:awesome'] 1

GUI Routes

πŸ“¦resource_pack.zip
  └── πŸ“assets
       └── πŸ“minecraft
           └── πŸ“textures
               └── πŸ“gui
                   β”œβ”€β”€ πŸ“advancements
                   β”‚    β”œβ”€β”€ πŸ“backgrounds
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    └── 🎨<textures>
                   β”œβ”€β”€ πŸ“container
                   β”‚    β”œβ”€β”€ πŸ“creative_inventory
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    └── 🎨<textures>
                   β”œβ”€β”€ πŸ“hanging_signs
                   β”‚    └── 🎨<textures>
                   β”œβ”€β”€ πŸ“presets
                   β”‚    └── 🎨<textures>
                   β”œβ”€β”€ πŸ“realms
                   β”‚    └── 🎨<textures>
                   β”œβ”€β”€ πŸ“sprites
                   β”‚    β”œβ”€β”€ πŸ“advancements
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“boss_bar
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“container
                   β”‚    β”‚    β”œβ”€β”€ πŸ“anvil
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“beacon
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“blast_furnace
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“brewing_stand
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“bundle
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“cartography_table
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“crafter
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“creative_inventory
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“enchanting_table
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“furnace
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“grindstone
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“horse
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“inventory
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“loom
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“slot
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“smithing
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“smoker
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“stonecutter
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    β”œβ”€β”€ πŸ“villager
                   β”‚    β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“gamemode_switcher
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“hud
                   β”‚    β”‚    β”œβ”€β”€ πŸ“heart
                   β”‚    β”‚    β”‚     └── 🎨<textures>
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“icon
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“notification
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“pending_invite
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“player_list
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“popup
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“realm_status
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“recipe_book
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“server_list
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“social_interactions
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“spectator
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“statistics
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“toast
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“tooltip
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“transferable_list
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    β”œβ”€β”€ πŸ“widget
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    └── πŸ“world_list
                   β”‚         └── 🎨<textures>
                   β”œβ”€β”€ πŸ“title
                   β”‚    β”œβ”€β”€ πŸ“background
                   β”‚    β”‚    └── 🎨<textures>
                   β”‚    └── 🎨<textures>
                   └── 🎨<textures>
PreviousblockstatesNextEquipment

Last updated 3 months ago

383B
command_block_back.png
image
11KB
fire_0.png
image
fire_0.png
3KB
reflection_animated_texture.png
image
128B
background.png
image
awesome_background.png
592B
frame.png
image
awesome_frame.png