2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2025-06-21 11:55:38 +00:00

1586 Commits

Author SHA1 Message Date
Jan
d612d8f1a6
fix: WavWriter outputting invalid files when compiled as x64 2025-06-19 18:59:27 +01:00
Jan
d30e2e6532
chore: fix annoying IW4 cross-type pointer reusage with dirty hack
The game reuses pointer across different types as long as bytes and size matches
This leads to non-pointer and pointer types being reused
To fix this loading code now handles block memory offsets by nulling
and block offsets to non-block data with pointing to raw block data
The behaviour only seems to realistically happen on nulled memory
2025-06-19 18:59:26 +01:00
Jan
667d76e50e
wip: change redirect pointer to lookup 2025-06-19 18:59:26 +01:00
Jan
788bf1cc5d
chore: make allocating redirect entry work with ptr directly 2025-06-19 18:59:25 +01:00
Jan
3c16da006c
chore: make sure that pointer resolving via lookup always resolves something 2025-06-19 18:59:25 +01:00
Jan
bd9a680bb0
fix: pointer lookup for assets that should be reusable 2025-06-19 18:59:24 +01:00
Jan
930867f07f
fix: properly load matching structure dynamic array inside non-matching structure embed 2025-06-19 18:59:24 +01:00
Jan
884ad57bf4
fix: dynamic fill loading missing conditions on unions 2025-06-19 18:59:24 +01:00
Jan
fe1bbce7aa
fix: do not resolve pointers like alias for x64 2025-06-19 18:59:23 +01:00
Jan
43be997a22
fix: doing wrong alignment on dynamic filling 2025-06-19 18:59:23 +01:00
Jan
ee027502ca
fix: Make LoadPtrArray reusable methods for x64 2025-06-19 18:59:23 +01:00
Jan
333cbed5f9
fix: fill structs in runtime block that are not matching structure 2025-06-19 18:59:22 +01:00
Jan
4ec5b52b0b
fix: filling x64 structs with dynamic array size 2025-06-19 18:59:22 +01:00
Jan
e035e5deb7
fix: try fixing alias resolving via redirection for x64 for real 2025-06-19 18:59:22 +01:00
Jan
e120d01697
fix: dynamic array reallocation for x64 2025-06-19 18:59:21 +01:00
Jan
967a378b4e
chore: temporarly adjust pointer insertion 2025-06-19 18:59:21 +01:00
Jan
f517130ef0
fix: not properly inserting pointer in x64 zone loading 2025-06-19 18:59:21 +01:00
Jan
6c8ec53821
fix: make x64 modified loading code compatible with x86 again 2025-06-19 18:59:20 +01:00
Jan
03ccede91c
refactor: implement base x64 fastfile loading for iw4 2025-06-19 18:59:20 +01:00
Jan
78d8fba6f8
refactor: make ZoneInputStream a reference in zone loading 2025-06-14 00:39:58 +01:00
Jan Laupetin
f6d7831e6e
chore: implement base skeleton for architecture independent zone loading 2025-06-14 00:39:55 +01:00
Jan Laupetin
49867a3474
fix: accidentally dumping iwi cubemaps as 2D 2025-05-30 19:41:25 +02:00
LJW-Dev
dc43671930 Changed structure of IWI header writing so 2D images are last. 2025-05-30 17:22:09 +08:00
Jan
2a4c0dcb43
fix: dumping xmodels with multiple surfaces and no bones 2025-05-11 20:55:52 +01:00
Jan Laupetin
35cb6636a1
fix: linux build 2025-05-02 23:26:12 +02:00
Jan
b92e85dc14
refactor: hide implementation of loading steps inside file 2025-05-02 22:08:08 +01:00
Jan
955df98279
refactor: hide implementation details of zone loading processors 2025-05-02 22:08:07 +01:00
Jan
eb16dfcd00
refactor: merge ZoneInputStream interface with only implementation 2025-05-02 22:08:07 +01:00
Jan
4ce82ad63c
refactor: update ZoneLoading classes codestyle 2025-05-02 22:08:07 +01:00
Jan Laupetin
446c38d8ee
refactor: reorder members of zcg generated classes 2025-05-02 22:08:06 +01:00
Jan
ed029bc24d
refactor: adjust template const modifiers 2025-05-02 22:08:06 +01:00
Jan
8b85cadb77
refactor: make memory from zone a reference instead of ptr 2025-05-02 22:08:06 +01:00
Jan
9e940a6f53
refactor: use zone reference in AssetLoader 2025-05-02 22:08:06 +01:00
Jan
50612d117e
refactor: update zcg generate file headers 2025-04-30 17:01:52 +01:00
Jan Laupetin
1b579b1bc3
refactor: remove usages of name sequence in game commands 2025-04-28 17:30:30 +02:00
Jan Laupetin
68ee502c72
refactor: remove name sequence from zcg commands 2025-04-28 17:23:39 +02:00
Jan Laupetin
0103e4631f
refactor: remove GetAssetName method from ZoneMark template 2025-04-28 17:18:09 +02:00
Jan Laupetin
7f59d35e87
refactor: replace GetAssetName method in ZoneLoad template 2025-04-28 17:09:40 +02:00
Jan
547da3fdf9
refactor: remove GetName method of ZoneWrite zcg template 2025-04-28 12:53:14 +01:00
Jan Laupetin
1fe1b30831
chore: use Asset definition instead of enum entry for zcg 2025-04-28 12:53:02 +01:00
Jan
3adbe5a275
refactor: fix additional zcg x64 warnings 2025-04-28 12:07:41 +01:00
Jan Laupetin
d938f91541
fix: crash on trying to generate for specific asset 2025-04-28 11:55:47 +01:00
Jan Laupetin
2eefad105e
chore: small code adjustments for generation code in zcg 2025-04-28 11:55:46 +01:00
Jan Laupetin
4ccd0a55cf
chore: adjust game structs to have custom alignment when they are
platform independent
2025-04-27 21:05:22 +02:00
Jan Laupetin
4e9599aabf
chore: detect structs that differ on different architectures
* and exclude them from assetstructtests
2025-04-27 21:04:41 +02:00
Jan
365b627523
refactor: fix remaining x64 compilation issues 2025-04-27 19:30:36 +02:00
Jan Laupetin
a6107e24a2
chore: disable type alignment on x64 for x86 games 2025-04-26 19:48:03 +02:00
Jan
3b00c1d45b
refactor: fix x64 compilation for ZoneLoading 2025-04-26 19:48:03 +02:00
Jan
de43e33dcd
refactor: fix x64 compilation for ObjWriting 2025-04-26 19:48:03 +02:00
Jan
5d0c94e430
refactor: fix x64 compilation for ObjLoading 2025-04-26 19:48:03 +02:00