-
Bug
-
Resolution: Unresolved
-
None
-
1.19.4, 23w18a
-
Confirmed
-
Performance, Textures and models
-
Normal
-
Gameplay
The bug
The models that hoppers use are notably unoptimized, using many more texture planes than are neccessary. This causes rendering lag in areas where a lot of hoppers are present, such as automatic storage facilities.
Implementation
Both vanilla hopper models (downwards and horizontal) use 32 texture planes to render parts of the block, most of which are at the top and are used for rendering the concavity. However, many of these are coplanar, which results in flat surfaces using more than a single quad to render when only one is neccessary. This also causes MC-246224 to be visible upon close inspection.
It's possible to do both hopper models using just 21 texture planes instead. The end result is the same, and MC-246224 is eliminated (although MC-73186 can take its place).
How to reproduce
- Download the optimized hopper resource pack attached to this ticket
- Create the following superflat world:
minecraft:barrier,10*minecraft:hopper;minecraft:the_void
- Set your render distance to 2 and simulation distance to 5
- Execute the command
/tp @s 0 -50 0 0 90
- Open the performance debug bars using Alt-F3
- Compare the performance you get when using vanilla's hopper model versus the optimized hopper model from the resource pack attached
How to fix
I've made this fix very simple - you just need to replace the current hopper model files (hopper.json and hopper_side.json) with the ones in the resource pack. The hopper_top.png texture file, in both the current default textures and Programmer Art, will also have to be replaced with the textures included in the resource pack as well (see MC-262453 for more information). I give full 100% permission and encouragement to Mojang to use these assets in the game.
- relates to
-
MC-262461 Stair models are unoptimized and can cause rendering lag
- Open
-
MC-262470 Cauldron models are very unoptimized, causing render lag
- Open
-
MC-267127 Composter model is unoptimized, causing extra rendering lag
- Open
-
MC-252693 Huge FPS drop in areas with a lot of honey blocks and slime blocks
- Resolved
-
MC-260296 Pink petal block models are not optimized
- Resolved
-
MC-262652 Dragon egg's side texture is mapped strangely as of 1.8 (and the model is also unoptimized)
- Resolved
-
MC-262427 Flower pots and potted objects have very poorly optimized models and strange texture mapping
- Open
-
MC-262527 Item frame models are quite unoptimized
- Open
-
MC-262641 Chorus flower models are incredibly unoptimized and cause serious rendering lag
- Open
-
MC-262689 Hanging mangrove propagule models are comically unoptimized
- Open
-
MC-262953 Fence gate models are very unoptimized, causing lag among other issues
- Open
-
MC-267281 Fence multipart model system performance optimization
- Open
-
MC-267315 Rendering performance optimization for glass pane models
- Open
-
MC-267864 Two-tall plant model/rendering not optimized
- Open
- testing discovered
-
MC-262454 Unused pixels in hopper top texture and hopper side texture
- Open