Blockbench is a free, easy-to-use 3D modeling tool built specifically for voxel and low-poly assets. It's especially popular among Minecraft creators, but it's also widely used for game development, modding, and simple animated models.
The interface is clean and beginner-friendly, while still offering powerful features like real-time previews, texture painting, bone-based animation, and multiple export formats. Whether you're creating custom Minecraft mobs, game assets, or stylized low-poly models, Blockbench makes the process fast, intuitive, and accessible – even if you're new to 3D modeling.
Blockbench puts all the tools at your disposal to make the creation process of low-poly models as easy as possible. Use cuboids to get that Minecraft aesthetic, or create complex low-poly shapes using the mesh modeling tools.
What file formats does Blockbench support?
Blockbench supports formats commonly used in voxel and game workflows, including JSON-based formats (such as Minecraft models), OBJ, and glTF, depending on the project type and plugins in use.
Can I extend Blockbench with plugins?
Yes. Blockbench includes a plugin system that allows users to add tools, export options, workflow enhancements, and custom features developed by the community.
How does Blockbench handle UV mapping and textures?
Blockbench provides built-in UV editing with pixel-accurate control, texture painting tools, and live texture previews directly on the model.
Can I export directly into a resource or behavior pack for Minecraft?
Yes. Blockbench can export models and related files directly into Minecraft resource packs (Java Edition) and behavior packs (Bedrock Edition), allowing creators to test and iterate on models inside the game with minimal setup.
What are good alternatives to Blockbench for Minecraft modeling?
Blender is the most common alternative, offering more advanced modeling and animation tools but with a steeper learning curve and additional setup for Minecraft workflows. For simple block and item models, in-game tools and basic JSON editors, such as Visual Studio Code, Notepad++ and Sublime Text are sometimes used, though they lack visual previews and animation support.
Features
Texturing Tools
Create, edit and paint texture right inside the program. Create or import palettes, paint, or draw shapes.
Blockbench can automatically create a UV map and template for your model so that you can start painting right away.
You can paint directly on the model in 3D space, use the 2D texture editor, or connect your favorite external image editor or pixel art software.
Animations
Blockbench comes with a powerful animation editor. Rig your model, then use position, rotation and scale keyframes to bring it to life. Use the graph editor to fine-tune your creation.
Animations can later be exported to Minecraft: Bedrock Edition, rendered in Blender or Maya, or shared on Sketchfab.
Plugins
Customize Blockbench with the built-in plugin store.
Plugins extend the functionality of Blockbench beyond what it's already capable of. They add new tools, support for new export formats, or model generators.
You can also create your own plugin to extend Blockbench or to support your own format.
Free and Open Source
Blockbench is free to use for any type of project, forever, no strings attached.
The project is open source under the GPL license.
What's New
Highlights of this update:
- Mirror Animating!
- Native support for image formats, including Jpeg, TGA, and WebP
- Bounding Boxes
- Better pen tablet support
- Preserve World Transform option
- UV Size Editor
- Texture wrap mode / Texture tiling
- Editing of Minecraft: Bedrock Edition attachables
Painting
- Improved pen tablet support (#3214)
- If you are having trouble getting pressure sensitivity to work, ensure Windows Ink is enabled in your pen tablet software, and set a modifier in the Blockbench paint settings (for example "Brush Size Modifier") to "Pressure".
- Added mouse drag gestures to adjust sliders such as brush size, which can be enabled in keybindings (#3235)
- The Layers panel is now always visible (#2904)
- Added automatic tool switch when using color picker (#3369, thanks @Kannoma!)
- When holding alt to color-pick, if the picked pixel was transparent, it will switch back to the eraser when releasing the button
- When using the eraser and using Alt to color pick, picking a colored pixel will switch back to the brush tool
- Added setting "Color Picker Tool Switch" to toggle this behavior (on by default)
- Added new layer blend mode "Alpha Mask"
- Line tool length and angle are now displayed in status bar
- Added Set Opacity option in the Adjust Opacity tool (#3374)
- Added a Brightness slider to the Adjust Hue/Saturation tool
- The Opacity Slider is now visible while using the Color Picker (#3300)
- The Hold keybinding for the Color Picker can now be customized in the keybindings menu (JannisX11/hytale-blockbench-plugin#140)
Textures
Textures now support multiple formats natively! The following formats can be loaded into Blockbench, refresh in real time, and can be saved:
- PNG
- TGA (#1787, #2343)
- JPEG
- WebP
- Added a TGA texture workflow that supports retaining color accuracy at low opacity pixels. To use this, click Split Alpha Channel into Layer and keep the alpha channel as a separate layer
- "Split RGB channels into Layer" now support the alpha channel (#3302)
- Added setting for individual FPS per flipbook texture (#2851)
- Flipbook texture animations now play in sync with the animation timeline, can be turned off in setings (#2850)
Modeling
- Added "Preserve World Transform" option when reparenting outliner nodes. This lets you keep the global position of an element when adding it to another group, even if the parent groups have different rotations
- Added setting to transform cubes from the center in the transform panel
- Added setting to display positions in local space (JannisX11/hytale-blockbench-plugin#130)
- New armature bones now inherits dimensions from parent bones (#3279)
Animation
- Added Mirror Animating (#2321)
- Similar to Mirror Modeling and Mirror Painting, this live-flips your keyframe changes to the other side. Useful for symmetrical animations such as walk cycles!
- Bones need to follow a left/right naming schema (e. g. L/R, left/right etc.) to be mirrored
- The mirror phase offset can be configured (#2375)
- Added Copy Animation Pose action
- Added action to Add All to Timeline (#3150)
- Added Round Keyframe Values action (#3363)
- Created Keyframe Column variation to create keyframes on all channels. This is activated by holding Shift, but can be configured in Keybindings (#1457)
- Timeline markers can now be named
- Added timeline marker properties dialog
- Timeline markers can now be dragged by holding control (#1483)
- Option to clear opposite when flipping animation
- Display timeline scrub tooltip in frames if setting is enabled
- Support custom channels in Filter Channels menu in timeline
UV
- Added new "Edit UV Size" tool. This makes changing or adjusting UV sizes much more intuitive by providing a live preview and offering options to adjust UV values on elements accordingly.
- This tool can be accessed by clicking the UV size number at the top of the UV editor, or by editing the UV size value in the project or texture properties, depending on format.
- Added new tool "Move UV to cursor" to simplify moving UVs on large texture maps (#2852)
- Added Texture Wrap setting for textures (#1391)This setting is available in supported formats and lets you select how the texture behaves in regards to UV faces being outside of the texture
- "Restricted" restricts UV to only exist on the texture
- "Repeat" tiles the texture infinitely
- "Clamp Edge" lets you add UVs outside the texture, but the texture value is clamped to the edge, so only the pixels on the edge repeat forever
- Repeat displays a 3x3 tiled area in the UV editor.
- Based on #3072, thanks @nklbdev!
- "Move Texture with UV" support for UV rotation and flip operations (#3319, thanks @Kannoma!)
- Simplified Display UV setting and UV overlay toggles, they are now global instead of per-project.
- Display UV and UV overlay options are now saved between restarts (JannisX11/hytale-blockbench-plugin#55)
- Improved rectangle select in UV editor when showing all faces
- Changed style of UV editor face selector bar
Bounding Boxes
- Added a new type of element, the Bounding Box!
- This represents an axis-aligned bounding box that can be used by various formats and games/engines for anything ranging from hitbox to collision and culling shape.
- Each bounding box can be assigned one or multiple Functions in the element panel, these determine if the bounding box gets exported for a specific purpose.
- Bounding Boxes for the current model can be auto-generated from Tools > Generate Bounding Boxes
- Please note that bounding boxes are not part of most model formats and need to be exported separately, they are not part of the file. You can, however, save your model as a project file (.bbmodel) to keep bounding boxes in your project.
Bounding Box uses for Minecraft: Bedrock Edition
- Block collision and selection components can be generated from bounding boxes in your model via Tools > Copy Collision/Selection Component
- Entity Collision and custom hit test components can be generated from bounding boxes in your model via Tools > Copy Collision/Hitbox Component
- The new Bedrock voxel shape file type can be imported, edited, and saved
- Bedrock block collision and selection components are auto-loaded from the behavior pack block file if available
- Pasting or drag-and-dropping the JSON code for a collision or selection component into Blockbench will load it as bounding boxes
Collections & Multi file editing
- Blockbench has been expanded with a system to allow different formats to enable multi file editing workflows. Multi file means multiple files can be open in one project, but still save to separate files.
- This is implemented with the help of object scopes and collections. This is an ongoing project, but Blockbench 5.1 has the first built-in use-cases for this with Minecraft Bedrock attachable and multi block editing.
- Added scopes as an integer property on outliner nodes, collections, textures, animations. Scopes cannot be set by the user directly in most cases but are used by multi file editing workflows to identify which file an object belongs to.
- If a scope is set to a value higher than 0, it is displayed as a scope color on the left edge of the object in the respective list
- Collections, if they point to an export file, will now get marked as having unsaved changes.
- Unsaved changes are displayed as a floppy disk icon in the collection list. Clicking it will save the collection to file.
- Added "Offset" option, which will display if the collection exports to a codec with the support_offset field set to true.
- Added Show in File Explorer option to collections
Minecraft
- Added baby mobs from the "Minecraft: Tiny Takeover" update as skin presets, and updated existing presets
- Added embedded/flowerpot display slot for bedrock (#3361)
- Added toggle in display mode to pause ground item animation
- Added missing support for reading inflate value per bone in bedrock geometry (#3318)
- Added texture mesh texture name property to element panel (#2996)
- Added query.get_default_bone_pivot preview support
- Added support for cross referencing texture keys in java block model (#330)
- Player and Attachable Editing
- Based on multi file editing, viewing Minecraft Bedrock Edition attachables alongside an entity and animating both in the same project is now possible.
- Added "Bedrock Player Model", a new model loader that can be accessed via File > New and will generate a new player model.
- Added File > Import > Import Bedrock Attachable to import a .geo.json file into the current project as an attachable.
- When editing an attachable model separately, you can use Load with Bedrock Player from the top toolbar to load it into a project alongside a player model for reference.
- When editing an attachable alongside a player, attachable bones attach to and move with base model bones if they have the same name, or their binding property is set.
- The automatic rule to make each group name unique now only applies within one file. Groups from different files can have the same name.
- Colletions are created for each imported attachable. If unsaved, the floppy disk icon in the collection can be pressed to save the changes to file.
- In Animate mode, the Bedrock Animation Mode select can be used to preview player and attachables along with animations in first person view.
- Animations are locked to one scope
- Bones from another scope cannot be animated in this animation
- When importing an animation, the scope will automatically be figured out based on the bones that are used in it.


