Custom Paintings

EcoItems can add fully custom paintings: the artwork ships in the resource pack, and the painting registers through a datapack EcoItems generates in your main world.

Creating a painting

Each painting is one config in the paintings/ folder - the file name is the painting's ID. Drop the artwork at pack/assets/ecoitems/textures/painting/<id>.png (16 pixels per block, so a 2×2 painting wants a 32×32 texture):

# paintings/starlight.yml
width: 2
height: 2
title: "Starlight"
author: "EcoItems"

Using it

Give a placeable painting item via a custom item with the painting/variant component (see the shipped starlight_painting example):

# items/starlight_painting.yml
item:
  item: painting
  name: "&9Starlight Painting"
  components:
    "minecraft:painting/variant": "ecoitems:starlight"

Or directly: /give @s painting[painting/variant="ecoitems:starlight"].

Breaking a placed custom painting drops the item configured with that variant (or, if no item declares it, a painting item that keeps the variant) - vanilla on its own would drop a plain painting.

Animated paintings work like vanilla animated textures: put a <texture>.png.mcmeta next to the artwork.