Skip to content

Mapping Files

Excederus edited this page Aug 24, 2026 · 5 revisions

Purpose

Mapping files tell Shader Patcher at which vanilla block, item or entity the patch values in the patch file should be inserted.

To achieve this the MappingKey across these files has to match, otherwise Shader Patcher does not know where to put the patch values.

For mapping files only one value per MappingKey is allowed.

Example

ExampleMod wants to add support for these blocks:

  • example_grass
  • example_tall_grass
  • example_flower_1
  • example_flower_2
  • example_glass
  • example_glass_pane
  • example_leaves
  • example_blue_candle

ExampleMod can create the file block.examplemod.yaml in ~/assets/examplemod/shaderpatcher/mappings/ with this content:

waving:
  grass:
    short: grass
    tall: tall_grass
  flower:
    small: dandelion
  leaves: oak_leaves
translucent:
  glass:
    regular: glass
emissive:
  candle:
    blue: blue_candle

ExampleMod could also use the default mappings that come with Shader Patcher.

To explain this example a bit further:

  • A patch value with the MappingKey waving>grass>short would be inserted into the same property file ID that minecraft:grass is in
  • A patch value with the MappingKey emissive>candle>blue would be inserted into the same property file ID that minecraft:blue_candle is in

Clone this wiki locally