Commit Graph

271 Commits

Author SHA1 Message Date
Yusarina 9cc5a41a98 Optimzation Panel Re-Added
- Major Improvements all round, Join Meshes improved, Combined Materials, Remove Doubles Improvements.
2024-12-05 01:13:10 +00:00
Yusarina 9961223548 Setting Panel Added, Debuging Added.
Added the Armature Validation modes now, we have Stritct, Basic and None, it will give a warning to the user in the panel if there have it set to basic or none.
Settings panel added, langauge change has been added back. Did some work on it to slightl improve the system.
Added dubug area, basically everything but autoload will use logging now, you be able to turn it on/off in debug settings.
Did other bits and bobs.
2024-12-04 14:58:34 +00:00
Yusarina 5dcaba381d Pose mode improvements, armature validation improvements.
Pose mode Improvements:

Batch processing for all mesh operations
Numpy-powered vertex array handling
Optimized modifier stack management
Smart shape key processing
Enhanced progress tracking

The armature validation system improvements:

Essential bones (hips, spine, chest, neck, head)
Proper bone hierarchy validation
Symmetry pair verification (e.g., arm.l/arm.r)
2024-12-04 00:54:21 +00:00
Yusarina ff23d23cfc Start of the Major Overhaul
I decided to go through each function and UI section one by one, improving and overhauling things. Each function and section is going to be fully tested and not rushed out.

This is the best way to catch things, but also include the code base as much as possible.
2024-12-03 22:58:17 +00:00
Yusarina 7f9dc20564 Fixes 2024-12-03 17:40:31 +00:00
Yusarina 7e584e3648 Fixes
This fixes is to get everything working on the new auto load and properties system.
Also some other small fixes.
2024-12-03 01:26:10 +00:00
Yusarina fe8f5f69d5 Plugin Registration Changes
- 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.
2024-12-02 01:52:11 +00:00
Yusarina ac6e98c27e Merge pull request #80 from Yusarina/tollib-update
tolm to tomllib
2024-12-01 15:34:26 +00:00
Yusarina 50c6d95197 Merge pull request #78 from Yusarina/mmd-options-improvements
Mmd options improvements
2024-12-01 15:34:17 +00:00
Yusarina 8be4aa8022 Merge pull request #77 from Yusarina/bug-fixes
Bug fixes
2024-12-01 15:34:05 +00:00
Yusarina 39b1268250 Merge pull request #76 from Yusarina/pmx-import-improvements
PMX Importing Improvements and Changes.
2024-12-01 15:33:55 +00:00
Yusarina 4d681602e3 Fixes 2024-12-01 02:24:55 +00:00
Yusarina 8938a38620 Just updates toml to tolmlib
Blender decided to change something and not documented should fix some issues.
2024-12-01 02:20:38 +00:00
Yusarina 6b6773e70a Further Fixes to Optimise Armature 2024-11-27 03:41:57 +00:00
Yusarina 503b8f0919 Make sure it end in Object mode 2024-11-27 03:36:56 +00:00
Yusarina 27ebd5ebfb Fixes
- Optimise Armature no longer errors out and bones don't change position now.
- Improvements to remove zero bones.
2024-11-27 03:34:10 +00:00
Yusarina 0ac4b4a144 Join Meshes Fixes 2024-11-27 02:56:12 +00:00
Yusarina 6484adedaa Fixes
- Fixed issue where blender would error when exiting due to property being register twice.
- Fixes missing strings.
- Attempt at fixes properties not clearing correctly.
- Updated Japanese json file with all latest strings.
2024-11-26 04:16:03 +00:00
Yusarina bb77d54a49 UI Improvements for Atlasing
Made some UI imprvoements to the Atlas system, uses icons, able to collapse materials to prevent a huge long list and more.
2024-11-26 03:50:56 +00:00
Yusarina 4d20ce77f7 More Fixes
- Fixes an other error in the updater due to urllib not being imported and used correctly.
- Small Atlas Texturing fixes and UI Improvements.
2024-11-26 03:12:42 +00:00
Yusarina 346f73ebb0 Bug Fixes
- Fixes issue where console was getting spammed re armature selection.
- Fixes apply as rest pose issues and improves the system. https://github.com/teamneoneko/Avatar-Toolkit/issues/52
- Fixes Apply pose to shapekey, it does what it's meant to do now. https://github.com/teamneoneko/Avatar-Toolkit/issues/52
- Fixes error in updater when there no updates to list.
2024-11-26 02:42:17 +00:00
Yusarina 56706c859f Bug fixes
- First attempt to get Chinese Characters to work, kinda working, but also not.
- Small bug fixes.
2024-11-26 01:07:51 +00:00
Yusarina c1fa65ebdd Import Rigidbodies and Material Fixes
- Rigidbodies should now import
- Fixes in material import, we toon shader added.
- We now validate pmx data.
- Error messages improvements.
2024-11-26 00:43:17 +00:00
Yusarina e83bd31b4f Improvements
- Shapekeys now import
- Constraints should now import.
2024-11-26 00:13:47 +00:00
Yusarina 3284581d5a Fix expression bones and other bones. 2024-11-25 21:40:32 +00:00
Yusarina b551aac97d Re-write
Better, faster and working slightly better.
2024-11-25 21:27:49 +00:00
Onan Chew f2bad8e169 Merge pull request #75 from Yusarina/pmx-import-improvements
PMX Importer Improvements Improvements
2024-11-17 15:39:15 -05:00
Yusarina 155c40d4d4 Improvements
- Improvements to materials, still needs work but looking better.
- Model imports the correct size now.
- Attempted to fix bones positions, rotations and etc, but failed, however the work I done should setup it up to work maybe....
- Minor improvements.
2024-11-17 20:31:58 +00:00
Onan Chew e067e247cf Merge pull request #74 from Yusarina/pmx-import-improvements
PMX Bones now Import but still broken
2024-11-16 20:06:45 -05:00
Yusarina e48226dab1 Bones now Import but still broken
- Bones now fully import
- Bones do not import the correct size or rotations it seem though.
2024-11-17 00:50:32 +00:00
Onan Chew 53bed35ade Merge pull request #73 from Yusarina/Remove-old-update-panel
Get rid of old update panel for cats
2024-10-21 20:25:14 -04:00
Onan Chew 08436677e3 Merge pull request #72 from Yusarina/credits
Credits
2024-10-21 20:25:05 -04:00
Yusarina 1491f92fcd REEEEEE 2024-10-22 01:23:34 +01:00
Onan Chew 3c4bb1c06e Merge pull request #71 from Yusarina/Updater
Updater
2024-10-21 20:18:31 -04:00
Yusarina ccc7e3cc13 Credits 2024-10-22 00:50:47 +01:00
Yusarina 4e18362451 Typing 2024-10-22 00:27:09 +01:00
Yusarina fd87d1d5d7 Auto update now works 2024-10-22 00:18:19 +01:00
Yusarina 1b908a4200 Fixes 2024-10-22 00:08:07 +01:00
Yusarina 2e06cc9945 Initial Updater
- More simple updater compared to cats
2024-10-21 22:17:38 +01:00
Onan Chew 8a0232f8dd Merge pull request #64 from Yusarina/cleanup-p2
Cleanup p2
2024-10-18 18:05:25 -04:00
Onan Chew d7bab3642a Merge branch 'main' into cleanup-p2 2024-10-18 18:04:52 -04:00
Onan Chew db2e3e8787 Merge pull request #63 from Yusarina/cleanup-p1
Cleanup p1
2024-10-18 18:03:29 -04:00
Onan Chew a817ef341f Merge pull request #66 from Yusarina/import_anything_changes
VRM Added, Import Anything chages.
2024-10-18 18:02:50 -04:00
Onan Chew 9dd2765537 Merge pull request #67 from Yusarina/remove-doubles-warning
Add remove doubles warning
2024-10-18 17:59:49 -04:00
Yusarina 1fb1e74689 Add remove doubles warning
Gives user a warning about how long advanced remove doubles takes.
2024-10-14 05:31:13 +01:00
Yusarina 670115a947 VRM Added, Import Anything chages.
- Added VRM to the list of files able to be imported.
- Added error handling for missing vrm importer, will popup to the user telling them to download vrm addon.
- Removed automatically url opening as we should have user consent to open a url, automatic url opening goes against blenders best practices and can be a security concern.
- Optimised the way we import multiple models, the old way just added unnecessary complexity, The try-except block was used to iterate over self.files and set is_multi to True if no exception occurs. However, this is an unnecessarily complex way to determine if the list is non-empty. Simply checking the length of the list is more straightforward and efficient. The way we were using the try-except box could of also lead to silent failures which is not user friendly.
2024-10-14 00:13:08 +01:00
Yusarina 2684b89bef Ui Cleanup
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.
2024-09-27 23:39:34 +01:00
Yusarina 65526bc6af Change Warning as we are allowing users to test it 2024-09-27 23:14:28 +01:00
Yusarina a1e1796276 Fix Panel Order 2024-09-27 23:10:45 +01:00
Yusarina bb92e50530 Small Fix 2024-09-27 23:00:16 +01:00