mojira.dev
MC-79697

Entities don't render properly when next to invisible spider, charged creeper, or wither boss with armor

What I expected to happen:

Entities next to the invisible spider to render properly

What actually happened:

That entity didn't render properly

How to reproduce (Spider):

1. Spawn a spider

2. Throw splash potion of invisibility on the spider
3. Spawn any entity next to the spider
4. Notice how the entity looks weird

How to reproduce (Creeper):

1. Spawn a creeper

2. Make sure entity shadows are set to off in the video settings. (Options... -> Video Settings... -> Entity Shadows)
3. use

/entitydata @e[type=creeper,c=1] {powered:1b}

4. Spawn any entity next to the creeper

5. Notice how the entity looks weird

How to reproduce (Wither):

1. use

/summon wither ~ ~ ~ {Health:0.1f,NoAI:1b,ActiveEffects:[{Id:14,Amplifier:1b,Duration:10000}]}

2. Spawn any entity next to the wither
3. Notice how the entity looks weird
Probably invalid since bosses can no longer have effects without using commands

Notes:

  • If the spider/creeper dies, moves far enough, or is no longer invisible/charged,the entity starts rendering normally.

  • Other Entities can be seen through the bugged entity

  • This cannot be used to see entities through wall as shown in pictures 7 and 8.

  • The creeper one doesn't usually happen unless Video Settings: Entity Shadows is off, because shadows reset the depth mask.

Code analysis:

Linked issues

MC-71757 Mobs rendering strangely Resolved MC-74379 See-Through Horse Resolved MC-81127 Enderchest texture is buggy / Mob & player characters partwise transparent Resolved MC-95835 Spider/Enderman Transparency Bug Resolved MC-98888 Incorrect rendering of mobs, when rendered charged creeper Resolved

Attachments

Comments 19

Confirmed.

Tan Chin Cheern

Confirmed. Works with Cave Spiders. Does not work with any other entities except spiders. Effect:

  • Changes a portion of the mob's body transparent/translucent.

Confirmed for

  • 15w40b

Confirmed for

  • 16w02a

Please link to this comment in the description of the report.

The following is based on decompiled version of Minecraft 1.8 using MCP. All method and class names are the names used in the decompiled version.

The reason which this happens is very likely that the public void func_177148_a(EntitySpider p_177148_1_, float p_177148_2_, float p_177148_3_, float p_177148_4_, float p_177148_5_, float p_177148_6_, float p_177148_7_, float p_177148_8_) method of the net.minecraft.client.renderer.entity.layers.LayerSpiderEyes class disables the depth mask if the spider is invisible but is not enabling it again after it rendered the spider.

9 more comments

Still happens with spiders and withers in 1.12.1, charged creepers are fixed.
Also affects creepers when entity shadows are off.

Confirmed for 1.12.2
Edit: I moved the creepers a block from the charged creepers. Now, one of them renders just fine but another one the same exact distance away but in the opposite direction renders incorrectly when I'm a certain distance away from it north (east/west doesn't seem to matter) (closer to the charged creeper)

I noticed this in my world I made for resource pack testing. I had some mobs in barrier cages, and creepers in some of them. I summoned a creeper, a creeper with no AI, a charged creeper, and a charged creeper with no AI in a row. The first issue I had was that the last charged creeper (with no AI) did not render properly. However, this went away as soon as I charged it and then left/rejoined the world. Then, I noticed the second creeper (not charged, with no AI) was not rendering correctly. I left/rejoined the world several times and switched resource packs several times, but could not fix it, so I searched on the issue tracker and found this. (Sorry if that was a little lengthy- second comment/whatever on the issue tracker ever...)

Confirmed for 1.13-pre8

Confirmed for 1.13

Confirmed for 18w30b

Alex Alcorn

Asteraoth

migrated

Confirmed

creeper, depth, invisible, mask, rendering

Minecraft 1.8.3, Minecraft 1.8.4, Minecraft 1.8.7, Minecraft 15w37a, Minecraft 15w40b, ..., Minecraft 1.13, Minecraft 18w30a, Minecraft 18w30b, Minecraft 18w31a, Minecraft 18w32a

Minecraft 18w33a

Retrieved