b210782af0
Don't use println
2023-11-10 17:25:53 -05:00
b147027e58
Allow exists() to return false if all index files are invalid
2023-11-10 17:20:12 -05:00
63cfa56074
Check if index file is valid before caching
2023-11-10 17:17:34 -05:00
1869c31268
Fix some warnings
2023-10-13 16:59:39 -04:00
b180adeb44
Improve performance when extracting files by caching open index files
...
In Hotspot it was revealed that a huge chunk of performance is lost due
to repeated IndexFile::from_existing calls, which may be on the same
index file. Now GameData transparently keeps a cache of these in memory
which speeds up the slowest link here.
2023-10-13 16:58:08 -04:00
7a75c170cc
Make a semantic difference between owned and non-owned byte data
2023-10-13 16:16:04 -04:00
07582775cd
Add support for reading binary SKLB and PBD
...
This removes the dependency of the Havok SDK or getting the decompiled
skeleton files from TexTools or some other place. Code courtesy of
FFXIVTools. The other two ways of reading skeletons (SKEL and Packfile)
are removed which gets rid of two dependencies.
2023-10-13 14:55:27 -04:00
3243132a3f
Fix shader package reading
...
I had broken something when making shader parameters work, now it's
unbroken, and it's able to read bytecode again.
2023-10-13 14:52:07 -04:00
5c5d2f85bb
Add calculate_partial_hash function
2023-10-12 18:59:44 -04:00
0896ef829c
Make hash for index hash table entries public
2023-10-12 18:59:37 -04:00
0a6209dfd5
Add tests for ConfigFile, fix writing and add modification functions
2023-10-11 13:00:50 -04:00
0621ce03d7
Convert more signed integers to unsigned variants
...
Should help protect against future patch troubles
2023-10-05 12:33:44 -04:00
267feae8cf
Fix broken 6.5 patching
...
Thanks to the goatcorp team for figuring this out first, there's some
parts of the patches that are actually unsigned ints.
Should constitute further testing, but it now patches up to 6.5
2023-10-04 11:06:52 -04:00
74cc82a425
Compile with LTO in release builds
2023-09-24 16:19:08 -04:00
cb19e3781a
Allow compilation without visual_data feature enabled
2023-09-24 16:04:39 -04:00
c73f4bc635
Fix default features for dependencies
2023-09-24 15:41:18 -04:00
86c8d6a122
Fix some lint issues
2023-09-24 15:41:05 -04:00
dc3e6830c2
Use result in EXL's test_write
2023-09-24 15:40:55 -04:00
7cbe2fe853
Add homepage blurb
2023-09-24 15:40:38 -04:00
3115ec1f68
Continue to work on SHPK parsing, including parameters
2023-09-24 15:40:07 -04:00
9936eeb818
Add functions to make gear, skin, face, hair, and ear material paths
2023-09-23 14:52:32 -04:00
8a599630d7
Bump version to 0.1.4
2023-09-22 19:41:32 -04:00
23b686b1d1
I HATE CRITERION AAAAAAA
2023-09-22 19:19:37 -04:00
4dfd36dbd8
Fix and quiet clippy warnings
2023-09-22 19:17:24 -04:00
e18a242bcb
Fix Blowfish test
2023-09-22 18:46:58 -04:00
56a738fde7
Fix EXL writing test by preserving the order
2023-09-22 18:46:49 -04:00
cece5936e8
Hide some unnessecary symbols from the doc
2023-09-22 18:34:24 -04:00
80f80ac0f5
Improve common module docs
2023-09-22 18:15:23 -04:00
2ce18ec66a
Add the missing documentation for CharDat, rename struct too
2023-09-22 18:13:20 -04:00
5edc411bd7
Better the imperfect config file documentation, rename struct
2023-09-22 18:05:29 -04:00
c41f17a126
Improve the lackluster BootData documentation
2023-09-22 17:56:33 -04:00
1343bcdca6
Expand Blowfish documentation, add example to doc
2023-09-22 17:52:31 -04:00
9b1927f700
Add support for writing fiin files
2023-09-22 17:44:31 -04:00
bbbbb7cd02
Add the last missing pieces for model writing
...
This isn't a complete 1-to-1 yet, and still untested. However the
general idea is there now.
2023-09-22 17:42:04 -04:00
3a50523dd5
Add support for writing the rest of the model header and metadata
2023-09-22 17:04:48 -04:00
3d621d3588
Begin work on implementing MDL write support
2023-09-22 16:44:19 -04:00
09c0d199f2
Add support for writing chardat files
2023-09-22 16:39:56 -04:00
dccc4e3586
Add support for reading shader packages and it's bytecode
2023-09-22 16:36:12 -04:00
879b68428d
Remove LICENSE
2023-08-31 14:28:21 +02:00
ba69ed1e10
Fix upstream in dep5
2023-08-06 08:47:11 -04:00
1eaeee32df
Fix import that was destroyed by my editor
2023-08-06 08:30:30 -04:00
2000b978b3
Ensure compliance with REUSE, add to CI
2023-08-06 08:25:04 -04:00
52f889bb79
Begin work for parsing binary havok files
2023-08-02 16:28:08 -04:00
f036f741a9
Possibly fix platform strings for ps3 & ps4
2023-08-02 16:27:55 -04:00
f3e51048b2
Add write support and relevant test for EXL files
2023-08-02 16:27:38 -04:00
1fd7cdf07d
Begin write support for EXH
2023-08-02 16:27:28 -04:00
30d5cd5996
Add write support for chardat files
2023-08-02 16:27:10 -04:00
3eec5764a2
Add support for reading/writing CFG files
2023-08-02 16:26:56 -04:00
bce26e7709
Bump criterion and glam versions
2023-08-02 16:26:38 -04:00
e286b93dfc
Add test for blowfish module
2023-08-02 16:26:20 -04:00