Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
7b56c9e
Update UI button is now red
Mustard2 Mar 21, 2026
431b1d2
Bump version
Mustard2 Mar 21, 2026
1835c64
Added warning if a driver path is corrupted
Mustard2 Mar 21, 2026
1fce021
Improvements to error reporting
Mustard2 Mar 21, 2026
14019dd
Improvements to error reporting
Mustard2 Mar 21, 2026
f92828e
Improvements to error reporting
Mustard2 Mar 21, 2026
9c9e038
Fix for #285
Mustard2 Mar 21, 2026
2f6a16a
Add delete Physics items and fix #311
Mustard2 Mar 23, 2026
5dc0e2f
Fix some errors with Hair Switcher Collection
Mustard2 Mar 26, 2026
ed644e7
Improve Physics Items panel
Mustard2 Mar 28, 2026
efd4f1b
Added IK/FK panel support for Diffeomorphic models
Mustard2 Mar 28, 2026
6cb316a
UI Changes
Mustard2 Mar 28, 2026
96c6527
UI Changes
Mustard2 Mar 28, 2026
83a8f2b
UI Changes
Mustard2 Mar 28, 2026
e1489c7
Added Physics to the Hair panel
Mustard2 Mar 28, 2026
fd24277
Fixes
Mustard2 Mar 28, 2026
dac9ae5
Fixes
Mustard2 Mar 28, 2026
4a29839
Fixes
Mustard2 Mar 28, 2026
2709126
Fixes
Mustard2 Mar 28, 2026
6d72c8f
Fixes
Mustard2 Mar 28, 2026
387b531
Fixes
Mustard2 Mar 29, 2026
9df4b55
Fixes
Mustard2 Mar 29, 2026
e7a7a6f
Fix
Mustard2 Mar 29, 2026
9f61c1c
Removed skipping button for UI Update
Mustard2 Mar 30, 2026
845a748
Fixes
Mustard2 Mar 30, 2026
5d4f166
Fixes
Mustard2 Mar 30, 2026
7b0ec39
Bones Shrinkwrap tool (#271)
Mustard2 Mar 30, 2026
5b0edc8
Added a button to completely disable Outfits and their settings to in…
Mustard2 Mar 31, 2026
f6ca316
Added a button to completely disable Outfits and their settings to in…
Mustard2 Mar 31, 2026
f6b0f45
Added a button to completely disable Outfits and their settings to in…
Mustard2 Mar 31, 2026
18fca46
Sections UI revamp
Mustard2 Mar 31, 2026
9f7427d
Hair UI revamp
Mustard2 Mar 31, 2026
8ab0966
Fixes
Mustard2 Mar 31, 2026
3fb182f
Fixes
Mustard2 Mar 31, 2026
8895ef3
Fixes
Mustard2 Mar 31, 2026
28e41a6
Fixes
Mustard2 Mar 31, 2026
729ebcf
Removed pie menu
Mustard2 Apr 1, 2026
ad396ae
Removed pie menu
Mustard2 Apr 1, 2026
4312f35
Fixes
Mustard2 Apr 1, 2026
1c606e0
Physics Presets
Mustard2 Apr 1, 2026
abf1244
Fixes
Mustard2 Apr 1, 2026
4f8cc78
Fixes
Mustard2 Apr 1, 2026
302269f
Fixes
Mustard2 Apr 1, 2026
ca4b164
Fixes
Mustard2 Apr 2, 2026
16254d1
Fixes
Mustard2 Apr 2, 2026
eef56f3
Feature #249
Mustard2 Apr 2, 2026
bad2156
Fixes
Mustard2 Apr 2, 2026
86be1e0
Fixes
Mustard2 Apr 2, 2026
fb22bd8
Fixes
Mustard2 Apr 2, 2026
d974616
Fixes
Mustard2 Apr 2, 2026
a6ba57a
Improvements to MHX support
Mustard2 Apr 2, 2026
ad9a322
Updated credits
Mustard2 Apr 2, 2026
b5cf27a
Fixes
Mustard2 Apr 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,7 @@ There are two supported ways to install the add-on:
## Note for Developers/Users

Feel free to open new Issues, both for bugs and new features proposals. Also, all comments are very welcome!

## Credits

- [Diffeomorphic and MHX developers](https://diffeomorphic.blogspot.com/)
8 changes: 4 additions & 4 deletions __init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"name": "MustardUI",
"description": "Easy-to-use UI for human characters.",
"author": "Mustard",
"version": (2026, 3, 3),
"version": (2026, 4, 0),
"blender": (4, 2, 0),
"warning": "",
"doc_url": "https://github.com/Mustard2/MustardUI/wiki",
Expand All @@ -23,16 +23,17 @@
from . import custom_properties
from . import sections
from . import outfits
from . import hair
from . import physics
from . import morphs
from . import configuration
from . import links
from . import menu
from . import viewport_panel


def register():
outfits.register()
hair.register()
sections.register()
settings.register()
misc.register()
Expand All @@ -47,11 +48,9 @@ def register():
configuration.register()
links.register()
menu.register()
viewport_panel.register()


def unregister():
viewport_panel.unregister()
menu.unregister()
links.unregister()
configuration.unregister()
Expand All @@ -66,4 +65,5 @@ def unregister():
misc.unregister()
settings.unregister()
sections.unregister()
hair.unregister()
outfits.unregister()
3 changes: 3 additions & 0 deletions armature/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from . import ops_reset
from . import ops_transfer_animation
from . import ui_list
from . import external


def register():
Expand All @@ -13,9 +14,11 @@ def register():
ops_reset.register()
ops_transfer_animation.register()
ui_list.register()
external.register()


def unregister():
external.unregister()
ui_list.unregister()
ops_transfer_animation.unregister()
ops_reset.unregister()
Expand Down
21 changes: 14 additions & 7 deletions armature/definitions.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import bpy
from bpy.props import *
from ..model_selection.active_object import *
from ..misc.icons_list import mustardui_icon_list
from ..misc.icons import mustardui_icon_list
from ..misc.outfits import outfit_poll_collection, outfit_poll_mesh


Expand All @@ -14,14 +14,14 @@ class MustardUI_ArmatureBoneCollection(bpy.types.PropertyGroup):

# Show the bone collection in the UI only if Advanced is enabled
advanced: BoolProperty(default=False,
name="Advanced",
description="Enable Advanced layer.\nIf enabled, this layer will be shown in the "
"UI only if Advanced settings is enabled in the UI settings")
name="Advanced",
description="Enable Advanced layer.\nIf enabled, this layer will be shown in the "
"UI only if Advanced settings is enabled in the UI settings")

# Default bone collections are enabled when Reset is used
default: BoolProperty(default=False,
name="Default",
description="Default bone collections are enabled when Reset is used")
name="Default",
description="Default bone collections are enabled when Reset is used")

# Icon
icon: EnumProperty(name="Icon",
Expand Down Expand Up @@ -61,7 +61,7 @@ def outfit_switcher_enable_update(self, context):

# Children
# Button to show children of the bone
show_children: BoolProperty(default=False, name = "")
show_children: BoolProperty(default=False, name="")


# Global Armature settings
Expand Down Expand Up @@ -123,6 +123,13 @@ def mustardui_armature_visibility_hair_update(self, context):
"collections.\nName the collections with the same name plus .R and .L "
"to see them in the UI as two near buttons")

# IK/FK panel
rig_specific_panel: bpy.props.BoolProperty(default=False,
name="Rig External Panel",
description="Add a panel with all the properties of the specific "
"Armature type of the rig.\nAvailable features depend on the"
" type of the rig.\nSupported rigs: MHX")


def register():
bpy.utils.register_class(MustardUI_ArmatureBoneCollection)
Expand Down
9 changes: 9 additions & 0 deletions armature/external/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from . import mhx


def register():
mhx.register()


def unregister():
mhx.unregister()
18 changes: 18 additions & 0 deletions armature/external/mhx/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from . import props
from . import mhx_update
from . import fkik
from . import animation


def register():
props.register()
mhx_update.register()
fkik.register()
animation.register()


def unregister():
animation.unregister()
fkik.unregister()
mhx_update.unregister()
props.unregister()
Loading