1
Fork 0
mirror of https://github.com/redstrate/Physis.git synced 2025-04-22 12:47:45 +00:00
Commit graph

511 commits

Author SHA1 Message Date
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