- Re-wrote how the plugin registers itself.
- No longer need @register_wrapper classes get auto detected and added.
- The new Auto loader is much better then the old way, no longer need "if "bpy" not in locals():" this was an old way of doing things and wasn't really efficient.
using auto_load.py provides several advantages:
- It automatically discovers and loads all modules in the addon.
- It handles dependencies between classes correctly through topological sorting.
- It manages registration order automatically.
- It properly handles unregistration in the correct order.
This approach is much less error prone and I not had any issues so far. However it still needs testing fully.
I have also start to re-organise files into folders as well, this is going to be needed so we don't have a long list of files as Avatar Toolkit is getting larger then i originally planned.
UI Is starting to look much better. I added more spacing and re-arrange parts of the UI, icons have been added and overall is starting to look much better and more user Friendly.
- This is an work in progress, this expands on the system that NyankoNyan and improves that system.
- It remaps the bone hierarchy to match Unity's expectations
- It adds necessary constraints to ensure proper bone movement (For the people who need it, can be removed via remove constraints button).
- It removes redundant bones that could cause issues in Unity.
- It renames bones to match Unity's Humanoid Avatar naming convention.
- It provides an option to merge or remove twist bones, which are not supported by Unity's humanoid system.
- It adjusts bone connections and deformation settings.
I think more needs to be added, but this seems to work for now.
- Connect bones button added.
- Added slider so the user can choose the distance, cats was set at a hard coded amount which could sometimes cause some issues for some modals.
- Adds a new Avatar Toolkit panel location for UV tools
- adds Align UV Edges to target
- Allows for aligning uv vertices in a line on one object to another's uvs pixel perfect. This is useful for making one model copy another model's UV's with some user work
- Added translation keys for tool
- operator strings are referenced via the class property rather than a hard coded string
- class names have been cleaned to have _OT_ or _PT_ depending on the kind of class it was.
- Class names should mostly be CamelCase now.