
Crash on Client Render Thread – IllegalStateException: BufferBuilder was empty in VertexBufferHolder (v12.3.1-189, MC 1.21.1)
Closed this issue · 5 comments
Minecraft Version
1.21.1
Immersive Engineering Version
12.3.1-189
How did it happen?
Description:
When using Immersive Engineering version 12.3.1-189 on Minecraft 1.21.1, the client crashes during world rendering with the following error:
java.lang.IllegalStateException: BufferBuilder was empty
at com.mojang.blaze3d.vertex.BufferBuilder.buildOrThrow(MixinBufferBuilder.java:69)
at blusunrize.immersiveengineering.client.utils.VertexBufferHolder.lambda$new$1(VertexBufferHolder.java:92)
at blusunrize.immersiveengineering.client.utils.VertexBufferHolder.afterTERRendering(VertexBufferHolder.java:159)
Downgrading to an earlier version of Immersive Engineering resolves the issue, confirming the crash is introduced in 12.3.1-189.
Steps to Reproduce:
Install Immersive Engineering 12.3.1-189 on Minecraft 1.21.1 with NeoForge 21.1.172.
Load into a world (multiplayer or singleplayer).
Move around or load chunks containing Immersive Engineering blocks.
Client crashes with the above error.
Expected Behavior:
The game should render the world without crashing.
Environment:
Minecraft: 1.21.1
Immersive Engineering: 12.3.1-189
NeoForge: 21.1.172
Java: 21.0.4 (Eclipse Adoptium)
OS: macOS 15.5 (Apple M2 Max, Metal backend)
GPU: Apple M2 Max (OpenGL via Metal)
Modpack: FTB Evolution 1.19.0 (100097)
Additional Notes:
Disabling rendering mods like Iris, Embeddium, and Monocle did not resolve the issue.
The crash appears to be triggered by an empty vertex buffer during terrain rendering.
Possibly related to rendering optimizations or compatibility with Flywheel or ImmediatelyFast.
Crash Log
Reverting to older version ImmersiveEngineering-1.21.1-12.3.0-188 solves the above issue.
You likely have a blueprint for Arc Furnace electrodes in a workbench somewhere. I didn't account for that in the last update.
If you remove it from the workbench and then update IE, you should be fine.
@BluSunrize is this somethign we might see addressed in a future update? This is a bit problematic for us on large packs as its difficult to convey to all the players that they need to remove their blueprints before upgrading. As it stands we're going to downgrade in our packs for now. Thanks for the info!