Skip to content

Random Texture Type

SuperMartijn624 edited this page Jun 18, 2026 · 1 revision

Random textures

Random textures consist of multiple tiles from which one is chosen at random. Random textures can also be combined with other texture types and can be animated.

Note

Random textures also support all properties of the base texture type.

The random texture type uses the identifier random and has the following properties:

key values default description
rows integer, >0 <=100 1 Number of rows of tiles in the image
columns integer, >0 <=100 1 Number of columns of tiles in the image
randomness_source position, position_facing,
position_axis
position_facing Inputs used for the randomness when picking a tile
seed integer none Seed used to generate random numbers when picking which tile to use
sub_texture Texture metadata None Metadata used for each tile as if each tile were its own texture
per_tile_animation true or false false Whether each tile contains its animation frames

The rows and columns options specify the size of the grid of tiles. Tiles that are empty (completely transparent) are not processed and ignored when picking a tile from the grid.
The seed option can be used to force two textures to use the same or different randomness. If seed is not specified, it is left up to Fusion.

Here is an example of tuff bricks with some random variations.

{
  "fusion": {
    "type": "random",
    "rows": 2,
    "columns": 3,
    "randomness_source": "position",
    "seed": 5627
  }
}
Tuff bricks with random variations

In Minecraft, the example would look like this:

Tuff bricks example in game

Sub-textures

Random textures can be combined with other texture types. This is achieved through the sub_texture property. When sub_texture metadata is specified, each tile is essentially treated as its own texture with that metadata.

Here is an example of a random texture combined with a scrolling texture:

{
  "fusion": {
    "type": "random",
    "rows": 2,
    "columns": 2,
    "sub_texture": {
      "type": "scrolling",
      "from": "top_left",
      "to": "bottom_left",
      "frame_height": 16,
      "frame_width": 16,
      "frame_time": 10
    }
  }
}
Random scrolling texture example

Animation

Random textures can also be animated. The setup is the same as for a vanilla animated texture.

Tip

A description of the vanilla animation metadata is available at the Minecraft Wiki.

Here is an example of an animated random texture:

{
  "fusion": {
    "type": "random",
    "rows": 2,
    "columns": 2
  },
  "animation": {
    "frametime": 10
  }
}
Animated random texture example

Per tile animation

With large numbers of tiles, the different frames for a tile are spread far apart. To combat this, you can use the per_tile_animation property. When per_tile_animation is true, the different frames are instead grouped per tile.

Here is how the previous example would look with the per_tile_animation property:

{
  "fusion": {
    "type": "random",
    "rows": 2,
    "columns": 2,
    "per_tile_animation": true
  },
  "animation": {
    "frametime": 10
  }
}
Per tile animated random texture example

Clone this wiki locally