Convert Blockbench Bedrock entity animations into Minecraft Java Edition resource-pack models with multi-axis rotation (25w46a+).
- Minecraft 25w46a+ only (uses per-element XYZ rotation).
- Animation import supports translation and rotation; scale is read but ignored to avoid distortion.
- Create your Bedrock Entity model and animations in Blockbench. Save project as
.bbmodelfile. - Open the bmaMC GUI:
- Option A – run from source: from terminal, run
python gui.py - Option B – use the Windows executable: download
bmaMC_v1.0.0.exefrom
https://www.mediafire.com/file/o4232hd60ujv6jq/bmaMC_v1.0.0.exe/file
and run it directly.
- Option A – run from source: from terminal, run
- Import one or more
.bbmodelfiles into bmaMC (multi-file import supported). - On the right panel, set:
- Output folder
- Description (for
pack.mcmeta) - Pack format — see the list here: https://minecraft.wiki/w/Pack_format#List_of_resource_pack_formats
- FPS (recommended 20; no in-between frame interpolation, so lower FPS will look choppy)
- Click Generate or Clear Folder and Generate
- Generate: builds into the selected output folder
- Clear Folder and Generate: empties that folder first, then builds
- Load the output as a resource pack in Minecraft.
Example (give item using a dynamic model):
If the model name is model and the animation name is walk, you can get an apple using the animated model with:
/give @a minecraft:apple[minecraft:item_model="model/walk"]-
Model size limits
Minecraft requires each cube’s
from/tocoordinates to stay within the range -16 to 32 on every axis — this includes all positions reached during animation.
If any element goes outside this range at any frame, the model will not render.Workaround: scale down in Blockbench, then scale back up in bmaMC
- In Blockbench, open File → Project… and set Default UV mode to Per-Face UV.
- Use Transform → Scale…, with the pivot at (0, 0, 0), to scale the whole model down.
- The recommended minimum scale factor is 0.25. Going smaller than 0.25 cannot be fully restored later, because Minecraft only supports up to 4× scale back up.
- Ideally, adjust the model size before creating animations.
- If you already have animations, you must manually scale all animated Position values:
each keyframe position should be multiplied by the same scale factor you used on the model (for example, original position10with scale0.25becomes2.5).
- If you already have animations, you must manually scale all animated Position values:
- In bmaMC, set the Scale field to the inverse of the Blockbench scale you used.
- Example: if you scaled the model to 0.5 in Blockbench, then set Scale = 2 in bmaMC (
1 / 0.5 = 2) to restore its in-game size.
- Example: if you scaled the model to 0.5 in Blockbench, then set Scale = 2 in bmaMC (
-
Single-sided geometry
Some models (for example,
evoker_fangs) appear to show “inside” faces in Blockbench.
However, due to Minecraft’s rendering rules, faces are only rendered on the outer side; the back side (inside) is not drawn.This means single-sided or thin, hollow models that rely on visible interior faces will not display correctly in-game.
When designing models for use with bmaMC, avoid relying on geometry where you need to see the inside of a single face or thin shell.
To quickly see bmaMC in action, load bmamc.zip as a resource pack in Minecraft, then run:
/summon item_display ~ ~ ~ {item_display:"head",item:{id:"minecraft:apple",count:1,components:{"minecraft:item_model":"polar_bear/attack"}}}/summon item_display ~ ~ ~ {item_display:"head",item:{id:"minecraft:apple",count:1,components:{"minecraft:item_model":"polar_bear/walk"}}}showcase.mp4
The original Blockbench model used for this demo is included in the repository:
you can find the polar_bear model file under example_model folder.
Remember to scale it up by 4× when using bmaMC.
Special thanks to ChatGPT for development assistance and idea refinement,
and to Blockbench for providing such a powerful and user-friendly modeling tool
that made this project possible.

