Mesh editing
Knife Tool! (#1945)
The knife tool lets you cut your mesh and create new details and edges in a super intuitive way. This makes designing certain shapes in Blockbench a lot easier.
Select a mesh, then use the knife tool to slice through the surfaces. Press Enter to confirm your changes.
You can hold Control to snap to the pixel grid of the texture, and Shift to snap to edge and face centers.
Automatic mesh fixes
Added automatically suggested mesh editing fixes
- Fix for concave quads
- Fix for vertices moved into other vertices
Easier selecting
- Highlight edges and vertices when hovering over
- Improved selecting edges and vertices
Other mesh features
- Added "Cuboid with edges" mesh primitive generator
- Added mesh solidify tool
Flipbook editor
This update adds the new Flipbook Editor!
- Setup flipbook-animated texture strips without manually resizing textures
- Add, copy, remove, rearrange, and resize flipbook texture frames in an easy-to-use menu
- Auto-generate the implementation code for supported Minecraft formats
Transform spaces
Transform spaces received an update to make them more consistent across different modes and different element types
- Renamed "Bone" space to "Parent"
- The default transform space is now "Parent"
- Added local space move support for bones in edit and animation mode (#2205)
- Added local space support for the pivot tool (#774)
Image Editor
- Added setting for image editor pixel grid size
- "Add Image" option when dropping png file into image editor
- Make "Edit" first option when opening image file with Blockbench
Animation
- Added tool to optimize animations in one click
- Added "Change Animation Speed" option
- Blockbench now asks to copy keyframes when duplicating a bone (#1564)
- Holding shift now locks bezier handler axis
- Hold control to snap bezier handles (#1757)
- Bezier handles now automatically adjust when changing animation speed
- Added animation controller playback speed option (#1863)
- Wrap around catmull rom keyframes in loop (#1965)
- Improve animation looping preview smoothness
- Inverse Kinematics now works with null object in outliner root
- Changed timeline marker icon
- Automatically exit graph editor when opening effect animator
Minecraft features
- Added Armadillo skin preset
- Java modded entity
- Bedrock
- Added setting to enable experimental bedrock model UV rotations
- Added support for bedrock particle events (Wintersky 1.3.0)
- OptiFine JEM
- Added per-bone textures in OptiFine Entity format (#857)
Single default texture system
Added a new system to handle texture assigning. This is currently used in Minecraft Bedrock blocks and OptiFine JEM.
With this new system, textures can still be assigned to faces (or bones in OptiFine), but on faces with none assigned the default texture will be used.
The default texture can be chosen by right-click > Set as Default. If this isn't enabled on any texture, the selected texture will be used as default.
General modeling
- Improved resize tool handling on inverted cubes
- Adapt box UV origin when resizing on X axis (#1819)
- Added option to center individual pivot points
- When grouping elements, the group now auto-adapts the name of the elements (#1985)
- Added pixel grid in edit mode (#1189)
- Added tool and gizmo for stretching cubes in enabled formats, thanks @AaronWoodward
- Change move and layer move tool to have different shortcuts
UV Mapping
- Added Cycle UV and Cycle Invert UV options for mesh faces
- Implement per element selection system in UV editor (Fixes #2167)
- Added Multi Texture Occupancy option for per-face UV (#526)
- Snap UV To Pixels is now calculated in texture space
GIF Recorder
- Added keyboard keys (Enter, Esc) to start and cancel GIF recording
- Reduced GIF color flickering by saving GIFs with higher color accuracy
- Other GIF recorder improvements (#2262)
- Update GIF Recorder to allow plugins to add their own formats, thanks @ewanhowell5195!
Plugins
- Added plugin changelog tab!
- Added plugin deprecation warning with notes to display the deprecation reason
- Added plugin "contributes" data to suggest plugins for unknown formats
Import and Export
- OBJ Import
- Added MTL support
- Added import scale option
- FBX Export
- Added embed textures export option
- Avoid showing existing textures in texture auto import list
- Added additional warning when loading invalid bbmodel file
UI improvements
- Added a redesigned header bar in the mobile version
- Added resizable dialogs (#1665)
- Made sidebar panel height adjustable
- Improved toolbar overflow
- Action Control: list recently used actions on top
- Changed action control to no longer select option under mouse cursor when opening, to improve keyboard usability
- Added project tab context menu
- Updated "Select External Image Editor" dialog
- Changed "Update downloaded" icon
- Changed orbit gizmo axis font
Other changes
- Added video support in reference images (#1482)
- Cleaned up inconsistencies with file names (#2164)
- .bbmodel file name is now always synced with project name
- The file name field is no longer editable if the file is already saved
- Include texture folder in invalid texture path error message
- Made ground plane one-sided, added setting to change it back
- The 3D brush outline is now visible on both sides of faces (#2289)
- Default to selected texture in Generate Palette
- Cropping a texture to selection now adjusts the affected UV maps
- Optimized sketchfab tag suggestions, added NoAI tag suggestion
- Custom theme thumbnails can now by styled via CSS (#2266, thanks @ewanhowell5195)
- Increase UV visible mesh face limit
- Switch auto-backup to indexedDB to allow for larger backups in the web app
- Added option to duplicate project
- Allow ctrl based keybindings to be used while editing text inputs
Technical changes
- Added dialog keyboard_actions system
- Added "force_step" field in dialogs to force value rounding to step
- Added class to identify menu bar menus in themes
- Added class to identify bar-select menus
- Added class option for creating menus
- URL parameters to load model through link (#2179) Documentation
- Added a way to access native DOM Animation class (
NativeGlobals.Animation
) - Added a CLI argument (
--userData
) to specify the userData directory (#2309, thanks @SnaveSutit!) - Added NumSlider support in menu, opens dialog where the value can be changed.
- Added description option to showmessagebox commands API
- Improved plugin uninstall error message
- Added event hook in undo save constructor to allow custom undo aspects
- Updated Electron
- Updated to the latest version of Fontawesome
Fixes
- Fixed reference image reload bug
- Fixed scrollbar color on recent web browsers
- Fixed #2215 Transform > Scale is rounded to 2 decimal places
- Fixed #2202 can use undo/redo while scaling model
- Fixed pasting mesh faces not applying texture
- Increase orthographic camera distance to reduce issues with clicking gizmos
- Fixed #2231 Amend checkboxes are always checked initially
- Fixed #2237 Rotated cube UVs do not correctly convert to mesh
- Fixed timeline playhead line clipping
- Fixed pose in armature gltf export (#2224)
- Fixed texture not updating when loading as emissive from bedrock entity
- Fixed plugins getting uninstalled on offline web app
- Fixed #1988 glTF armature export does not support multi texture
- Fixed #2201 can't export skinned glTF model with locator or null
- Fixed #2223 Bat Skin Template errors when trying to convert to a different format
- Fixed upper body rotation in wolf skin preset
- Fixed an issue with the format of relative paths in bbmodel files
- Fixed mirror modeling counting meshes with minimal X origin offset as off-center
- Fixed #1964 by auto-clearing Linux GPU cache files after updating
- Fixed #2273 disabled plugins still try to reload when reloading all
- Fixed #2272 plugin background icon can overflow
- Fixed several inconsistencies related to styling and custom themes
- Fixed selecting keyframes from validator not automatically switching to animation mode
- Pasting an empty group into the outliner does not select it
- Fixed #2298 GIF resolution can be a pixel too small
- Fixed gif transparency issues when background present
- Fixed #2301 namespace auto-re-generating when opening project
- Fixed translations for selecting keyframe and animation controller particle and sound files
- Fixed #2065 Long sound keyframe can desync
- Fixed #2267 Removed faces not restored in Box UV
- Fixed #2297 Plugin settings tab not triggering onChange
- Fixed #2291 Move tool gizmo misaligned on empty group
- Fixed max reach issue of connected colors fill and magic wand select
- Fixed issues with binary FBX export. FBX exports now work in Blender, apart from animations and embedded textures. Thanks @SiboVG!
- Fixed bug in glTF exporter, thanks @Oakfather!
- Fixed issue when importing bedrock models with rotated locators
- Fixed #2051 leftover faces after merging vertices
- Fixed bedrock animation length rounding to lower value than last keyframe
- Fixed issue accessing submenus in some custom themes
- Fixed file extensions disappearing from recent project names
- Fixed bbmodel import/export not handling faces with no texture assigned correctly
- Fixed non-rounded UV factor displaying too many decimal digits in textures list
- Fixed #2279 undoing deleting a group does not properly restore timeline animator
- Fixed mesh UV drifting when using auto UV
- Fixed material icons overflow if icon is missing or invalid