Features:
- Removes the bed’s block entity renderer and uses ordinary JSON block models instead
- Increased rendering performance
- Resource packs can finally change how beds look
- Completely client-side mod
- Everything behaves the same as in vanilla
- Bundled models mimic the vanilla bed exactly
- Example resource packs available as a starting point for custom looks
- Modded beds using the default renderer need model files supplied
- Modded beds with their own block entity renderer are left untouched
- Not compatible with Bedspreads
- Fabric and Quilt support
- For Minecraft 1.21.1
Beds are one of the few everyday blocks in Minecraft that are not drawn like a normal block. They rely on a block entity renderer instead of the default model renderer, which costs extra performance and keeps their appearance out of reach for resource packs. Better Beds removes that renderer and lets the default model renderer draw beds from JSON models, exactly the way every other block is handled.
Two things come out of that swap: performance and freedom. Rendering a bed becomes as cheap as rendering any other block, and resource packs can finally reshape and retexture beds like any normal model. The mod is completely client-side, so it can sit on a single client without touching the server at all.
Out of the box nothing looks different, because the bundled models mimic the vanilla bed one to one. Changing the look means installing one of the example resource packs or building your own on top of them, and everything else behaves precisely as it does in vanilla. The one known incompatibility is Bedspreads, which relies on the bed’s block entity renderer. Other mods that add beds through the default renderer will need model files supplied for those beds, while mods that ship a custom bed renderer of their own are left alone.
There is a historical reason the bed ever needed special treatment. Back in 1.12 the game still ran on the old block id system, and the wave of new blocks added at the time was exhausting the available ids, so the bed was turned into a block entity with its own renderer to save a few. The flattening in 1.13 brought in a new id system without that limit, but the bed block entity and its renderer were never revisited. This build runs on Fabric and Quilt for Minecraft 1.21.1 and is a tiny 0.04 MB download.