Center of Mass Tool for Balanced Multi-Part Prints

TL;DR
Let us define 2+ objects where the center of mass (COM) is expected to be centered, and let Bambu Studio help us achieve that using intelligent COM analysis and per-region infill balancing — ideal for fair dice, rotating parts, and balance-sensitive systems.


:bullseye: Background

In multi-material or multi-object prints — like dual-color dice, drone rotors, or mechanical spinners — even small COM shifts can negatively impact performance.

Designers often embed asymmetrical features (like numbering, logos, or structural accents) that unintentionally pull the COM off-center.

This causes:

  • Biased rolls in dice,
  • Vibration in rotating parts,
  • Unpredictable mechanical behavior.

:hammer_and_wrench: Proposal: COM Analysis + Dynamic Infill Compensation

We propose a Bambu Studio feature to:

  • :magnifying_glass_tilted_left: Visualize the COM after slicing (based on shell, infill, and material density),
  • :bullseye: Show a COM offset vector from the geometric center,
  • :balance_scale: Suggest or allow per-region infill overrides to re-center the COM,
  • :compass: Optionally enable a “Fair Mode” where COM is auto-tuned for geometric symmetry.

:test_tube: Case Study: Dual-Color d20 Dice

Our use case involves printing a d20 die using:

  • One object for the dice body,
  • One object for the font, extruded slightly into the die (in a second color).

In standard d20 design, opposite faces sum to 21 — for example, 20 is opposite 1. This is not just aesthetic; it is a deliberate game design choice intended to balance outcomes and discourage cheating.

Why this matters:
A player attempting to spin the die to avoid a critical miss (rolling a 1) will necessarily bias the die away from the 1 face. But because the 20 is directly opposite, they are also biasing away from a critical success (rolling a 20). This built-in symmetry makes it impossible to cheat the system by favoring only high rolls — a clever physical safeguard baked into fair d20 design.

:right_arrow: However, even with this face layout, fairness is still compromised when:

  • Some numbers (like “20”) have deeper or denser glyphs than others (like “1”),
  • The slicer assigns uneven wall or infill densities, especially in dual-color prints.

These subtle but real differences shift the true center of mass, leading to biased behavior — especially in rotational rolls or spins. And no existing slicer warns the user or helps compensate for this.


:cyclone: Rotational Fairness Matters

Dice aren’t just rolled — they’re spun, flicked, tumbled. In all of these, rotational balance matters. Designers expect:

  • Uniform behavior across all spin axes,
  • Minimal bias regardless of angle.

But unless the COM is perfectly centered, this ideal can’t be achieved — and slicers today offer no way to monitor or correct this.


:wrench: Why Dynamic Infill Helps

Rather than redesigning the STL or fonts, we’d prefer to:

  • Preserve the intended geometry and dual-material look,
  • But use per-region infill overrides to counterbalance COM shifts,
  • Allow auto-tuned mass distribution, so fairness is preserved.

This is especially important in Bambu Studio where multi-color printing is common — and where different wall thicknesses, densities, and infill paths can dramatically alter a part’s true balance.


:globe_showing_europe_africa: Broader Impact

This feature would benefit:

  • Game designers (fair dice, spinners),
  • Engineers (symmetry-critical enclosures, rotating shafts),
  • Hobbyists printing balanced parts (tops, propellers, gyros),
  • Anyone using multi-part designs where balance matters.

:white_check_mark: TL;DR:

Give us a COM analysis and auto-balance feature in Bambu Studio for multi-object prints. It would let designers preserve fairness, symmetry, and rotational balance — whether for dice or drones — without redesigning geometry, just with smart infill.

:paperclip: Addendum: Prior Art & Justification for Renewed Request

As part of preparing this proposal, I reviewed historical feature requests on the Bambu Lab Forum to assess whether similar ideas had already been suggested. Two relevant posts emerged:

:pushpin: 5 Studio Features Requests Gamechangers (September 4, 2023)

  • Summary: This request included a feature to “Display and Edit Center of Gravity” (COG) post-slicing, with the goal of improving model stability by adjusting infill distribution.
  • Status: As of May 2025, this feature has not been implemented in Bambu Studio.
  • Limitation: While this request is related, it focuses on adjusting balance manually, without linking to geometric fairness or rotational symmetry.

:pushpin: Dual Infill Option

  • Summary: Proposed region-specific infill densities (e.g., denser near walls), which could assist with structural tuning.
  • Status: This also remains unimplemented.
  • Limitation: No connection to geometric fairness, symmetry, or center of mass/geometry alignment.

:repeat_button: Why We Are Re-Proposing (and Extending) the Idea

Our request builds upon those two by explicitly targeting a new use case:

Ensure center of mass (COM) aligns with the center of geometry (COGEO) for applications that require physical and visual balance — such as dice, tops, or rotating multi-part assemblies.

Specifically, we propose:

  • COM visualizer: Post-slicing view showing COM overlayed on COGEO.
  • Dynamic infill compensation: Automatically redistribute infill to bring COM closer to COGEO without changing outer geometry.
  • Fair Mode toggle: For balance-critical prints, enable auto-tuned infill that prioritizes rotational fairness.

:white_check_mark: Why Now?

  • Despite community interest going back 1.5 years, no action has been taken.
  • Our proposal is more general and physics-aware, addressing rotational fairness and print predictability, not just static stability.
  • With the growing use of Bambu printers for functional and interactive parts, this is a highly relevant upgrade to the slicer.
2 Likes

While this is a very detailed explanation and suggestion, I worry it is in the wrong place.

This should be on the Open Source project for Bambu Studio and/or Orca Slicer.