mojira.dev
MC-89760

Skin's jacket parts do not show up under specific conditions

Apparently the Minecraft client separates the skin file into squared chunks surrounding 'jacket layer' (aka helm/hat layer, 2nd layer, ...) parts:

[media]

Looking at the 'jacket map' above, if any of the squared areas in the skin file is fully opaque, then the underlying jacket part will not show up in game. As soon as there is at least one transparent pixel in a square, that jacket part will show up in the game.

This behavior is very confusing, not intuitive and AFAIK not officially documented.

The expected behavior would be rendering the jacket layer even if a part is fully opaque.
Unless you're okay with a breaking change or re-processing all uploaded skins, you would still need to check for at least one transparent pixel in the whole skin file (to make sure the designer was 'aware' of the jacket layer and to support legacy skins). Otherwise some skins, including Notch's, would result in a fully opaque (not intended) jacket layer (or at least hat layer for < 1.8 skins)

(Link to original discussion)

Linked issues

Attachments

Comments 6

if any of the squared areas in the skin file is fully transparent, then the underlying jacket part will not show up in game.

Presumably you meant opaque here, rather than transparent? I mean, it's true that if a section of the second layer is completely transparent, then it won't show up. Because it's transparent. 😉

It presumably checks for transparency as a kind of backwards-compatibility measure, so that files made when that area was unused don't surprise players by displaying it unexpectedly. However, that doesn't cover all cases, and apparently produces unexpected behavior of its own. Since it's possible to disable specific areas of the second layer in-game, and easy to edit the skin to remove unwanted pieces, the transparency check seems like a solution in search of a problem. Figuring out that a piece isn't displaying because it doesn't have a transparent pixel seems much harder for anyone to track down.

Presumably you meant opaque here, rather than transparent?

Yep, fixed.

The issue isn't correctly fixed.
I told you 😛

Otherwise some skins, including Notch's, would result in a fully opaque (not intended) jacket layer (or at least hat layer for < 1.8 skins)

This is how Notch looks like in the game now:

[media]

This can't possibly be intended? Please re-open.

See my previous comment.

Ha! Didn't know other people track this stuff so closely, should have used the search bar 😉

deleted

migrated

Unconfirmed

skin, skins, texture

Minecraft 1.8.8

Minecraft 1.9.3 Pre-Release 1

Retrieved