mojira.dev
MC-306697

Blockstate multipart only uses the first entry for block particles texture

Suppose I have a 1.21.11 resource pack with 3 custom assets files: blockstates/brown_mushroom_block.json, models/block/red.json, textures/block/red.png

blockstates/brown_mushroom_block.json:

{
	"multipart":[
		{"when":{"down":false,"east":false,"north":false,"south":false,"up":false,"west":false},"apply":{"model":"block/gold_block"}},
		{"when":{"down":false,"east":false,"north":false,"south":false,"up":false,"west":true},"apply":{"model":"block/red"}}
	 ]
}

models/block/red.json:

{
    "parent": "block/cube_all",
    "ambientocclusion": false,
    "textures": {
        "particle": "block/red",
        "all": "block/red"
    }
}

I do not change models/block/gold_block in any way, it is only used to help demonstrate another texture

Here's how it looks in the game when I break the according blocks (I use fill command with destroy parameter in the screenshots):

[media]

as you can see, both blocks have the same particle breaking texture, even though we specified "particle": "block/red" in the models/block/red.json model.

Now let's change the order of entries in the multipart json for blockstates/brown_mushroom_block.json:

{
	"multipart":[
                {"when":{"down":false,"east":false,"north":false,"south":false,"up":false,"west":true},"apply":{"model":"block/red"}},
		{"when":{"down":false,"east":false,"north":false,"south":false,"up":false,"west":false},"apply":{"model":"block/gold_block"}}
		]
}

And now we have the opposite effect, we only see the red texture particles, but not gold_block:

[media]

Is this intended behavior? Is there any chance to make it so each block model have their own particle breaking texture?

Expected result: each entry of multipart applying the particle texture to the respective model.

Actual result: only the first entry of multipart json is responsible for applying the particle texture.

Environment

openjdk 21.0.10 2026-01-20

Comments 0

No comments.

lep

(Unassigned)

Unconfirmed

(Unassigned)

1.21.11

Retrieved