Better Seats

Quick rating

Community listing page, reviews here may not be monitored by the author.

Better Seats

By kainordherdOwner

No reviews yet

Optimized Seats entity rendering and performance.

Mod Loaders
Minecraft

About

Description

Better Seats is a Fabric performance mod for Minecraft 26.3-snapshot-3. Mojang calls the new seat entity a Cushion in code. Large builds can contain thousands of these entities, so their per-frame rendering and synchronized server checks become visible costs.

Optimizations

  • Cushion model submissions are coalesced by vanilla RenderType. The mod retains the vanilla model, texture, pose, packed light, and overlay for every instance while replacing one short-lived submit object per cushion with a reusable batch.
  • Within the batched path, the static cushion model does not reset its unchanged model-part pose for every instance.
  • Server support and fluid checks keep vanilla's 101-tick period, but their first check is distributed by entity ID so mass-loaded cushions do not all run the expensive check on the same tick.
  • An optional render-distance cap is available for very large builds. It is disabled by default because a cap is a visible quality tradeoff. Occupied, glowing, and custom-named cushions are always exempt.

Vanilla 26.3 already batches model draw calls by texture. Better Seats does not replace that renderer or claim extra draw-call savings; it targets the per-entity allocation and model-submit work that remains before each batch is uploaded.

Configuration

On first launch, the mod creates config/better-seats.properties:

batch-render-submissions=true
skip-static-model-reset=true
max-render-distance=0
stagger-support-checks=true

Set max-render-distance to 16 through 512 blocks to enable the visual distance tradeoff, or leave it at 0 for vanilla behavior. Restart the game or server after changing the file. skip-static-model-reset only affects the batched path; set it to false to retain vanilla pose setup while testing batch compatibility. The client batch and server staggering can be disabled independently.