The library seems to mistakingly skip over the bone names for animation tracks in spline compressed animations, because reading string value returns empty when it cannot find a corresponding local fixup.
You can see here that the track names are blank in the deserialized xml files except when unpacking uncompressed animations.
compressedtest.txt
compressedtest2.txt
uncompressedtest.txt
From what I could discern this seems to be because the local and global fixup offsets are both 0 when initialising headers for compressed animation files.
compressed test 1 (blank track name):
Class Section
Section ID: 0 Step In: 400 AbsoluteDataStart: 208 LocalFixupsOffset 192
Section ID: 0 Step In: 400 AbsoluteDataStart: 208 GlobalFixupsOffset 192
Type Section
Section ID: 1 Step In: 400 AbsoluteDataStart: 400 LocalFixupsOffset 0
Section ID: 1 Step In: 400 AbsoluteDataStart: 400 GlobalFixupsOffset 0
Data Section
Section ID: 2 Step In: 28832 AbsoluteDataStart: 400 LocalFixupsOffset 28432
Section ID: 2 Step In: 28944 AbsoluteDataStart: 400 GlobalFixupsOffset 28544
uncompressed test 1 (working):
Class Section
Section ID: 0 Step In: 448 AbsoluteDataStart: 208 LocalFixupsOffset 240
Section ID: 0 Step In: 448 AbsoluteDataStart: 208 GlobalFixupsOffset 240
Type Section
Section ID: 1 Step In: 15216 AbsoluteDataStart: 448 LocalFixupsOffset 14768
Section ID: 1 Step In: 17696 AbsoluteDataStart: 448 GlobalFixupsOffset 17248
Data Section
Section ID: 2 Step In: 619168 AbsoluteDataStart: 18896 LocalFixupsOffset 600272
Section ID: 2 Step In: 620848 AbsoluteDataStart: 18896 GlobalFixupsOffset 601952
compressed test 2 (blank track names):
Class Section
Section ID: 0 Step In: 432 AbsoluteDataStart: 208 LocalFixupsOffset 224
Section ID: 0 Step In: 432 AbsoluteDataStart: 208 GlobalFixupsOffset 224
Type Section
Section ID: 1 Step In: 432 AbsoluteDataStart: 432 LocalFixupsOffset 0
Section ID: 1 Step In: 432 AbsoluteDataStart: 432 GlobalFixupsOffset 0
Data Section
Section ID: 2 Step In: 9776 AbsoluteDataStart: 432 LocalFixupsOffset 9344
Section ID: 2 Step In: 10688 AbsoluteDataStart: 432 GlobalFixupsOffset 10256
The library seems to mistakingly skip over the bone names for animation tracks in spline compressed animations, because reading string value returns empty when it cannot find a corresponding local fixup.
You can see here that the track names are blank in the deserialized xml files except when unpacking uncompressed animations.
compressedtest.txt
compressedtest2.txt
uncompressedtest.txt
From what I could discern this seems to be because the local and global fixup offsets are both 0 when initialising headers for compressed animation files.
compressed test 1 (blank track name):
uncompressed test 1 (working):
compressed test 2 (blank track names):