Commit Graph

472 Commits

Author SHA1 Message Date
Colin Basnett
12025452d0 build_psk now creates an armature tree and uses that instead of a flat armature list 2026-01-04 16:13:57 -08:00
Colin Basnett
f6625d983a Meshes are now exported correctly when using armature trees.
We need to add thorough testing for all the various settings and manually verify their correctness.
2026-01-04 15:14:51 -08:00
Colin Basnett
0a783bb89d Checkpoint commit 2026-01-04 02:49:52 -08:00
Colin Basnett
f3b5ac9daf Added "loop" pattern name parsing for sequences
When this gets released, we need to add documentation for all the naming tricks because it's getting a bit out of hand now and I need documentation even just for myself.
2026-01-02 16:32:14 -08:00
Colin Basnett
5edebd3477 Fix #140: PSKX with multiple extra UV channels not importing correctly
This was caused by a missing refactor after the underlying data structure of the extra UVs was changed.

An additional test has been added to ensure this won't happen again.
9.0.2
2025-12-16 23:58:38 -08:00
Colin Basnett
5cfff529b2 Minor edits to remove type errors 2025-12-08 23:18:38 -08:00
Colin Basnett
127338b6ac Added pre-build wheel for psk_psa_py
Will consider setting up some sort automation and using submodules if needed in the future.
2025-12-08 20:06:42 -08:00
Colin Basnett
fd3e54eb10 Incremented version to 9.0.1 9.0.1 2025-12-08 19:46:09 -08:00
Colin Basnett
cc730b6ce3 Implement #136: Added support for exporting group properties for sequences 2025-12-03 17:44:05 -08:00
Colin Basnett
94c940b970 Added psk_psa_py package to replace basic data IO
Fixed PSK and PSA export
2025-12-02 17:44:40 -08:00
Colin Basnett
c5bb526843 Added support for podman when running tests
I use Bazzite, and it uses `podman` for it's container CLI system.
2025-11-27 14:43:11 -08:00
Colin Basnett
384f017bdd Fixed shape key value test asserts 2025-11-27 13:55:25 -08:00
Colin Basnett
485d46e075 Added typing casts to PSK import tests 2025-11-27 13:45:32 -08:00
Colin Basnett
d7bc8fd080 Fix #137: Shape keys start with 1.0 value on PSK import
There was an undocumented change in 5.0 where the shape keys now start with a weight of 1.0 instead of 0.0 when created.

I have added an assert in the shape key test to make sure that the values are set to `0.0`.

This also fixes the assertion in the poll function (asserts should never be in poll functions).
2025-11-27 13:44:51 -08:00
Colin Basnett
c370bc902b Now using fcurves.ensure when assembling import bone fcurve list 2025-11-27 13:17:00 -08:00
Colin Basnett
fe97b229d9 Channel bags now being created using the anim_utils convenience function 2025-11-27 13:10:56 -08:00
Colin Basnett
622aa46a82 Removed soon-to-be-deprecated Material.use_nodes assignment 2025-11-27 13:03:11 -08:00
Colin Basnett
66881d5ac1 Changed Blender 4.4 references to 5.0 2025-11-27 12:59:35 -08:00
Colin Basnett
1bac8b2b30 Fix #139: PSA import does not work on Blender 5.0 2025-11-27 12:52:40 -08:00
Colin Basnett
3153be3cdf Fix for error when exporting from Blender 5.0
`Action.fcurves` was removed. We now use `layers` to determine if there is data or not.
2025-11-24 15:17:42 -08:00
Colin Basnett
9b98909c8b Fixed embarrassing typo that stopped PSK collection exporter from working 2025-11-22 21:09:11 -08:00
Colin Basnett
37f7cc4d9f Increment version to 8.2.4 8.2.4 2025-11-08 18:28:21 -08:00
Colin Basnett
93083f09f8 Fix #135: Extra UV maps have incorrect data
This was caused by a regression caused by 29831d7f09.

The test for importing extra UVs has been updated to check that the data is different between the different UV layers.
2025-11-08 18:27:40 -08:00
Colin Basnett
75660f9dc1 Incremented version to 8.2.3 2025-10-31 12:43:09 -07:00
Colin Basnett
5421ac5151 Removed debugging code 2025-10-31 12:42:14 -07:00
Colin Basnett
9dcbb74058 Fix for missing transform source and broken scale controls on PSK export dialog 2025-10-31 12:41:14 -07:00
Colin Basnett
8ed985263c Fix for bad class inclusion 2025-10-06 17:57:55 -07:00
Colin Basnett
d91408ecab Incremented version to 8.2.2 2025-10-06 17:52:59 -07:00
Colin Basnett
dd1ea683bb Added bone mapping option to ignore trailing whitespace
Some very old PSKs and PSAs have trailing spaces in the bone names instead of padding the buffer with null bytes.

Trailing whitespace will now be ignored by default to maximize compatibility.
2025-10-06 17:48:51 -07:00
Colin Basnett
240b79d374 Fixed a number of PEP warnings
Most of these are just assert statements to silence the warnings for accessing optionals
2025-09-20 12:34:35 -07:00
Colin Basnett
33e7862288 Converted __init__ module initialisation to new pattern
Thanks to Dr. Sybren for the BCON25 presentation that tipped me off to the existence of `register_classes_factory`.
2025-09-18 23:29:14 -07:00
Colin Basnett
b4eefaba6f Increased the minimum Blender version to 4.4 8.2.1 2025-08-17 17:20:07 -07:00
Colin Basnett
ca869731e7 Incremented version to 8.2.1 2025-08-17 13:20:16 -07:00
Colin Basnett
20c8a39f23 Fixed is_action_for_object failing when action had multiple slots 2025-08-17 13:19:47 -07:00
Colin Basnett
8d2f46c2b1 Split axis selection functionality from TransformMixin 2025-08-10 22:12:46 -07:00
Colin Basnett
84863d9de4 Fixed same invalid faces bug, but for the Extra UVs channel 2025-08-09 17:48:55 -07:00
Colin Basnett
ef38b896a6 Added unit test for import PSKs with invalid faces 8.2.0 2025-08-03 01:50:31 -07:00
Colin Basnett
3e54378a57 Incremented version to 8.2.0 2025-08-03 01:43:47 -07:00
Colin Basnett
75cee40604 Merge branch '8.2.0' 2025-08-03 01:43:15 -07:00
Colin Basnett
7cc36d427e Minor formatting fix 2025-08-03 01:42:54 -07:00
Colin Basnett
5c50e76771 Moved get_collection_*from_context functions to helpers.py 2025-08-03 01:42:44 -07:00
Colin Basnett
bd3ea76109 Fixed a bug where meshes with invalid faces could not be imported 2025-08-03 01:41:29 -07:00
Colin Basnett
f4b20e4e0f Reverted to old "is action for armature" functionality
The current Blender 4.4 functionality is still very wishy washy (not able to inspect channel bags), and the solution that was created was broken.

In addition, newly created actions will be given an appropriately named slot instead of it being a "Legacy Slot".
2025-08-03 01:40:38 -07:00
Colin Basnett
921efe97aa Minor fixes 2025-07-23 10:26:56 -07:00
Colin Basnett
4767081bc4 Update README.md 2025-06-19 18:41:24 +00:00
Colin Basnett
ff4cbc8871 Update README.md 2025-06-19 18:40:07 +00:00
Colin Basnett
7d0c520019 Update README.md 2025-06-19 18:39:33 +00:00
Colin Basnett
e7ce934383 Improve empty material slot error message 2025-06-07 19:29:59 -07:00
Colin Basnett
a48fcbd6e3 Ignore empty armature modifiers on PSK export 2025-06-07 19:20:29 -07:00
Colin Basnett
253566576e Fix PSK export with no armatures while using ARMATURE export space 2025-06-07 19:19:54 -07:00